Difference between revisions of "Astronaut OpenVistA on Ubuntu"

From VistApedia
Jump to: navigation, search
(Installation)
(Installation: Removed warning about dedicated server)
Line 38: Line 38:
 
  wget -O astronaut-ov-server-current.deb <nowiki>http://sourceforge.net/projects/astronaut/files/Astronaut%20OpenVistA%28tm%29%20Server/astronaut-ov-server-beta-0.9-3.deb/download</nowiki>
 
  wget -O astronaut-ov-server-current.deb <nowiki>http://sourceforge.net/projects/astronaut/files/Astronaut%20OpenVistA%28tm%29%20Server/astronaut-ov-server-beta-0.9-3.deb/download</nowiki>
 
  sudo dpkg -i astronaut-ov-server-current.deb
 
  sudo dpkg -i astronaut-ov-server-current.deb
 
+
<!--->
 
Note: It is recommended to install OpenVistA on a dedicated server. Apache and other server settings will be altered by the installation, which may alter your ability to run other servers on the same machine.
 
Note: It is recommended to install OpenVistA on a dedicated server. Apache and other server settings will be altered by the installation, which may alter your ability to run other servers on the same machine.
 
+
<--->
 
*Note: Astronaut routes all communications through an SSH tunnel (port 22) using PuTTY (on the client side) and OpenSSH (on the server side). If you will only connect using this SSH tunnel, you do not need port 9260 to be open on (or forwarded by) your router. Alternatively, if you connect between clients and the server directly (using port 9260), then you do not need port 22 to be open. Note that connecting directly through port 9260 directly is slightly less secure, so it is discouraged when connecting through the Internet.
 
*Note: Astronaut routes all communications through an SSH tunnel (port 22) using PuTTY (on the client side) and OpenSSH (on the server side). If you will only connect using this SSH tunnel, you do not need port 9260 to be open on (or forwarded by) your router. Alternatively, if you connect between clients and the server directly (using port 9260), then you do not need port 22 to be open. Note that connecting directly through port 9260 directly is slightly less secure, so it is discouraged when connecting through the Internet.
  

Revision as of 04:08, 26 February 2010

OpenVistA consists of two parts: a database server and a collection of client modules. The server runs in Linux. The CPRS clients are generally Windows-based (at this time), but the OpenVista-CIS client (a CPRS re-write by Medsphere) is available for both Windows and Linux (and perhaps Mac).

The first step is to install the OpenVistA server. It can be installed on the operating system of a stand-alone computer or on the guest operating system of a virtual machine (usually running on the same computer as the client modules).

When the VistA server is run within a virtual machine on the same computer as the client modules, a fully self-contained OpenVistA EHR is created on a single computer.

  • If you will run the OpenVistA server within a virtual machine, then install the Ubuntu Server edition (virtual machine minimal install) into a virtual machine first. See these instructions.

Then proceed in a similar fashion (in each type of operating system installation) for the subsequent installation of Astronaut VistA.

Preparing your server

  • The Astronaut installer uses an emerging standardized installation framework for VistA derivatives (WorldVistA and OpenVistA currently). These instruction reflect this framework, with modifications I have used in setting up my system on Ubuntu.
  • A secure SSH tunnel created between the Astronaut client(s) and the Astronaut VistA server using port 22. Information coming from a client's port 9260 is sent through this tunnel and received by the the VistA server's port 9260. (The network only sees traffic over port 22.) So that the network can always find the VistA server, it should have a static IP address on the LAN. Your LAN (router) should then forward port 22 (and perhaps port 9260 during testing) traffic to the VistA server's IP address on the LAN. Make sure any firewall running on the VistA server firewall allows port 22 (and, to be safe, port 9260) traffic through.

It is easiest to set this up before using the Astronaut installer, since the Astronaut server installer autodetects IP address settings.

Installation

Medsphere's OpenVistA uses one of the largest electronic health record platforms in the public domain. It is based on the US Veterans Administration health record system and is AGPL licensed. The database and server can be installed on a standalone server (which would then be accessed over a network by clients on other computers) or can be installed in a virtual machine on a computer which also contains the clients (creating a self-contained EHR on a single computer). There are several installation packages. The original OpenVistA site is here.

  • Apache2 is required. It can be installed individually (sudo apt-get install apache2) or as part of a LAMP (Linux, Apache2, MySQL5, PHP) installation:
sudo tasksel install lamp-server
sudo tasksel install openssh-server
  • If you are installing on a Server edition without a desktop, you will also need:
sudo apt-get install wget iptables nano
  • Install prerequisites:
sudo apt-get install xinetd update-inetd whois apache2-suexec
  • Astronaut VistA is made for a 32-bit operating system. If you are using a 64-bit Ubuntu operating system, then also install ia32-libs:
sudo apt-get ia32-libs
  • Obtain and install Astronaut OpenVistA:
wget -O astronaut-ov-server-current.deb http://sourceforge.net/projects/astronaut/files/Astronaut%20OpenVistA%28tm%29%20Server/astronaut-ov-server-beta-0.9-3.deb/download
sudo dpkg -i astronaut-ov-server-current.deb
  • Note: Astronaut routes all communications through an SSH tunnel (port 22) using PuTTY (on the client side) and OpenSSH (on the server side). If you will only connect using this SSH tunnel, you do not need port 9260 to be open on (or forwarded by) your router. Alternatively, if you connect between clients and the server directly (using port 9260), then you do not need port 22 to be open. Note that connecting directly through port 9260 directly is slightly less secure, so it is discouraged when connecting through the Internet.
  • Note: This installation installs the OpenVistA database and server in an Ubuntu Linux OS (that resides either on a standalone computer or in a virtual machine). The CPRS user client for VistA is written in Delphi for Windows (and works imperfectly in Wine). The CPRS client is therefore usually installed onto a Windows-based PCs (or onto USB flashdrives). These CPRS clients connect through the network to the OpenVistA server on a Ubuntu Linux-based server PC, or directly to the virtual machine.
  • Also see the YouTube video.

Installing on a Server edition

If you are installing on a Server edition without a desktop/package manager installed, you may need to install as root:

sudo -s
sudo dpkg -i astronaut-ov-server-current.deb
sudo apt-get -f install

Note: The command "apt-get -f install" finds and installs unmet dependencies. This is only needed for Server editions in which a package manager is not installed.

Installing OpenVistA Server in a Virtual Machine

  • Install the Ubuntu Server edition (virtual machine minimal install) into a virtual machine (like VirtualBox) and then install Astronaut OpenVistA on top of this. See these instructions.

Use a static IP address for the server

It will be difficult for the VistA clients to locate the OpenVistA server if the IP address of the server is always changing (i.e. repeatedly assigned a new dynamic IP address by the router/network DHCP server). It is best, therefore, to assign a static IP address to the server.

The network administrator must assign the static IP address on the LAN for use by the server (especially if a DNS nameserver is in use on the network). Let's say the LAN has a router/gateway address of 192.168.1.1, a static IP address range of 192.168.1.125 - 192.168.1.253, and the server is assigned an IP address of 192.168.1.135. Then the Ubuntu Server can be configured to use this static IP address.

  • When the Ubuntu Server OS is running, edit the /etc/network/interfaces configuration file:
sudo nano /etc/network/interfaces
  • Make sure the settings are similar to:
# The loopback network interface
auto lo
iface lo inet loopback
#
# The primary network interface
auto eth0
#iface eth0 inet dhcp
#
iface eth0 inet static
address 192.168.1.135
broadcast 192.168.1.255
netmask 255.255.255.0
gateway 192.168.1.1
  • Reboot the Ubuntu OS again so that the new IP address is used.
sudo reboot

Connect with a CPRS client

  • See the Astronaut CPRS client package installation and configuration instructions. This package uses the TMG-CPRS client as well as other standardized clients which can be used interchangeably with either WorldVistA or OpenVistA.
  • Also see the Medsphere OpenVista-CIS client package, which is a modification of CPRS with image viewing and other commercial ehancements. It can be used with the Astronaut OpenVistA server along with the Astronaut client package listed above.

Using the VistA Configuration Utility

Using the VistA Clinical Scheduling utility

The Clinical Scheduler from the Indian Health System's RPMS system has been imported as one of the modules included with an Astronaut VistA installation.

Configure access to the VistA server from the Internet through a virtual server

Other resources