2.9 OS起動時のJP1/AOの自動起動を有効にする設定(Linuxの場合)
JP1/AOサーバがLinuxの場合,OS起動時にJP1/AOサービスを自動起動させない設定になっています。OS起動時にJP1/AOサービスを自動起動させたい場合は,以下のいずれかの方法を実施してください。
ケース1:systemdを使用する環境(Linux 7など)に新規に構築する場合
- 設定方法
- JP1/AOサービスの自動起動用にUnitファイルを作成します。
格納先:/usr/lib/systemd/system
ファイル名:JP1_AO.service
ファイル名が異なる場合は,以降の「JP1_AO.service」の部分を読み替えてください。
左側の数字は,行番号です。行番号が無い行は,一つ上の行からの継続となります。
1 [Unit] 2 Description=JP1/AO service 3 After=2248-PD01.service hicommand64-hcs_hweb.service hicommand64-hcs_hsso.servi ce hicommand64-hcs_web.service hicommand64-hcs_ao.service 4 Requires=2248-PD01.service hicommand64-hcs_hweb.service hicommand64-hcs_hsso.se rvice hicommand64-hcs_web.service hicommand64-hcs_ao.service 5 6 [Service] 7 Type=forking 8 Environment="LANG=ja_JP.utf8" 9 ExecStartPre=/home/jp1ao/ao_start_check 10 ExecStart=/opt/HiCommand/Base64/bin/hcmds64srv -start -server AutomationWebServ ice 11 TimeoutStartSec= 600 12 13 [Install] 14 WantedBy=multi-user.target graphical.target
-
次のコマンドを実行して属性を設定します。
chmod 644 /usr/lib/systemd/system/JP1_AO.service
chgrp root /usr/lib/systemd/system/JP1_AO.service
chown root /usr/lib/systemd/system/JP1_AO.service
-
ExecStartPreオプションに指定したスクリプトファイルを作成します。
/home/jp1ao/ao_start_check
#!/bin/sh HCMDS_HOME=/opt/HiCommand/Base64 for i in `seq 1 10` do cjstartsv_counter=`ps -ef | \ grep ${HCMDS_HOME}/uCPSB/CC/server/bin/cjstartsv | grep -v grep | wc -l` hcs_hsso_counter=`ps -ef | \ grep \ ${HCMDS_HOME}/uCPSB/CC/server/repository/HBase64StgMgmtSSOService/hcs_hsso | \ grep -v grep | wc -l` httpsd_counter=`ps -ef | \ grep ${HCMDS_HOME}/uCPSB/httpsd/sbin/httpsd | grep -v grep | wc -l` rotatelogs_counter=`ps -ef | \ grep ${HCMDS_HOME}/uCPSB/httpsd/sbin/rotatelogs | grep -v grep | wc -l` pdprcd_counter=`ps -ef | \ grep ${HCMDS_HOME}/HDB/lib/servers/pdprcd | grep -v grep | wc -l` pdmlgd_counter=`ps -ef | \ grep ${HCMDS_HOME}/HDB/lib/servers/pdmlgd | grep -v grep | wc -l` pdrdmd_counter=`ps -ef | \ grep ${HCMDS_HOME}/HDB/lib/servers/pdrdmd | grep -v grep | wc -l` sleep 60 if [ $cjstartsv_counter -ge 1 -a \ $hcs_hsso_counter -ge 1 -a \ $httpsd_counter -ge 22 -a \ $rotatelogs_counter -ge 4 -a \ $pdprcd_counter -ge 1 -a \ $pdmlgd_counter -ge 1 -a \ $pdrdmd_counter -ge 1 ]; then exit 0 fi done exit 1
-
次のコマンドを実行して属性を設定します。
chmod 554 /home/jp1ao/ao_start_check
chgrp root /home/jp1ao/ao_start_check
chown root /home/jp1ao/ao_start_check
-
次のコマンドを実行してJP1/AOサービスの自動起動を有効にします。
systemctl daemon-reload
systemctl enable JP1_AO.service
-
次のコマンドを実行して「enabled」が表示されることを確認します。
systemctl list-unit-files | grep "UNIT FILE\|JP1_AO.service"
- JP1/AOサービスの自動起動用にUnitファイルを作成します。
- 解除方法
-
JP1/AOが起動している場合は,次のコマンドを実行してJP1/AOを停止します。
/opt/HiCommand/Base64/bin/hcmds64srv -stop
-
次のコマンドを実行してJP1/AOサービスの自動起動を無効にします。
systemctl disable JP1_AO.service
-
次のコマンドを実行して「disabled」が表示されることを確認します。
systemctl list-unit-files | grep "UNIT FILE\|JP1_AO.service"
-
次のコマンドを実行してJP1/AOサービスのUnitファイルを削除します。
rm -i /usr/lib/systemd/system/JP1_AO.service
次のコマンドを実行してスクリプトファイルを削除します。
rm -i /home/jp1ao/ao_start_check
-
ケース2:systemdを使用する環境(Linux 7など)で既に構築済みの場合
既存環境にて以下の方法で自動起動を設定済みで問題無く自動起動している場合は,設定を変更する必要はありません。
以下の方法で,自動起動に失敗する場合は,以下の設定を解除してから,ケース1の設定方法を実施してください。
-
設定方法
-
JP1/AOサービスの自動起動用にUnitファイルを作成します。
格納先:/etc/systemd/system
ファイル名:JP1_AO.service
ファイル名が異なる場合は,以降の「JP1_AO.service」の部分を読み替えてください。
[Unit] Description=JP1/AO service [Service] Type=forking Environment="LANG=ja_JP.utf8" ExecStart=/opt/HiCommand/Base64/bin/hcmds64srv -start -server AutomationWebService [Install] WantedBy=multi-user.target graphical.target
-
次のコマンドを実行して属性を設定します。
chmod 644 /etc/systemd/system/JP1_AO.service
chgrp root /etc/systemd/system/JP1_AO.service
chown root /etc/systemd/system/JP1_AO.service
-
次のコマンドを実行してJP1/AOサービスの自動起動を有効にします。
systemctl daemon-reload
systemctl enable JP1_AO.service
-
次のコマンドを実行して「enabled」が表示されることを確認します。
systemctl list-unit-files | grep "UNIT FILE\|JP1_AO.service"
-
-
解除方法
-
JP1/AOが起動している場合は,次のコマンドを実行してJP1/AOを停止します。
/opt/HiCommand/Base64/bin/hcmds64srv -stop
-
次のコマンドを実行してJP1/AOサービスの自動起動を無効にします。
systemctl disable JP1_AO.service
-
次のコマンドを実行して「disabled」が表示されることを確認します。
systemctl list-unit-files | grep "UNIT FILE\|JP1_AO.service"
-
次のコマンドを実行してJP1/AOサービスのUnitファイルを削除します。
rm -i /etc/systemd/system/JP1_AO.service
-
ケース3:自動起動スクリプトを使用する環境(Linux 6など)の場合
- 設定方法
OSの起動スクリプトに,環境変数LANGの設定値を指定し,hcmds64srvコマンドを実行するように記述してください。
なお,共通コンポーネントのサービスはOS起動時に自動起動する設定になっているため, serverオプションに「AutomationWebService」を指定し,JP1/AOサービスのみを起動するように記述してください。
serverオプションを指定してJP1/AOサービスだけを開始する場合,事前に共通コンポーネント,およびデータベースのサービスを開始しておく必要があります。そのため,共通コンポ ーネント,およびデータベースのプロセスの有無を確認してから,JP1/AOサービスを起動するように記述する必要があります。
なお,OS停止時はJP1/AOサービスおよび共通コンポーネントのサービスが自動停止する設定になっているため,自動停止の設定を行う必要はありません。
例
#!/bin/sh # chkconfig: 2345 99 01 # description: JP1/Automatic Operation PROG_NAME=startao start() { /home/jp1ao/startao2 & } case "$1" in start) start ;; *) echo "Usage: ${PROG_NAME} start" exit 1 esac exit 0
/home/jp1ao/startao2:#!/bin/sh HCMDS_HOME=/opt/HiCommand/Base64 start() { export LANG=ja_JP.utf8 ${HCMDS_HOME}/bin/hcmds64srv -start -server AutomationWebService rtn_code=$? logger -i -s -t [AUTOMATION] \ "${HCMDS_HOME}/bin/hcmds64srv -start -server AutomationWebService[${rtn_code}]" } for i in `seq 1 10` do cjstartsv_counter=`ps -ef | \ grep ${HCMDS_HOME}/uCPSB/CC/server/bin/cjstartsv | grep -v grep | wc -l` hcs_hsso_counter=`ps -ef | \ grep \ ${HCMDS_HOME}/uCPSB/CC/server/repository/HBase64StgMgmtSSOService/hcs_hsso | \ grep -v grep | wc -l` httpsd_counter=`ps -ef | \ grep ${HCMDS_HOME}/uCPSB/httpsd/sbin/httpsd | grep -v grep | wc -l` rotatelogs_counter=`ps -ef | \ grep ${HCMDS_HOME}/uCPSB/httpsd/sbin/rotatelogs | grep -v grep | wc -l` pdprcd_counter=`ps -ef | \ grep ${HCMDS_HOME}/HDB/lib/servers/pdprcd | grep -v grep | wc -l` pdmlgd_counter=`ps -ef | \ grep ${HCMDS_HOME}/HDB/lib/servers/pdmlgd | grep -v grep | wc -l` pdrdmd_counter=`ps -ef | \ grep ${HCMDS_HOME}/HDB/lib/servers/pdrdmd | grep -v grep | wc -l` sleep 60 if [ $cjstartsv_counter -ge 1 -a \ $hcs_hsso_counter -ge 1 -a \ $httpsd_counter -ge 22 -a \ $rotatelogs_counter -ge 4 -a \ $pdprcd_counter -ge 1 -a \ $pdmlgd_counter -ge 1 -a \ $pdrdmd_counter -ge 1 ]; then start exit 0 fi done logger -i -s -t [AUTOMATION] "Common Component seems to be dead." exit 1
- 解除方法
-
JP1/AOが起動している場合は,次のコマンドを実行してJP1/AOを停止します。
/opt/HiCommand/Base64/bin/hcmds64srv -stop
- 作成した起動スクリプトを削除してください。
次のコマンドを実行してスクリプトファイルを削除します。
rm -i /home/jp1ao/startao2
-