Lessons Learned
Troubleshooting
Configuration Service in “Stopping”
Symptom: ADDI Configuration service stuck in “Stopping” state.
Resolution:
Use the Task Manager to kill the Java process that has the Command line “java -Xmx512M -Djava.library.path=lib/win -cp jar\server-3.1.1.jar;jar\com-ez.ssdp-2.0.0.jar;jar\snappy-java-1.1.8.2.jar;…”
After that you can refresh the state of the Configuration service in the ADDI dashboard and restart it.
Refactoring Assistant can’t load artifacts because connection to SQL Server fails
Symptom: Artifacts in RA fail to load and Test connection fails for the SQL Server when entering the 9.x.x.x IP address in IBM Application Discovery -> Configure -> servers and security -> Relational database server
Resolution: The problem is that the server was only bound to the 127.0.0.1 address. To change that,
- From the Start menu, search for
Configuration Manager
and open the SQL Server Configuration Manager - In the left sidebar, select
SQL Server Network Configuration
->Protocols for MSSQLSERVER
, then double click onTCP/IP
- In the dialog that opened, go to the IP Addresses tab
- Find the section that has the 9.x.x.x IP address of your Windows VM and set
Enabled
toyes
. - Click
Ok
to save the changes and also clickOk
on the dialog that warns you that a restart is necessary. - To perform the restart,
- in the left sidebar of the
SQL Server Configuration Manager
, selectSQL Server Services
- Right click on
SQL Server (MSSQLSERVER)
and selectRestart
- in the left sidebar of the
If you are still getting errors create an inbound rule for your SQL server port (default 1433) in “Windows Defender Firewall with Advanced Security”
Failing to initialize the orient DB container
Symptom: OrientDB error statements appear during RA start up
Loaded messages from i18n/en.properties
Generating certificate signing request
Generating a RSA private key
..............................+++++
..................+++++
writing new private key to 'orientdb.key'
-----
Generating signed certificate
Signature ok
subject=CN = orientdb, O = IBM
Getting CA Private Key
=======================================================================================================================
What is the OrientDB password? This password will be required every time Refactoring Assistant for IBM z/OS is started.
=======================================================================================================================
Password:
Starting OrientDB...
✔ docker.io/library/orientdb:3.2.18
Trying to pull docker.io/library/orientdb:3.2.18...
WARN[0032] Failed, retrying in 1s ... (1/3). Error: initializing source docker://orientdb:3.2.18: reading manifest 3.2.18 in docker.io/library/orientdb: toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit
WARN[0064] Failed, retrying in 1s ... (2/3). Error: initializing source docker://orientdb:3.2.18: reading manifest 3.2.18 in docker.io/library/orientdb: toomanyrequests: You have reached your pull rate limit. You may increase the limit by authenticating and upgrading: https://www.docker.com/increase-rate-limit
Try using the following commands in your Linux env:
podman login docker-eu.artifactory.swg-devops.com
podman pull docker-eu.artifactory.swg-devops.com/sys-nazare-cicd-team-wca4z-private-docker-local/orientdb:3.2.18
Commands above will need your API Key, see How-to get your artifactory API key
Then try again
./start.sh
Other “How Tos”
How-to get your SQL Server IP address and port
- In your SQL Server Configuration Manager
- In the left pane, expand “SQL Server Network Configuration”
- Select “Protocols for MSSQLSERVER”
- In the right pane, right click “TCP/IP” and select “Properties”
- Select the IP Addresses tab
- Take note of your IP 9.x and TCP port
Re-installing Refactoring Assistant
If you already have RA installed but want to reinstall it:
- Go to the directory where you installed Refactoring Assistant (e.g., /root/refactoring-assistant).
- Run ./stop.sh all to stop all containers
- Delete the current podman images except for the orientdb image
- See all images: podman images
- Delete them one by one: podman rmi <image id> Then follow the instructions to install and configure RA
note
You don’t need to do the “Additional sections using HTTPS” again
BetaNXT Project
We did an install for BetaNXT of ADDI and Refactoring Assistant for a WCA4Z project. This is a overview of the issues we encountered and the solutions we came up with. We also propose improvements to the existing documentation to avoid these issues in the future.
DEX_HOST_PORT
Problem
The documentation calls to set the variable DEX_HOST_PORT
to use https
however in the slack support channel, people are saying to leave it blank. We could not get it to work when we set it to https
but leaving it blank it worked.
Solution
Leave the DEX_HOST_PORT
blank
Configuring IBM Application Discovery
We need to be using the fully qualified domain name. We had tried to use the IP address, but we were getting errors so we went back to replace the ip address with the domain name. This required us to restart the services
Getting the FQDN to correctly populate the AD_HOST_PORT
Problem
We were running into issues because we were using the static IP addresses for the VMs to populate the AD_HOST_PORT environment variable. The documentation states to use the domain name, but we figured they were interchangeable. They are not. So we needed to figure out how to find the hostnames of the respective machines
Solution
In the linux machine we used the command hostnamectl
to pull up the domain name
In the windows machine we used the GUI and went into control panel => Device manager
Provisioning Watson Code Assistant
Problem
The Techzone instance doesn't seem to give us the option to provision a dedicated instance with the intent to use "non-regulated customer data" like we get when we provision other techzone instances such as governance.
Solution
We're still trying to solve this issue
First install didn't include the Occurrences per file properly
Renate reinstalled and followed the install wizard and it sorted the issue. We're not really sure why it wasn't working.
Make sure the refactoring assistant is loading properly
Problem
When we run podman logs
we're seeing an SSL cert error. We're troubleshooting what is causing that.
VM Problems
The VM's we were initially trying to install ADDI and Refactoring assistant weren't really communicating effectively. So a first inital test that we recommend is as soon as you have the environment is that you ping from one VM to the other to ensure that you have open communications because everything else hinges on that.
Installing ADDI
As you're doing a custom install of SQL Server Express 2022, in the GUI, choose the custom install option. As you make your way through the install, at the very top there is a default profile option. Also, Toward the very end of the install, you can opt to select both Microsoft AND SQL authentication during the install. That will alleviate some of the manual steps later.
Installing Refactoring Assistant
The Cookbook and the Documentation site sometimes have discrepancies. For example, The DEX_HOST_PORT problem we ran into is correct in the online documentation but broken in the cookbook.
We needed to add RA_MOUNT_OPTIONS=:Z
to the config.properties file.
On the Windows VM in the dex.yaml file, step 7 of page 12 of the cookbook, we deleted the connectors from the dex.yaml file to better match what was in the documentation.
In step 8, in the eclipse tool, it mentions going into the dashboard to configure. You need to update everything in the GUI. If you're using HTTPS vs HTTP, you need to update the port from 2181
to 2281
. To get there you need to go into Double Click on Environment Settings It looks like its a header but it is it's own menu.
In the official online Documentation, step 6, it says "Copy the ADDI certificate to the directory /etc/pki/ca-trust/source/anchors
on the Linux and run the following command update-ca-trust
There also is no sanity check in the documentation to make sure everything is working. The default password is password
when connecting to the refactoring assistant.