Configuring HMS for high availability
To provide failover to a secondary Hive metastore if your primary instance goes down, you need to know how to add a Metastore role in Cloudera Manager and configure a property.
hive.metastore.urisproperty that lists the HMS instances for a replacement HMS. The second HMS is the designated replacement if
hive.metastore.uri.selectionis set to SEQUENTIAL (recommended and the default); otherwise, the replacement is selected randomly from the list if
hive.metastore.uri.selectionis set to RANDOM.
- In Cloudera Manager, click .
Take one of the following actions:
- If you have a cluster secured by Kerberos, search for Hive Delegation Token Store, which specifies storage for the Kerberos token as described below.
- If you have an unsecured cluster, skip the next step.
org.apache.hadoop.hive.thrift.DBTokenStore, and save the change.Storage for the Kerberos delegation token is defined by the
hive.cluster.delegation.token.store.classproperty. The available choices are Zookeeper, the Metastore, and memory. Cloudera recommends using the database by setting the org.apache.hadoop.hive.thrift.DBTokenStore property.
- In Assign Roles, in Metastore Server, click Select Hosts.
- In Hosts Selected, scroll and select the host that you want to serve as the backup Metastore, and click OK.
- Click Continue until you exit the wizard.
Start the Metastore role on the host from the Actions
hive.metastore.urisproperty is updated automatically. To verify, go to
/etc/hive/configdirectory in your cluster node and look for the updated property in the
To check or to change the
hive.metastore.uri.selectionproperty, go to in Cloudera Manager, and search for 'Hive Service Advanced Configuration Snippet (Safety Valve) for hive-site.xml'.
- Add the property and value (SEQUENTIAL or RANDOM).