Update from 10.0.x to 10.0.3
This guide describes the steps to upgrade IA Cloud Enterprise from 10.0.x to 10.0.3.
To install SPA version 10.0.3, see the installation guide.
Before the update:
- Ensure that all business processes are completed and none are running.
- Ensure that all values that have been manually changed in Vault for appropriate services after installation, are also changed and up to date in the config.yml file, in particular, passwords for the MS SQL and Nexus users.
Prerequisites
WorkFusion SPA 10.0.x is installed.
The following steps must be run from <installation-user>. The root user is not required.
Available <server-role>:
- int - INT server
- bep-master - AutoML Master server
- bep-agent - AutoML Agent server
- app - APP server
- ocr - OCR server
- full - all servers
Prepare
Before updating the existing version of the product, make sure that in the PACKAGE_DIR directory, you have the installer, which you have used for installation.
To extract the installation packages:
Log in to the Integration server as a Linux installation user by using Linux Terminal, Windows PuTTY, or any other SSH client:
$ ssh -i <path-to-private-key.pem> <username>@<hostname.example.com>In the
PACKAGE_DIRdirectory, create the <patch_dir> directory for the patch package, for example, /opt/workfusion/wf_installer/patch_10.0.3. Grant the read access for this directory to all users:$ sudo mkdir -p /opt/workfusion/wf_installer/patch_10.0.3 $ sudo chmod 0755 /opt/workfusion/wf_installer/patch_10.0.3Make sure that the Linux installation user is an owner of the installation directory:
$ sudo chown -R <username>:<username> /opt/workfusion/wf_installer/patch_10.0.3Download the provided patch package with any file retrieving tool, for example, wget or curl:
$ curl 'https://link_to_patch_package' --output /opt/workfusion/wf_installer/sp-10.0.0-10.0.3.tar.gzIf the Internet access is not available on the Integration server, download the SPA installer and copy it as /opt/workfusion/sp-10.0.1-10.0.3.tar.gz to the Integration server.
Extract the downloaded package to the <patch-dir> directory:
$ tar -xzvf /opt/workfusion/wf_installer/sp-10.0.0-10.0.3.tar.gz --strip 2 -C /opt/workfusion/wf_installer/patch_10.0.3If you update from IA Cloud 10.0.0, add the following variables in the end of config.yml:
$ cd /opt/workfusion/wf_installer/ $ ./install.sh edit_config <server_role>To edit the file, use your
<ansible_vault_password>.mesos92_master_port: '5092' # Used only when SPA9.2 AutoML is installed for backward compatibility with SPA9.2 business-processes. Mesos master port for VDS. Listens on 0.0.0.0 (HTTPS). marathon92_port: '8092' # Used only when SPA9.2 AutoML is installed for backward compatibility with SPA9.2 business-processes. Marathon Port. Listens on 127.0.0.1 (HTTP). marathon92_proxy_port: '8492' # Used only when SPA9.2 AutoML is installed for backward compatibility with SPA9.2 business-processes. Nginx port. Listens on 0.0.0.0 (HTTPS) and proxies requests to 'marathon92_port'. marathon92_communication_port: '15092' # Used only when SPA9.2 AutoML is installed for backward compatibility with SPA9.2 business-processes. Used by Marathon for libprocess communication. Listens on 0.0.0.0 (HTTPS). mesos92_slave_port: '5051' # Used only when SPA9.2 AutoML is installed for backward compatibility with SPA9.2 business-processes. Mesos Agent port. Listens on 0.0.0.0 (HTTPS). mesos92_slave_port_range: '40000-44000' # Used only when SPA9.2 AutoML is installed for backward compatibility with SPA9.2 business-processes. Ports range on mesos Agent(s) used for communication with Mesos Master (ports from this range are opened randomly during tasks execution). wf_sso_saml_enabled: '{{ sso_saml_enabled }}' wf_sso_saml_sp_metadata: '{{ sso_saml_sp_metadata }}' wf_sso_saml_idp_metadata: '{{ sso_saml_idp_metadata }}' wf_sso_saml_idp_file_metadata: '{{ sso_saml_idp_file_metadata }}' wf_sso_saml_username_attribute: '{{ sso_saml_username_attribute }}' wf_sso_saml_metadata_admin_user: 'workfusion' wf_sso_saml_metadata_admin_pass: '********' wf_sso_saml_metadata_admin_authorities: ROLE_METADATA_ADMIN ws_sso_saml_enabled: '{{ sso_saml_enabled }}' ws_sso_saml_sp_metadata: '{{ sso_saml_sp_metadata }}' ws_sso_saml_idp_metadata: '{{ sso_saml_idp_metadata }}' ws_sso_saml_idp_file_metadata: '{{ sso_saml_idp_file_metadata }}' ws_sso_saml_username_attribute: 'mail'Refer to the config.yml options section for more details on each configuration option.
If you patch the system in the Legacy way, repeat these steps for all servers.
Update Linux components
Apply the patch, depending on your installation approach
Make sure that the following variables are exported, and then stop all services from the INT server:
$ cd PACKAGE_DIR
$ export ANSIBLE_PRIVATE_KEY_FILE="<path-to-private-linux-installation-key>"
$ export ANSIBLE_REMOTE_USER="<installation-user>"
$ export ANSIBLE_VAULT_PASS="<ansible_vault_password>" # otherwise password will be asked several times during the update of the components
$ ./install.sh stop_services fullOn the INT server, as wf-user, manually enable nginx, minio, and zookeeper:
$ wfmanager start nginx
$ wfmanager start minio
$ wfmanager start zookeeperOn the RPA server, stop all RPA services.
On the INT server, go to the <patch-dir> directory, and then run the script to update the certificates for all servers:
$ cd <patch-dir>
$ ./patch_10.0.3.sh apply fullIf you want to have more control over the installation of separate components, use the following command to update the certificates for a chosen server role.
$ ./patch_10.0.3.sh apply <server_role>On the INT server, start all services:
$ ./install.sh start_services fullOn the RPA server, start all RPA services.
On each Linux server, stop all services as wf-user:
$ wfmanager stop allOn the INT server, as wf-user, enable nginx, minio, and zookeeper:
$ wfmanager start nginx
$ wfmanager start minio
$ wfmanager start zookeeperOn the RPA server, stop all RPA services.
On each Linux server, run the following command with the specified server role to update certificates and distribute them among required services:
$ cd <patch-dir>
$ ./patch_10.0.3.sh apply <server-role>Replace <server_role> with the respective server role. See the supported values in Prerequisites.
For example:
<APP-server> ~installation-user$ ./patch_10.0.3.sh apply app
# or
<OCR-server> ~installation-user$ ./patch_10.0.3.sh apply ocrOn each Linux server, start all services as wf-user:
$ wfmanager start allOn the RPA server, start all RPA services.
note
Apply patch for all server roles in the following order: INT > AutoML Master > AutoML Agents > APP > OCR (Linux).
Update Windows components
To update the components on Windows servers:
On the RPA server, backup the C:/RPA/ directory for any emergency cases.
On the RPA server, uninstall RPA using the respective item in Control Panel > Programs and Features.
On the RPA server, manually delete the RPA directory, by default, C:/RPA.
Install new RPA, as described in Install RPA Windows Server.
Generate configuration files:
On the INT server, go to the
PACKAGE_DIR, and run the command to generate configs:$ cd /opt/workfusion/wf_installer $ ./install.sh generate_conf rpaCopy the content of the /opt/workfusion/distr/win_confs/rpa_configs/{your_rpa_dns_name} directory to C:\RPA\bak\ on the RPA server.
On the RPA server, replace directories C:/RPA/bot-agent/bin, and C:/RPA/bot-agent/conf from backups.
Check that the following block in bot-agent-master.yml, bot-agent-nordp.yml, and bot-agent-unit.yml:
- id: user-settings type: command expression: "regedit.exe /s user-settings.reg" directory: "../scripts/registry" startup: truelooks as follows:
- id: user-settings type: command expression: "regedit.exe /s user-settings.reg" directory: "../registry" startup: trueStart RPA server.
Remove the backup folder, if needed.
Rollback
Rollback is performed in the same manner as the update operation, but option rollback is used instead of apply.
$ cd <patch-dir>
$ ./patch_10.0.3.sh rollback <server-role>
or rollback on all servers:
$ cd <patch-dir>
$ ./patch_10.0.3.sh rollback full
Check the update
Once the update is completed, check WorkFusion Platform with Business Process (BP) and Manual Task. The OCR must be activated. For more information on the post-installation checks, see Installation.