genda03

SSO systemctl service files

Discussion created by genda03 Employee on Mar 1, 2018
Latest reply on Apr 7, 2019 by Mithrandir

I'm not sure how many customers have been struggling with getting the SSO components integrated with the RedHat 7 systemctl service.  I finally got the WAM UI working so I wanted to post some working examples of service files for the SSO components.

 

Disclaimer - These service files are field tested in a clean lab environment.  Mileage may vary depending on your system configuration.  I don't know how much I can help debug your issues, but if you post here, perhaps the rest of the community can help.  If anyone has additions to improve these service files, please share.

 

SSO Policy Server

[Unit]
Description=CA SSO Policy Server
Requires=network.target

 

[Service]
Type=forking
TimeoutSec=360
User=${USER}
ExecStart=${APP_DIR}/start-all
ExecStop=${APP_DIR}/stop-all
Restart=on-abort
SuccessExitStatus=0 1
[Install]
WantedBy=multi-user.target

********************************************************************8

SSO WAM UI

[Unit]
Description=CA SSO WAM UI
After=network.target

 

[Service]
Type=idle
Environment=JAVA_HOME=${APP_DIR}/siteminder/adminui/runtime
Environment=JBOSS_HOME=${APP_DIR}/siteminder/adminui
Environment="JAVA_OPTS=-Xms1024m -Xmx1024m -XX:MaxPermSize=768m"
Environment=JBOSS_LOG_DIR=${APP_DIR}/siteminder/adminui/standalone/log
WorkingDirectory=${APP_DIR}/siteminder/adminui/bin
ExecStart=${APP_DIR}/siteminder/adminui/bin/standalone.sh
ExecStop=${APP_DIR}/siteminder/adminui/bin/standalone.sh stop
User=${USER}
Group=${GROUP}
TimeoutStartSec=600
TimeoutStopSec=600

 

[Install]
WantedBy=multi-user.target

***********************************************************

Access Gateway

[Unit]
Description=CA Access Gateway
After=syslog.target network.target

 

[Service]
Type=forking

 

Environment=JAVA_HOME=${JAVA_ROOT}/jre
Environment=CATALINA_PID=${APP_DIR}/proxy-engine/tmp/sps.pid
Environment=CATALINA_HOME=${APP_DIR}/Tomcat
Environment=CATALINA_BASE=${APP_DIR}/Tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

 

ExecStart=${APP_DIR}/proxy-engine/sps-ctl start
ExecStop=${APP_DIR}/proxy-engine/sps-ctl stop

 

User=${USER}
Group=${GROUP}
UMask=0007
RestartSec=60
Restart=always

 

[Install]
WantedBy=multi-user.target

*********************************************************

 

ASF Apache

[Unit]
Description=The Apache HTTP Server

 

[Service]
Type=forking
EnvironmentFile=${APP_DIR}/bin/envvars
PIDFile=${APP_DIR}/logs/httpd.pid
ExecStart=${APP_DIR}/bin/apachectl start
ExecReload=${APP_DIR}/bin/apachectl graceful
ExecStop=${APP_DIR}/bin/apachectl stop
KillSignal=SIGCONT
PrivateTmp=true

 


[Install]
WantedBy=multi-user.target

********************************************************

JBoss

[Unit]
Description=JBoss
After=syslog.target network.target

 

[Service]
Type=idle

 

Environment=JAVA_HOME=${JAVA_ROOT}
Environment=JBOSS_HOME=${APP_DIR}/${JBOSS_VER_DIR}
Environment=JAVA=${JAVA_ROOT}/java/bin/java
Environment=JBOSS_LOG_DIR=${APP_DIR}/${JBOSS_VER_DIR}/logs
Environment='JAVA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'
ExecStart=${APP_DIR}/${JBOSS_VER_DIR}/bin/standalone.sh
ExecStop=${APP_DIR}/${JBOSS_VER_DIR}/bin/standalone.sh stop
User=${USER}
Group=${GROUP}
TimeoutStartSec=600
TimeoutStopSec=600

 

[Install]
WantedBy=multi-user.target

**********************************************************

Tomcat

[Unit]
Description=Apache Tomcat
After=syslog.target network.target

 

[Service]
Type=forking

 

Environment=JAVA_HOME=${JAVA_ROOT}/jre
Environment=CATALINA_PID=${APP_DIR}/temp/tomcat.pid
Environment=CATALINA_HOME=${APP_DIR}
Environment=CATALINA_BASE=${APP_DIR}
Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

 

ExecStart=${APP_DIR}/bin/startup.sh
ExecStop=${APP_DIR}/bin/shutdown.sh

 

User=${USER}
Group=${GROUP}
UMask=0007
RestartSec=10
Restart=always

 

[Install]
WantedBy=multi-user.target

Outcomes