Opereto provides two mechanisms for upgrade: software updates and box migration. A software update is a new version of the opereto server software running on a given server. The upgrade replaces the old software version with a new one but makes no changes in the server (virtual appliance) configuration or operating system configuration and libraries. Box migration is a replacement of the old virtual appliance with a new one. In box migration, we export the old configuration and metadata from the old virtual appliance to an external storage (AWS S3) and after starting the new virtual appliance, we import the data from the external storage. 


Opereto version string is based on 4 digits, for instance, 1.4.1.103. The first two digits identify the server configuration (operating system, libraries, database structure etc.) whereas the last two digits identify the software.

Box Major Release
Box Minor Release
Software Release
Software Build
1
4
1
103

 

Software upgrades always refer to the same box, so in software upgrades, the first two digits of the old version upgrading from and the new version are the same. For instance, upgrade from 1.4.1.102 to 1.4.1.103 or from 1.4.1.103 to 1.4.2.100. In box migration, at least one of the first two digits of the old and new versions is different. For instance, migrating from 1.4.1.103 to 1.5.2.101.


You can learn about newer software of box versions available by clicking on the user icon on the top-right corner of the user interface and then Administration-->Check Updates (must be an admin for that). In addition, when software new versions are available, the following icon will be presented in the user interface (again, visible to admins only): Clicking on the icon pops up the upgrade information.


Software updates

Updating the software is fairly simple. To update to the latest version, connect to your server via ssh (login with user opereto and your private ssh key) and from the home directory run:

python install_opereto.py


Please note that the upgrade process may take a few minutes and during that time the server will be down. You can revert to your old version or change to any other version by specifying the version string as follows:

python install_opereto.py -v 1.4.1.101

Server Migration


Prerequisites:

For server migration, you must have a shared storage for micro services and export/import data. If you did not configure your current server to work with remote storage, you may learn how to do it in the following article: Customizing your opereto server 


Step 1: Launch a new server instance


Step 2: Configure the new server to work with the shared storage as the old server does (basically, follow the steps of the customization article mentioned above).


Step 3: Export the data from the old server and import to the new one


curl -k -u user:pass -X POST -H "Content-Type: application/json" https://OLD_SERVER/export

curl -k -u user:pass -X POST -H "Content-Type: application/json" https://NEW_SERVER/import


Important Notes: 

  1. opereto does not export/import processes data. If you need an access to your old processes and logs, you may keep your old server running
  2. export operation requires admin privileges
  3. import operation requires both admin privileges but also must be done by user admin only



Step 4: Shut down your old server (we do not recommend to terminate it, keep it for a while for rollback if needed or to keep/access old processes and logs).