Validation
Use validation healthcheck scripts in the Tamr administrative utility to run validation checks on demand. These checks also run automatically before you upgrade Tamr to a newer version.
Validation Command Flags
Use <tamr-home-directory>/tamr/utils/unify-admin.sh validate
to check the current state of the Tamr software and configuration, and diagnose possible problems. The validate
option has the following flags.
validate [-f <file>] [-h] [-l] [-v]
-f,--file <file>
The file to which you would like to write validation results.-h,--help
Provides help for this command (this information).-l,--list
Lists the validation groups, such aspre-dependency
, orpre-start
, and the validation checks that run in those groups.-v,--verbose
Enables verbose logging to the console.
List of Validation Checks
Tamr validation scripts include, but are not limited to, the following checks:
- Tamr license. Verifies the Tamr license validity and fails if the provided license is expired. The script returns the license information, such as the license key and type (evaluation or not), creation and expiration dates, customer name, and description.
- Operating System. Verifies that the user is not the root user and prints diagnostic information about the operating system running Tamr.
- Memory usage. Verifies that the memory settings Tamr requires are sufficient based on the operating system it is running on.
- HBase external dependency. Verifies that HBase servers are running on expected ports, the Zookeeper cluster required by HBase is running as expected, and that Tamr can establish a connection to this cluster and retrieve its status. The script logs diagnostic information that HBase provides.
- PostgreSQL external dependency. Verifies that Tamr can connect to the PostgreSQL database, ensures that its version is compatible, and runs simple queries. The script also logs diagnostic information about the presence of
persistence
anddataset
schemas required by Tamr, such as their Postgres-specific migration status. - Elasticsearch external dependency. Verifies the connectivity to the Elasticsearch cluster used to power the user interface in Tamr, and ensures that this cluster is running. The script also verifies version compatability; and that the Elasticsearch data directory exists, has sufficient free space, and is readable and writeable.
- Skip Environment Validation. If set to
true
, the--skipEnvironmentValidation
flag allows the upgrade process to skip system validation checks at the start of the upgrade command. Use this flag with caution as it allows the upgrade process to proceed with a potentially invalid configuration which could cause it to fail. For more information, see Upgrading Tamr.
The following example lists validation groups and the checks that run in those groups:
~/tamr/utils$ ./unify-admin.sh validate -l
/home/ubuntu/tamr/utils
Validation group: pre-dependency
OsEnvironment: Checks the basic OS properties
UserIsNotRoot: Checks that the current user is not root. Starting Tamr or dependencies as root can cause serious issues, including system failure.
ConfiguredDirectoriesValidator: Checks all the configured directories for permissions and storage
UlimitValidator: Checks the system's ulimit settings to ensure they are at required minimums
Validation group: pre-start
ZkServersAreHealthy: Performs a basic health check for configured ZooKeeper servers
MemoryValidator: Checks the memory settings for Tamr and its dependencies
HBaseClusterIsHealthy: Validates that the configured HBase cluster can be connected to and that the cluster state is valid
PGValidator: Checks connectivity to the Postgres database used to power Tamr
AuthSchemaValidator: Checks invariants in the auth service database schema
PersistenceProblemsValidator: Checks for issues in persistence that might cause upgrade problems.
ElasticsearchValidator: Checks connectivity to the Elasticsearch cluster used to power the Tamr UI
LicenseValidator: Checks the license key for the Tamr instance
SparkJobSubmissionValidator: Validates if spark jobs can be submitted and run successfully
Validation group: post-start
HealthChecksValidator: Runs the healthchecks for each of Tamr's microservices
Running Validation Checks
Validation checks run by default before an upgrade, but you can also run them at any time.
To run healthcheck validation scripts:
- Run the administrative utility with the new
validate
option, such as:
<tamr-home-directory>/tamr/utils/unify-admin.sh validate
- To obtain detailed output, run
<tamr-home-directory>/tamr/utils/unify-admin.sh validate -v
. - To create a report of validation checks and send it to a specific location, run
<tamr-home-directory>/tamr/utils/unify-admin.sh validate -f [filename]
, where[filename]
is the path to the output file.
Updated over 4 years ago
What’s Next