HAMI
Oracle Highly Available Metadata Infrastructure (or HAMI) is a compiled, high-performance, shared-nothing, versioned key-value store. It is based on the well-known RAFT distributed state machine. HAMI maintains a full copy of the object store in its DRAM memory when it is running. Updates to the object store create a log of the changes. At regular intervals, a consistent snapshot of the entire object store is serialized to persistent storage. At restart, HAMI rebuilds the object store in memory from the most recent snapshot. Log records generated since the snapshot are then applied to make the in-memory object store current.
A HAMI ensemble is a set of multi-threaded processes each running on a different server. All ensemble members maintain a private, shared-nothing copy of the same object store through a consensus protocol. At any given time, one voting member is the leader and generates a log describing the changes to the object store. All members apply the same log records to their copy of the object store to ensure they all contain the same data. A change is not committed until a quorum of the members have received and persisted the log record for the change. Only committed changes are visible to the clients of the HAMI service.
Requirements and Guidelines for HAMI Installation
Review these requirements and guidelines before you proceed with installing and configuring Highly Available Metadata Infrastructure (HAMI).
SSH User Equivalence between the machines must be configured.
python3 (with minor version 6 or higher) must be available on the machines.
To use the autorun functionality through the systemd service, the user performing the installation must have the privilege to perform operations as root using sudo.
openssl must be available on the machines.
Install Highly Available Metadata Infrastructure
The complete bundle of HAMI software is available as a zip file, called hamipack-<release>.zip. It is in the $NMS_BASE/dist/hami/ directory of the NMS installation.
1. Copy the HAMI software bundle, hamipack-<release>.zip, in a directory of your choice on a host where HAMI will run.
2. Unzip the hamipack-<release>.zip file. The unzipped location can be deleted once the installation steps are completed.
3. Follow the instructions from Installation section of the SETUP_MANAGEMENT.txt file from the zip file for installing the HAMI software, generating wallets and certificate/key pairs, installing/configuring the ensemble, and starting the ensemble on each host.
4. From the HAMI wallet directory, locate cwallet.sso in the client subdirectory. This file will need to be copied for NMS Monitor configuration.