Compose file and installation script to deploy containerized InfiniMetrics in a self-managed environment
Name | Minimal requirement |
---|---|
Docker | 20.10.18 |
Docker Compose | 2.17.0 |
Bash | |
Container architecture | linux/x86_64 |
Clone the InfiniMetrics container repository from GitHub:
git clone https://github.com/Infinidat/infinimetrics-container.git
List the versions available:
git tag
Choose the version to install:
git checkout <version, e.g. 7.0.0>
Install InfiniMetrics and start the containers:
./install.sh --start-containers
You are prompted to change the default installation parameters. Unless you are familiar with these parameters, use the recommended values.
InfiniMetrics is set to start automatically with the Docker engine.
You can install InfiniMetrics and not have it start automatically:
./install.sh
Following a successful installation, a command to start the InfiniMetrics compose app is printed.
Copy the command, and run it manually.
Start InfiniMetrics manually:
docker compose --env-file .env --env-file .env.user up -d
InfiniMetrics will restart automatically whenever the Docker engine restarts.
Fetch the changes from the repository:
git fetch --tags
List the versions available:
git tag
Check out the version you want to upgrade to:
git checkout <version, e.g. 7.0.0>
Stop the current containers, upgrade InfiniMetrics, and start the upgraded containers:
./install.sh --start-containers
You can upgrade InfiniMetrics and not have it start automatically after the upgrade:
./install.sh
Following a successful upgrade, a command to start the InfiniMetrics compose app is printed.
Copy the command, and run it manually.
Start InfiniMetrics manually after the upgrade:
docker compose --env-file .env --env-file .env.user up -d
InfiniMetrics will restart automatically whenever the Docker engine restarts.
Usage: ./install.sh [options]
Install containerized InfiniMetrics in a self-managed environment.
Options:
-h, --help Show this message
--noninteractive Skip the interactive initialization prompt
--start-containers Start the containers automatically following install
--skip-init Skip database initialization/migration (not recommended)
The .env.user file is automatically created during the installation. You can change and customize it. It will not be overwritten during installations/upgrades.
Attention: Only the .env.user
file is preserved during upgrades. The .env
file is always overwritten.
To run InfiniMetrics commands from containers:
./infinimetrics.sh [command]
You can back up and restore the data collected by InfiniMetrics in order to move them between deployments, or to perform backup for the data collected by InfiniMetrics.
Backup
./infinimetrics.sh backup [<serial>...] [--from=FROM] > backup.tar.gz
Restore
Normally, the backup tar.gz file is written to the data/tmp directory. If the default data directory is different, refer to the DATA_DIR variable inside .env.user. The following command will restore the file into InfiniMetrics.
Example: (assuming that the name of the backup file is <backup.tar.gz>)
./infinimetrics.sh restore /tmp/infinimetrics/<backup.tar.gz>
Note: The path to the restore file must start with /tmp/infinimetrics
so that it can be found inside the container.
Following installation, you can upload a custom SSL certificate.
- Upload the certificate pem file from the InfiniMetrics UI.
- Restart the nginx container:
docker compose restart nginx
Log collection is available from both the UI and the CLI.
If you are downloading from the UI, the compressed log file will be downloaded from the browser.
If you are collecting logs from the CLI, the resulting file will be stored as compressed tar in the data/tmp directory.
./infinimetrics.sh collect-logs --since <date>
In addition to the log tar file, also provide the output of docker_logs.sh scripts:
./docker_logs.sh --since <date>
Where <date>
is in YYYY-MM-DD format.
You can deploy this compose suite in an environment without Internet access to the public DockerHub.
-
Using a machine that has internet access, download the relevant tarball file, infinimetrics_offline.tar.gz, on the GitHub Assets page at: https://github.com/Infinidat/infinimetrics-container/releases/
-
Copy the package to the machine that will run InfiniMetrics.
-
Extract the package on the local filesystem. Record the location (for example: /opt/infinimetrics). Future upgrades must be to the same location.
-
Change the working directory to the location where the package was extracted.
-
Load the images to the Docker Engine using the provided image_load.sh script:
./image_load.sh
Continue with the install.sh instructions above.