Preparing for TrueSight Orchestration in containers installation

Installing in containers requires you to complete various preinstallation tasks. 

You can download the installation files from the BMC Electronic Product Distribution (EPD) site. 

Preparing to install Remedy Single Sign-On (external only)

If installing external Remedy SSO, complete pre-installation tasks. For instructions, see Preparing to install external Remedy SSO for containerized platform.

Preparing to install in containers

The following topics will help you prepare for installing in containers. 

a. Install Docker Enterprise Edition

Based on the operating system of the host, install Docker Enterprise Edition (EE). 

OSDocker EE documentation link
RHEL

Get Docker EE for Red Hat Enterprise Linux

CentOS

Get Docker EE for CentOS

b. Create a Docker Swarm

To install TrueSight Orchestration on Docker Containers in a cluster or a swarm mode, you first create a swarm cluster. 

A Docker Swarm mode enables you to install TSO components in a cluster of hosts, which communicate with each other. Docker Swarm consists of a manager or leader host and worker hosts, which perform failover and cluster management or load balancing features. In a swarm, each host is also known as a node.

You can choose to install all components on a single host or separate hosts. BMC recommends that you create a swarm with at least three hosts for installing the components separately. 

Before you begin

Ensure that the following prerequisite tasks are complete: 

  • Docker EE is installed on all the hosts that you want to add in the swarm.
  • Docker daemon service is running on each host.
  • Download the installation files on all the hosts.
  • Bind-utils rpm package is installed on the host where a manager node is to be created.

To create a Docker Swarm – Manager node

You first create a manager or a leader node for a host and join the additional hosts as worker nodes in the swarm. 

Note

If you choose to install all components on a single VM, you must only create a manager node. You are not required to join additional nodes in the swarm.

  1. Open a terminal and ssh into the machine where you want to create the manager node.

  2. Go to the location where you have downloaded the installation files and extract the files from the DOCKER_TSO_INSTALLER.tgz zip folder:

    # tar -xvf DOCKER_TSO_INSTALLER.tgz
  3. Go to the DOCKER_TSO_INSTALLER/files/swarm folder. The /swarm folder contains these scripts:

    • docker-swarm-init.sh: Creates a manager node

    • docker-swarm-join.sh: Joins the worker nodes in a cluster
  4. To assign the current host as the manager or leader node in a swarm cluster, run the docker-swarm-init.sh script. 

    # ./docker-swarm-init.sh

    The current node is assigned as a manager node. 

    This host is now a part of the swarm. 

    swarm.config file gets created in the files/swarm folder, which contains the token required to add the worker nodes in the swarm. If you want to join additional nodes to the swarm, continue with the next step – To add worker nodes to the swarm.

To add worker nodes to the swarm

Tip

Skip this step if you choose to install all components on a single node.

  1. Open a terminal and ssh into the second host and copy these scripts from the DOCKER_TSO_INSTALLER/files/swarm folder:

    • docker-swarm-join.sh

    • swarm.config
  2. In a new terminal, go to the host that you want to add to the swarm cluster as a worker node and run the docker-swarm-join.sh script. 

    # ./docker-swarm-join.sh

    The new node is added as a worker node in the swarm. 

  3. Repeat step 1 and 2 on the third host. 
    The new node is added as a worker node in the swarm.
  4. To view the list of nodes in the swarm, run the following command:

    # docker node ls

    The first host is shown as a Leader under the Manager Status field, and the second and third nodes appear with the status as Ready and availability as Active.

c. Set up a Docker Registry

Docker Registry is a repository that hosts TrueSight Orchestration component images. You can choose to host the Docker Registry in a swarm or use an existing registry. 

While installing TrueSight Orchestration components, the installation script requires the hostname of the registry where the images are pushed. 

To create a new Docker Registry

If you choose to use an existing registry, skip this step and go to To use an existing registry.

  1. Download and copy the installation files on the node where you want to create the Docker Registry.

  2. If using an insecure registry, you must create a daemon.json file, include the registry names in it, and copy the file to each host or node where you want to install the components:

     Click here to expand...
    1. Go to the /etc/docker/ and add a new daemon.json file.
    2. Add the registry name in the file using the following format:

      {
       "insecure-registries":
       [
       "registry_hostname:port"
       ]
      }

      If using multiple registries, specify a comma-separated list of registries as shown in the following format:

      { "insecure-registries":["registry_hostname:port","registry_hostname:port","registry_hostname:port"] } 
    3. Save changes to the file and restart Docker Service.

      # service docker restart

    Note

    The daemon.json file must be available on any host that is a part of the docker swarm (and will run any of the TSO components). The setup.sh script contacts the registry to pull the images. Without the insecure entry, the docker pull fails.

  3. On the host where you have downloaded the installation files, extract the files from the DOCKER_TSO_INSTALLER.tgz zip folder:

    # tar -xvf DOCKER_TSO_INSTALLER.tgz

    The tar file contains the following setup scripts:

    • docker_registry_setup.sh

    • setup.sh
  4. Run the docker_registry_setup.sh script. 

    # ./docker_registry_setup.sh

    The script verifies whether Docker Engine is installed on the host and the Docker daemon service is running. The following message is displayed:
    Setup a new registry? (y/n):

  5. Type y
    The script pushes the TrueSight Orchestration images to the registry. Docker Registry uses 5000 as a default port. After the setup is complete, the following message is displayed: 

    Docker registry setup completed.

  6. To verify whether the Docker Registry is successfully created and the images are copied to the registry, access the registry using the following URL format.

    Note

    Format: http:<hostname>:<port; default is 5000>/v2/_catalog
    Example: http://hostname.bmc.com:5000/v2/_catalog

    The images pushed into the registry are displayed: 
    {"repositories":["tso_cdp","tso_repository","tso_content_db"]}

    Note

    Here,

    tso_content_db: Name of the database image that includes content

    tso_repository: Name of the repository image

    tso_cdp: Name of the configuration distribution peer image

  7. You can now continue to install TrueSight Orchestration components on the host.

To use an existing registry

If you choose to use an existing registry, obtain the hostname and port of the host where the registry is available.

Before installing TrueSight Orchestration components, you must push the TSO images to your registry. 

  1. Open a terminal and go to the node where you want to install TrueSight Orchestration components. 

  2. (Optional) If using an insecure registry, you must create a daemon.json file, include the registry names in it, and copy the file to each host or node where you want to install the components:

     Click here to expand...
    1. Go to the /etc/docker/ and add a new daemon.json file.
    2. Add the registry name in the file using the following format:

      {
       "insecure-registries":
       [
       "registry_hostname:port",
       "registry_hostname:5000"
      ]
      }
    3. Save changes to the file and restart Docker Service.

      # service docker restart
  3. Extract the installation files from the DOCKER_TSO_INSTALLER.tgz zip folder:

    # tar -xvf DOCKER_TSO_INSTALLER.tgz

    The tar file contains the following setup scripts:

    • docker_registry_setup.sh

    • setup.sh
  4. Run the docker_registry_setup.sh script. 

    # ./docker_registry.setup.sh

    The script verifies whether Docker Engine is installed on the host and the Docker daemon service is running. The following message is displayed: 
    Setup a new registry? (y/n):

  5. Type N
    The following message is displayed: Please enter url of running Docker Registry(host:port).

  6. Type the hostname and port where your registry is available in the host:port format. 

    Images are pushed to the registry. You can now continue to install TrueSight Orchestration components on the host.

d.  (Optional) Specify ports in docker compose files

By default, TrueSight Orchestration components such as the repository, CDP, and the database (includes content) is installed using the default port numbers. To use ports that match your environment, you must update the port numbers in the Docker compose files. Compose file is a YAML file that defines the services, networks, and volumes for an application in containers. 

In addition, adapters require ports that you must specify in the compose files before installation. For more information, see Communication port requirements.

  1. On the host where you have downloaded the installation files, go to DOCKER_TSO_INSTALLER/files/service folder. 
    The service folder contains the following Docker compose files. 

     Click here to expand...
    • docker-compose.yml
    • docker-compose-repo.yml
    • docker-compose-cdp.yml
    • docker-compose-content.yml
    • docker-compose-registry.yml
  2. To update the port number for the TrueSight Orchestration component, edit the component compose file and specify the port number under the ports section.
    For example, if you want to change the port number for the repository, open the docker-compose-repo.yml file, locate the ports section and update the port number in the following format: "<port>:<port>"
    Example: "48080:48080" 
  3. To update the port number for adapters, open the docker-compose-cdp.yml file and in the ports section, specify the ports to be used by the adapters in your environment in the following format: "<port>:<port>"

    Note

    The format specified here is used for TCP ports. If using a UDP port, you must use the following format: "<port>:<port>/udp".

    For example, the SNMP monitor adapter uses a UDP port for receiving traps. If you are planning to use the SNMP adapter, specify the port number in the following sample format:

    "162:162/udp"


  4. Save changes. 

e.  (Optional) Implement self-signed certificates

If you chose to use self-signed certificates, you must generate and place the certificate files on a host in your environment and specify the locations in the TrueSight Orchestration installer scripts before beginning with the installation. For instructions, see Using self-signed certificates with platform in containers .

Troubleshooting pre-installation issues

If you face issues while performing the pre-installation tasks, see  Troubleshooting containers .

Where to go from here

Now that you have set up your installation environment, install TrueSight Orchestration. For instructions, see Installing – in containers.

Was this page helpful? Yes No Submitting... Thank you

Comments