This guide steps through the requirements and process for upgrading through the AWS Marketplace.
Upgrading to the latest version of Trifacta via the AWS Marketplace will terminate your existing instance and bring up a new instance with the latest software in its place - for this reason it's critical to follow the instructions here carefully.
Your Trifacta instance is deployed as part of a Cloudformation Stack, when you upgrade this Stack, Cloudformation will tell you what resources it plans on modifying and then manage the modifications. If there is any problem doing these modifications it will roll back it's changes, your existing instance will not be deleted until the new one has been brought up successfully.
Here's what we'll be doing:
This upgrade process supports upgrade for the following versions:
|Source Version||Target Upgrade Version|
If you are upgrading from a version that is earlier than the supported Source Version listed above for this upgrade process, please use the links below to acquire the AMI(s) and documentation to upgrade to the earliest supported Source Version. Then, return to these instructions to complete the process.
|Your Version||Target Version||AMI||Documentation|
|Please see the AWS Marketplace listing for the product. The AMI is accessible from there.||Trifacta Install Guide for AWS Marketplace v5.0|
We'll make two backups: one of the Trifacta software and one of the entire EC2 Instance.
SSH to your current Marketplace instance. Example: ssh -i MyKey.pem centos@TrifactaServer.MyCompany.net
Become Root on the server
Stop the on your current Marketplace instance:
service trifacta stop
Run the Trifacta backup script:
When the script is complete, the output identifies the location of the backup. Example:
Store the backup in a safe location. We recommend either S3 or copying it to your local computer via SCP.
To copy the backup to the S3 bucket used by your installation you can use this example:
aws s3 cp /opt/trifacta-backups/trifacta-backup-5.0+126.20171217124021.a8ed455-20180514213601.tgz s3://<my-trifacta-s3-bucket>/trifacta-backups/
If you choose to use SCP note that the AMI does not allow root login, you must copy files you want to the Centos user's home directory and make any permissions changes necessary to allow the Centos user to read them. Once you've done that you can use SCP to copy the files, for example:
scp -i <my-key.pem> centos@<my-server-ip>:./example-file.txt ./
In this section, you will upgrade the Cloudformation Stack which will bring up the latest copy of Trifacta as well as perform any necessary adjustments to your existing resources.
Upgrade the Cloudformation Stack
Visit the Trifacta Marketplace listing page for your product
Select "Amazon S3 URL" and paste the link to the template in the text box.
Click next and review the parameters, they should be inherited from your existing Stack.
Connect to your new Trifacta instance via SSH.
Note that the IP address has changed.
Become Root on the Trifacta instance
sudo su cd
The Trifacta software will start automatically on boot. Stop it before continuing:
service trifacta stop
Download the latest copy of the restore script to pick up additional fixes that have been made. note: this step is required
curl --output trifacta-restore-from-backup.sh https://raw.githubusercontent.com/trifacta/trifacta-utils/release/6.0/trifacta-restore-from-backup.sh mv trifacta-restore-from-backup.sh /opt/trifacta/bin/setup-utils/trifacta-restore-from-backup.sh chown trifacta:trifacta /opt/trifacta/bin/setup-utils/trifacta-restore-from-backup.sh chmod 775 /opt/trifacta/bin/setup-utils/trifacta-restore-from-backup.sh
Download the backup from your storage location and extract its contents. Example:
mkdir -p /root/trifacta-restore-files cd /root/trifacta-restore-files aws s3 cp s3://<my-trifacta-s3-bucket>/trifacta-backups/<my-backup-file.tgz> . tar xzf <my-backup-file.tgz>
Execute the restore script. Pass in the path to your unzipped backup as a parameter. Example:
/opt/trifacta/bin/setup-utils/trifacta-restore-from-backup.sh -r /root/trifacta-restore-files/trifacta-backup-5.1+126.20171217124021.a8ed455-20180514213601
Start up the product
service trifacta start
Verify that the product is working as expected by running jobs.
Applies if: You modified the Photon scaling properties in your pre-upgrade environment.
In Release 6.0, the Photon scaling factor parameter (
photon.loadScalingFactor) has been removed. As part of this change, the following parameters are automatically set to new values as part of the upgrade. The new values are listed below:
"webapp.client.loadLimit": 10485760, "webapp.client.maxResultsBytes": 41943040,
NOTE: If you had not modified either of the above values previously, then no action is required. If you had changed these values before upgrading, the settings are set to the new default values above.
Applies if: You modified the Data Service classpath in your pre-upgrade environment.
After you have upgraded, the Data Service fails to start.
In Release 6.0.0, some configuration files related to the Data Service were relocated, so the classpath values pointing to these files need to be updated.
data-service.classpath setting. Change the class path value to point to the correct directory:
webapp.connectivity.kerberosDelegateConfigPath setting. If you are enabling Kerberos-based SSO for relational connections, please add the following value to the path:
For more information, see Enable SSO for Relational Connections.
Applies if: You have enabled SSO for AD/LDAP and have noticed that logout is not working.
After upgrading to this release, signing out of the may not work when SSO is enabled. This issue applies to the reverse proxy method of SSO for AD/LDAP.
NOTE: Beginning in Release 6.0, a platform-native method of SSO is available. This new method is recommended.
Some properties related to the reverse proxy must be updated. Please complete the following:
Edit the following file:
Add the following rule for the
/unauthorized. Remove the rewrite rule:
Applies if: Applies to all upgrades to Release 6.0.1 and later.
In Release 6.0.1, the permitted case-sensitive email addresses. So for purposes of creating user accounts, the following could be different userIds in the platform. Pre-upgrade, the People table might look like the following:
| <Id> | <Email> | other columns | | 1 | email@example.com | * | | 2 | FOOBAR@trifacta.com | * | | 3 | FooBar@trifacta.com | * |
Beginning in Release 6.0.2, all email addresses (userIds) are case-insensitive, so the above distinctions are no longer permitted in the platform.
As of Release 6.0.2, all email addresses are converted to lower-case. As part of the upgrade to Release 6.0.2, any email addresses that are case-insensitive matches (
FOOBAR) are disambiguated. After upgrade the People table might look like the following:
| <Id> | <Email> | other columns | | 1 | firstname.lastname@example.org_duplicate_1 | * | | 2 | email@example.com_duplicate_2 | * | | 3 | firstname.lastname@example.org | * |
The format for email addresses is:
<row_id> is the row in the table where the duplicate was detected.
After all migrations have completed, you should review the migration logs. Search the logs for the following:
A set of users without duplicates has the following entry:
== 20181107131647-all-emails-for-people-to-lower-case: migrating ======= == 20181107131647-all-emails-for-people-to-lower-case: migrated (0.201s)
Entries like the following indicate that duplicate addresses were found for separate accounts. The new
duplicate Ids are listed as part of the message:
== 20181107131647-all-emails-for-people-to-lower-case: migrating ======= warn: List of duplicated emails: email@example.com_duplicate_1, firstname.lastname@example.org_duplicate_2 == 20181107131647-all-emails-for-people-to-lower-case: migrated (0.201s)
NOTE: The above log entry indicates that there are duplicated user accounts.
Change ownership on all flows in secondary accounts to the primary account.
Delete secondary accounts.
You can access complete product documentation online and in PDF format. From within the product, select Help menu > Product Docs.