Jazz Forum Welcome to the Jazz Community Forum Connect and collaborate with IBM Engineering experts and users

How to auto-start CLM(Jazz) on RHEL7?

I tried to search articles but couldn't find. Please help.
I'm struggling to start Jazz on RHEL7 which support systemd.

#1.Status
Followings are what I tried.
1.1.Create new file, named clm.service with following contents
================
[Unit]
Description = CLM Server

[Service]
ExecStart = /opt/IBM/JazzTeamServer/server/server.startup

Restart = always
Type = simple

[Install]
WantedBy = multi-user.target
================
1.2.
As root,
# systemctl enable clm
# systemctl start clm

Then, CLM service started, but could connect from Web browser (login window not shown)
  - Trial of OS reboot resulted same
  - If I type start command manually with root user, CLM started correctly.
       # ./server.startup

#2.Check
I added following lines to the end of server.startup
echo JAVA_OPTS=$JAVA_OPTS > /tmp/test.txt
echo CATALINA_HOME=$CATALINA_HOME >> /tmp/test.txt

As result diff of manual command(./server.startup) and auto-start (systemctl start clm) , environments were same.

0 votes


Accepted answer

Permanent link
You should use "Type=forking" in the unit file, as explained in the Red Hat document.
forking – The process started with ExecStart spawns a child process that becomes the main process of the service. The parent process exits when the startup is complete.
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Unit_Files.html

So in my environment the unit file will look like this
[Unit]
Description = CLM Server

[Service]
ExecStart = /opt/IBM/JazzTeamServer602/server/server.startup
ExecStop = /opt/IBM/JazzTeamServer602/server/server.shutdown

Restart = always
Type = forking

[Install]
WantedBy = multi-user.target
After the service is started, if you run the command "systemctl status clm", you should see something like below:

clm.service - CLM Server
   Loaded: loaded (/usr/lib/systemd/system/clm.service; enabled)
   Active: active (running) since Thu 2016-12-08 20:30:42 AEDT; 13s ago
  Process: 17891 ExecStart=/opt/IBM/JazzTeamServer602/server/server.startup (code=exited, status=0/SUCCESS)
 Main PID: 17923 (java)
   CGroup: /system.slice/clm.service
           └─17923 /opt/IBM/JazzTeamServer602/server/jre/bin/java -javaagent:/opt/IBM/JazzTeamServer602/server/liberty/wlp/bin/tools/ws-javaagent.jar -Djava.awt.headless=true -XX:MaxPermSize=256m -Djazz.connector.sslEnabledProtocols=...

Dec 08 20:29:46 clm.jkebanking.net systemd[1]: Starting CLM Server...
Dec 08 20:29:48 clm.jkebanking.net server.startup[17891]: 12 08, 2016 8:29:47 午後 com.ibm.java.diagnostics.healthcenter.agent.mbean.HCLaunchMBean <init>
Dec 08 20:29:48 clm.jkebanking.net server.startup[17891]: 情報: Agent version "3.0.7.20160104"
Dec 08 20:29:49 clm.jkebanking.net server.startup[17891]: 12 08, 2016 8:29:49 午後 com.ibm.java.diagnostics.healthcenter.agent.mbean.HCLaunchMBean createJMXConnector
Dec 08 20:29:49 clm.jkebanking.net server.startup[17891]: 情報: IIOP will be listening on the next available system assigned port. Use com.ibm.java.diagnostics.healthcenter.agent.iiop.port to specify a port
Dec 08 20:29:50 clm.jkebanking.net server.startup[17891]: 12 08, 2016 8:29:50 午後 com.ibm.java.diagnostics.healthcenter.agent.mbean.HCLaunchMBean startAgent
Dec 08 20:29:50 clm.jkebanking.net server.startup[17891]: 情報: Health Center agent started on port 1972.
Dec 08 20:29:50 clm.jkebanking.net server.startup[17891]: サーバー clm を始動中です。
Dec 08 20:30:41 clm.jkebanking.net server.startup[17891]: サーバー clm がプロセス ID 17923 で始動しました。
Dec 08 20:30:42 clm.jkebanking.net systemd[1]: Started CLM Server.
(Sorry about the Japanese as I didn't spend time to change it, but you should get the idea.
Ralph Schoon selected this answer as the correct answer

0 votes


One other answer

Permanent link

 Hi Donald


I followed your example but received the following error upon reboot
my file is named /lib/systemd/system.jazz.service

Jazz.service <o:p> </o:p>

Active failed (result start-limit) <o:p> </o:p>

Failed tos tart clm server <o:p> </o:p>

Unit jazz.service entered failed state <o:p> </o:p>

Jazz.service holdoff time over scheduling restart <o:p> </o:p>

Start request repeated too quickly for jazz.service <o:p> </o:p>

Failed tos tart clm server <o:p> </o:p>

Unit jazz.service entered failed state <o:p> </o:p>

Jazz.service failed <o:p> </o:p>

Any insight ?

0 votes

Comments

It should be obvious that posting a question as an answer to a 4 year old question is a bad idea, yet so many do it. 


Consider creating your own question. 

While you are at it, you might want to try to collect some actionable data and provide it in your question. There is pretty much nothing I can see, except maybe "Start request repeated too quickly"

Your answer

Register or log in to post your answer.

Dashboards and work items are no longer publicly available, so some links may be invalid. We now provide similar information through other means. Learn more here.

Search context
Follow this question

By Email: 

Once you sign in you will be able to subscribe for any updates here.

By RSS:

Answers
Answers and Comments
Question details
× 2,353

Question asked: Dec 04 '16, 9:38 p.m.

Question was seen: 4,661 times

Last updated: Sep 22 '20, 7:56 a.m.

Confirmation Cancel Confirm