Skip to content

Troubleshooting your CA Release Automation installation

devops-agile-transformation-devoteam

Sometimes when you perform a CA Release Automation installation you run into issues that result in a non functioning CA Release Automation installation. This can be on your local machine, but also at the customer’s site. In this blog I will help you with some basic tips to troubleshoot your installation and to quickly find out what your problem could be.

So, a basic CA Release Automation installation exists of at least 3 elements:

  • The Management Server;
  • the Execution Server;
  • and one or more Agents.

The following picture shows the different components of the tool. Communication between the components is different. Communication between NAC and NEC is done via ActiveMQ and communication between NEC and Agents is done via NiMi protocol.

To be sure each component started correct here some troubleshooting tips in case you have problems to get your CA Release Automation working correctly.

Troubleshoot NAC

Communication between NAC and NEC is done via ActiveMQ. So if your NAC won’t start, explore the following options:

  • Is the correct profile active (on both NAC and NES)?
    • The profiles can be found in the log of the NAC and the NEC (during the spring context definition). Just look for the words: “Active spring profiles”
  • Verify that the activeMQ server is up and running.
    • The server is exposed by JMX. Enter the JMX management page (http://hostname:20203)
    • Look at the dm logs – are there any “connection refused” exceptions?
    • check the firewall settings

Troubleshoot NEC

Communication between NEC and Agents uses NiMi, which is CA Technologies proprietary protocol. NiMi security configuration is defined in the configuration file nimi_config.xml, which can be found in the /conf subfolder of an Agent or an Execution Server.

When Troubleshooting issues with the Data Manager first check if the data manager has completed startup by searching for the string $$$$ in the log Nolio_dm_all.log. You need to see the text as below. If not, than your Data Manager is not yet started or there an error came up during the startup.

Mostly, when a Data Manager is not started correctly, a key configuration file which you can use to check if the link to the database is correct configured in the database configuration file. This file can be found at: <install_dir>webappsdatamanagementWEB-INFdistributed.properties. You can change these properties to make sure that the NEC is able to connect to your database. Without a correct connected database the NEC won’t start.

So there are a couple of different logfile locations that can be configured:

For the Data Manager Logfile properties file Location

  • <install_dir>webappsdatamanagementWEB-INFlog4j.properties

For the Execution Server Logfile properties file Location

  • <install_dir> webappsexecutionWEB-INFlog4j.properties

For the Agent Logfile properties file Location

  • <install_dir>conflog4j.properties

The get more debug info you can change the default backups and size of your logs.

  • log4j.appender.auditing.MaxFileSize=5000KB
  • log4j.appender.auditing.MaxBackupIndex=5

CA Release Automation produces a lot of log information. So when you (temporarily) want to collect some extra debug info, change these settings to collect more than 5 files (MaxBackupIndex) and make these files bigger (MaxFileSize). After you get enough information, change the setting back to default. A server restart is not needed to apply these new settings.

Firewall – Agents in a DMZ

It is possible to install an Agent in a DMZ environment. During the installation of the Agent you need to provide the URL where the Execution Server can be found. Default behaviour of the Agent is that the Agent will setup the communication channel between both components. But once installed in a DMZ you can imagine that IT security is not happy to open a port on the firewall for you to have the Agent communicating with the Execution Server. Therefore, you can install the Agent in such way that it will not setup the connection channel with the Execution Server, but lets the Execution Server setup the connection channel. To do so, you must install the Agent “head less”, without using the GUI installer. Otherwise this option is not available for you.

So, I hope you don’t have to use these tips. I have to say that during my first installation on my local laptop I already needed some of these tips to get my database connection working and it helped me to solve the issue.

 

Other relevant DevOps content