Cognos Analytics

 View Only

Build and run the Cognos Analytics Dispatcher as a Docker Container in an on-prem environment

By ANTONIO MARZIANO posted Tue July 28, 2020 03:08 AM

  
Introduction:
As in my previous blog article  Build and run the Cognos Analytics Gateway as a Docker Container in an on-prem environment,  this one is an extension to containerize the Dispatcher component in an on-premises environment. So the purpose of this blog article is to provide a step-by-step guide on building a docker image and container using an on-prem installation environment. The benefits will include the high availability when a dispatcher becomes unresponsive or corrupt, there is no need to re-install but simply delete the container and re-create a new container within seconds. Try it in a lab environment and test it yourselves!

Architecture:
2020-07-27_18-14-01.jpg
Environment:

CAOIDC1.fyre.ibm.com - Dispatcher/CM (Windows 2016)
ProxyServer1.fyre.ibm.com - Docker Host (CentOS 7) running the Dispatcher(Application Tier) container.

Prerequisite:
Some prep work will be required and that is to do an Application Tier Only installation in a test server and grab the /configuration/cogstartup.xml file.

Steps are as follows:

1. Copy the installation files, jdbc driver and cogstartup.xml file to the /tmp directory from the CentOS Docker Host

2020-07-27_10-49-02.jpg
NB: The mssql-jdbc-8.2.2.jre8.jar is the jdbc driver used to connect to the CM(Content Manager) component from CAOIDC1 that connects to the ContentStore Database on MSSQL Server 2016.

2. Create a properties file to set the unattended installation flags for the Dispatcher(Application Tier) called rs.properties and add the following lines:

2020-07-23_10-08-07.jpg

3. Save the file in the current directory /tmp so the list of files are as follows:

2020-07-27_10-49-02.jpg

NB: With the jdbc driver mssql-jdbc-8.2.2.jre8.jar adjust the file permissions using the command line:

chmod 777 mssql-jdbc-8.2.2.jre8.jar

4. Now, build the docker image by creating the file Dockerfile and adding the following instructions:

2020-07-23_10-27-05.jpg
5. Edit the /tmp/cogstartup.xml and change the URI's to the local Docker Host server external ip address except the CM URI which needs to be set to the CAOIDC1 server running the CA 11.1.5 installation.

NB: I used ip address in this lab

2020-07-27_10-49-03.jpg

6. Now, run the following command to build the docker image:

docker image build -t careportserver11.1.5 .

2020-07-24_09-43-53.jpg
7. Once finished check the image is listed by executing the docker command:

docker images

2020-07-24_10-07-51.jpg
8. Now, build the docker container by executing the following docker command:

docker container run -d --name=careportserver11.1.5 -p 80:80 -p 9300:9300 -p 1433:1433 -p 9301:9301 -p 5701:5701 -p 4300:4300 -t careportserver11.1.5

2020-07-24_10-23-42.jpg
9. List the containers by executing the following docker command:

docker container ps

2020-07-24_11-08-18.jpg
10. Now, connect to the containers shell and update the host file to include the public ip address of the docker host server (CentOS) by executing the following docker command:

docker container exec -it <containerID> /bin/bash


2020-07-24_11-11-43.jpg

11. Then run the command line to edit the hosts file and add the ip address and host name (DNS) and save it:

vim /etc/hosts

2020-07-24_11-17-38.jpg

Now the next stage is to save the configuration and start the service.

11. Exit from the container by typing 'exit' and then run the following docker command:

docker container exec -it <containerID> cogconfig.sh -config

Then,

docker container exec -it <containerID> cogconfig.sh -s

12. Once finished check the processes have started by running the following docker commands:


docker container exec -it <containerID> ps -ef | grep cognos

Note the processes have all started

2020-07-24_13-30-04.jpg
Now go to the CAOIDC1 server and log in and check the list of dispatchers and then test the dispatcher connection:


2020-07-24_14-09-31.jpg

13. Now create a Dynamic (JDBC)  Connection to a MSSQL Server Database and test the connection:

2020-07-24_14-19-54.jpg

Additional Information:

Docker
https://www.docker.com/

Additional Blogs:
https://community.ibm.com/community/user/businessanalytics/communities/community-home/recent-community-blogs?communitykey=6b10df83-0b3c-4f92-8b1f-1fd80d0e7e58&tab=recentcommunityblogsdashboard

Cognos Analytics
https://www.ibm.com/support/knowledgecenter/SSEP7J_11.1.0/com.ibm.swg.ba.cognos.cbi.doc/welcome.html


#Administration
#CognosAnalyticswithWatson
#LearnCognosAnalytics
2 comments
56 views

Permalink

Comments

Wed December 08, 2021 07:42 AM

I've not had this issue, but you'll need to check within the dispatcher container that you can see running BIBUSTKServerMain processes. Also, check the cogserver.log file for any errors.

Tue December 07, 2021 02:18 PM

Antonio, I've managed to create a running CA 11.2.1 environment, but only Dashboards are operational. Any time I try to run a report, I get an error message that BIBusTkSrvMain is not a valid application. Have you seen anything similar?