Cisco Transport Controller (CTC) installation on MacOS

Installation of Cisco Transport Controller (CTC) was quite easier on my previous Windows 10 laptop than my MacOS Sierra (10.12+). Since, I started using MacOS very recently, it was tricky for me to find a solution to install CTC. Hence, I’d like to write about it here.

CTC is a complex java applet ran through a browser that requires access to the $HOME directory of the user. It creates a .ctc directory in the $HOME directory and stores various .jar files.

In our DWDM network, we have CISCO ONS 15454 boxes and we use CTC to monitor and manage the nodes and circuits. Hence, running CTC in my laptop is a must.

Here goes CTC installation steps I followed for my MacOS:

First, create a directory with the name .ctc in your home directory.

Awals-MacBook-Air:~ awal$ pwd
/Users/awal
Awals-MacBook-Air:~ awal$ mkdir .ctc

Download LAUNCHER.jar in .ctc directory from ONS shelf using its IP address. In my case, the ONS shelf has IP 10.50.32.38

$ cd .ctc
$ curl http://10.50.32.38/fs/LAUNCHER.jar -O LAUNCHER.jar
%  Total     % Received  % Xferd  Average  Speed    Time    Time  Time  Current
Dload Upload   Total   Spent   Left   Speed
100 776k   100     776k  0     0    39402      0 0:00:20 0:00:20 –:–:– 29121

Awals-MacBook-Air:.ctc awal$ ls
LAUNCHER.jar

Now, run the LAUNCHER.jar

Awals-MacBook-Air:.ctc awal$ java -jar LAUNCHER.jar 10.50.32.38

This will start downloading the other needed jar files from the node into the .ctc directory in your $HOME directory. This can take awhile if not directly connected to the ONS device. Once the necessary jar files are downloaded you’ll be presented with the typical CTC login screen.

You will then be presented with the CTC software and able to view your nodes as normal.

All of the files should now be downloaded. If you connect to a different network running a different software version you’ll see that you start downloading more files with different version numbers.

Awals-MacBook-Air:.ctc awal$ ls
ELE_098130.jar    NET_098130.jar    jhall_2_0_0_1.jar      palrootIF_098130.jar   ORB_j6_0231_01.jar     jviews_8_1_1.jar      velocity.log          LAUNCHER.jar         cues2012_3_5_1.jar      pal.log    LAUNCHER_098130.jar   cwitools_1_1.jar pallib_1_0_372.jar   META-INF hiscale_1_1_2.jar     palpkg_1_0_372.jar

Instead of running LAUNCHER.jar I prefer using LAUNCHER_[version].jar

Awals-MacBook-Air:.ctc awal$ java -jar LAUNCHER_098130.jar 10.50.32.38

If the CTC launch with smaller heap size like 128m. You have to manually specify the heap size in the java command. I prefer 512m in most cases.

Awals-MacBook-Air:.ctc awal$ java -Xmx512m -jar LAUNCHER_098130.jar 10.50.32.38

Sometimes, my Java still plays with me and gets hang. In those cases, CTC doesn’t response which is wired and annoying. In those cases I got the following errors in my MacOS terminal.

2017-09-05 23:27:02.423 java[11680:1253892] java.lang.OutOfMemoryError: PermGen space
2017-09-05 23:27:07.250 java[11680:1253892] java.lang.OutOfMemoryError: PermGen space
2017-09-05 23:27:12.354 java[11680:1253892] java.lang.OutOfMemoryError: PermGen space
2017-09-05 23:27:19.831 java[11680:1253892] java.lang.OutOfMemoryError: PermGen space

In those cases, I prefer specifying the PermSize (128m), MaxPermSize (256m) and increasing the HeapSize (1024m) with the following command. Now, Java and CTC works absolutely fine. However, it might take a while to load all your nodes fully.

Awals-MacBook-Air:~ awal$ java -XX:PermSize=128m -XX:MaxPermSize=256m -Xms1024m -Xmx1024m -jar LAUNCHER_098130.jar 10.50.32.38

Java version

“Java version 6 with update 37 works for all CTC versions” according to a statement mentioned here: https://www.cisco.com/c/en/us/support/docs/optical-networking/ons-15454-series-multiservice-provisioning-platforms/116642-technote-ctc-00.html

If you need to tune your Java versions in MacOS, read my article on this issue.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.