Deploying Z Data Manipulation Service

Z Data Manipulation Service is an express server that acts as a middleman between TEPS and IBM Z® Resource Discovery Visualization Service.

Procedure

  1. Create secrets. You must create the following three secrets.
    OMG_USER
    Specifies the username that is used to connect to your OMEGAMON® data source.
    OMG_PASS
    Specifies the password that is used to connect to your OMEGAMON data source.
    ZRDDS_API_KEY
    Specifies the API key to get all the data from IBM Z Resource Discovery Data Service (ZRDDS). You can obtain the API key from the ZRDDS container and you can set up your own API key. For more information, see Authenticating.
    You can run the following Shell command to create secrets:
    echo "user_name" | docker secret create OMG_USER -
  2. Download the appropriate image depending on the system that hosts the container.
  3. Load the image by running the following Shell command:
    docker load --input ./zdms-amd-1.0.3.tar
    Note: The images are created by using Podman. Images that are created with Podman have a localhost/ prefix to the tag name of the image. To change the tag, run the following command:
    docker tag localhost/old tag new tag
  4. Run the image. To run the image, specify the URL of the OMEGAMON data in an environment variable OMG_URL after you run your container. The variable must contain the full URL including the protocol, domain and the port.
    podman run -dp desired port:4000 \
      --name=sepecify a container name \
      --secret OMG_USER \
      --secret OMG_PASS \
      --secret ZRDDS_API_KEY \
      -e OMG_URL=protocol+domain+port \
      image tag
    By default, Z Data Manipulation Service runs on port 4000. You can map it to any other port, and if you map it to another port, ensure that you use the same port in the IBM Z Resource Discovery Visualization Service container when you specify the OMEGAMON URL address.
    For example, if your OMG_URL is https://4.4.4.4:5555 and you want to run your application on port 7777, run the following command:
    podman run -dp 7777:4000 \
      --name zdms \
      --secret OMG_USER \
      --secret OMG_PASS \
      --secret ZRDDS_API_KEY \
      -e OMG_URL=https://4.4.4.4:5555 \
      zdms:1.0.3
    Then your application run on port 7777 in your machine. If your Virtual Machine has an address of 3.3.3.3, you can visit http:3.3.3.3:7777.
    Note: In some cases, --secret might result in an unknown flag error. The error is caused because it is not run in Swarm mode. To solve the issue, you must initiate a docker swarm by running the following command:
    docker swarm init
    If the Virtual Machine has multiple IP addresses on different interfaces, you will get a message that states how many interfaces and their related IP addresses. Choose an IP address that you want to initiate the docker swarm in and run the following command:
    docker swarm init --advertise-addr choose_an_ip_address
    Run the following command to run the image:
    docker service create \
      --name container name
      --secret source=OMG_USER,target=OMG_USER \
      --secret source=OMG_PASS,target=OMG_PASS \
      --secret source=ZRDDS_API_KEY,target=ZRDDS_API_KEY \
      -e OMG_URL=protocol+domain+port  \
      -p desired port:4000 \
      image tag
    If your OMG_URL is https://4.4.4.4:5555 and you want to run your application on port 7777, run the following command:
    docker service create \
      --name zdms
      --secret source=OMG_USER,target=OMG_USER \
      --secret source=OMG_PASS,target=OMG_PASS \
      --secret source=ZRDDS_API_KEY,target=ZRDDS_API_KEY \
      -e OMG_URL=https://4.4.4.4:5555 \
      -p 7777:4000 \
      zdms:1.0.3
    You do not need to specify the detached mode -d because docker service runs in detached mode by default.