How To
Summary
This documentation provides the necessary steps to migrate from a Single-Host to a Multi-Host installation.
Objective
Due to performance reasons, you might need to migrate your current single-host Instana backend to a multi-host installation in which the Clickhouse database is located in a dedicated server. This document covers only the Instana backend installed on Docker because the Kubernetes version is already scalable by definition.
Steps
Here are the steps that we took that allowed us to have a working multi-host environment starting from a single-host installation:
- Optional: Create a server on which you install Instana single-host OnPrem. Let's call it the main server. In a real scenario, this main server should exist.
- Create a server for our Clickhouse database.
- On this new server for Clickhouse, create the necessary directories for data, traces, and logs (exact name as in the main server) for Clickhouse and Zookeper databases.
- Now let's install Docker on the new Clickhouse server.
- Once Docker is installed, expose the Docker Daemon port by using these steps:
- Navigate to /lib/systemd/system in your terminal and open docker.service file: vi /lib/systemd/system/docker.service.
- Find the line, which starts with ExecStart and add -H=tcp://0.0.0.0:2376 to make it look like: ExecStart=/usr/bin/dockerd -H=fd:// -H=tcp://0.0.0.0:2376.
- Save the Modified File.
- Reload the docker daemon:
systemctl daemon-reload. - Restart the container:
sudo service docker restart. - Test if it is working by using this command:
curl http://localhost:2376/images/json, if everything is fine returns a JSON. - To test remotely, use the PC name or IP address of Docker Host.
- Run
instana initon the Clickhouse server by using type: dual instana-clickhouse. - Once is done, stop Instana on the Clickhouse server by using the command:
instana stop. - Also, stop Instana on the *main server*.
- Backup (create tar balls) traces (Clickhouse) and data (Zookeeper + /var/log/instana/) from the main server.
A tarball is a commonly used name to refer to an archive file in the tar (Tape Archive Format).
- Copy the tar files for Clickhouse and Zookeeper from the main server to the Clickhouse server.
- Extract the tar files on the same location as the original files and check that permissions and owners are the same as the original files.
- The settings.hcl file in Clickhouse is already updated because
instana initwas run in step 6. - Now we need to edit the settings.hcl file on the main server like this:
- Type = "dual-instana".
- Clickhouse_bind_address = "IP of ClickHouse Box".
- Start Clickhouse on the Clickhouse server:
systemctl start docker(if it was stopped).- Run
docker psto confirm that Zookeper and Clickhouse containers come up healthy.
- Start Instana on the main server:
systemctl start docker(if it was stopped).- Or run
instana startand start all Instana containers with the OLD settings.hcl.
- Run
instana updateon the main server:- Zookeeper container started.
- Clickhouse container is not start as expected because the one on the dedicated server is used.
- Finally, access the UI and confirm you have both data from before the migration and current.
Related Information
Document Location
Worldwide
[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SSE1JP5","label":"IBM Instana Observability"},"ARM Category":[{"code":"a8m3p000000hBgWAAU","label":"OnPrem"}],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions","Type":"MASTER"}]
Was this topic helpful?
Document Information
Modified date:
14 June 2023
UID
ibm17003571