-
DarkLight
Updating Your Matillion HA Cluster
-
DarkLight
Overview
This article describes the options available to you when it comes to keeping your Matillion ETL high availability (HA) cluster's software up-to-date on AWS.
There are two ways to update:
- Create a new cluster and migrate your work.
- In-place update.
The preferred, and safest, way to upgrade is to launch a new Matillion ETL cluster (running the latest version), and use the migration tool to copy your work from the old cluster to the new one. This option gives you a simple, low-risk back out plan.
When to update
We recommend you update Matillion ETL as soon as a new release is available, to take advantage of the latest features and performance enhancements.
A new version will become available roughly every eight weeks. As soon as this happens, you'll see a message in the Notices tab at the bottom right of the screen in the Matillion ETL user interface.
Create a new cluster and migrate your work
With this option, you launch a new HA cluster, using the same settings as your existing one.
We recommend that you create a set of re-runnable scripts that will enable you to automate the build of a new HA cluster. For example, using CloudFormation, based on the templates that Matillion ETL make available for download.
Once the new HA cluster has been created:
- In your network settings, allow the new load balancer to accept incoming connections on ports
80
and443
from the load balancer of the existing HA cluster. - Use the migration tool to copy your work.
- Verify that the new server is working correctly.
- Switch off all schedules on the old HA cluster, replacing them with schedules running on the new cluster.
- Turn off the nodes of the old cluster, keeping them for a defined period of time as a backup.
In-place update
Choose a time when schedules aren't due to run, and proceed as follows.
You may need to ensure that the following URLs are whitelisted first:
artifacts.matillion.com/rpm/matillion-metl/stable
artifacts.matillion.com/rpm/matillion-cdata/stable
Switch off Matillion ETL on all nodes
- SSH onto each node in turn and issue this command:
sudo service tomcat stop
- Confirm that Tomcat is actually stopped via the following command. It should return no active processes:
ps -ef | grep java
Take a backup of all nodes
We strongly recommend you complete this step, since this will give you a back out option if you decide to revert to the original configuration for any reason.
-
Document the current date and time (reference for Point in Time recovery of RDS Postgres instance, if required).
-
In the EC2 Management Console, locate the instance running Matillion ETL and select it.
-
Find Root devices and then select the EBS ID of the volume.
-
Right-click on the volume and select Create Snapshot.
-
Enter a Name and Description for your snapshot, including the name of the server.
-
Repeat for the other EC2 node.
-
In the EC2 dashboard click SNAPSHOTS, and wait for creation to complete on both instances.
Perform the updates
-
SSH to the first EC2 instance.
-
Install Matillion updates:
sudo yum update matillion-universal
- Install Linux security updates:
sudo yum update --security
- Repeat for the second EC2 instance.
Restart Matillion ETL
- SSH to the first EC2 instance and use this command:
sudo service tomcat start
- Repeat on the second EC2 instance.
Testing
Confirm that you can open all the following in a web browser, and that you can log on to Matillion ETL:
- Address of first server.
- Address of second server.
- Load balancer.
Back out of the update
If you decide to revert to the original version, the steps are:
- Recreate both EC2 instances from the snapshots.
- Revert the RDS database to the point-in-time when the backup was taken.
- Restart Matillion ETL on both nodes.
Cleanup
Set a calendar reminder to delete the backup snapshots.