HULFT10 Smart Proxyの起動と終了
本書では、Red Hat Enterprise Linux 9でHULFT10 Smart Proxyを起動および終了する際の設定について説明します。
実行ファイルの作成
HULFT10 Smart Proxy(Web API)とHULFT10 Smart Proxy(WSS)の実行ファイルを作成します。
実行ファイルには、実行権限を付与する必要があります。
HULFT10 Smart Proxy(Web API)の実行ファイルの作成
$HULFT_SMART_PROXY_HOME/bin/に、実行ファイルを作成します。
以下は実行ファイルのサンプルです。
#!/bin/bash cd "$HULFT_SMART_PROXY_HOME/bin" || { echo "Failed to change directory. Exiting.";exit 1;} if [ ! -x "./hsp-api-server" ]; then echo "./hsp-api-server is not executable. Exiting." exit 1 fi ./hsp-api-server > /dev/null
HULFT10 Smart Proxy(WSS)の実行ファイルの作成
$HULFT_SMART_PROXY_HOME/binに、実行ファイルを作成します。
以下は実行ファイルのサンプルです。
#!/bin/bash cd "$HULFT_SMART_PROXY_HOME/bin" || { echo "Failed to change directory. Exiting.";exit 1;} if [ ! -x "./hsp-wss-server" ]; then echo "./hsp-wss-server is not executable. Exiting." exit 1 fi ./hsp-wss-server > /dev/null
各サーバーの起動
各サーバーの起動の手順を説明します。初回はこの手順でサーバーを起動してください。
-
HULFT10 Smart Proxy(Web API)の起動前の準備
HULFT10 Smart Proxy(Web API)(以降、APIサーバー)を起動する前に、以下の準備が必要です。
-
接続するPostgreSQLデータベースを起動
-
$HULFT_SMART_PROXY_HOME/etc/に以下をおく
APIサーバー設定ファイル(api-config.yml)
-
APIサーバー設定ファイルに以下を設定
-
PostgreSQLデータベースへの接続情報
-
サーバー証明書と秘密鍵のパス
APIサーバー設定ファイルの項目詳細は、「APIサーバー設定ファイル(api-config.yml)」を参照してください。
-
-
カレントディレクトリーは、APIサーバーの実行ファイルと同じ階層にする
-
-
APIサーバーの起動
以下の実行ファイルを実行します。
$ ./hsp-api-server
実行時にコンソールログが標準出力に出力されます。必要に応じてリダイレクトしてください。
バックグラウンドジョブでの動作や、仮想端末を閉じたりログアウトしたりしても停止しないよう、必要に応じてnohupコマンドを使用します。
nohupコマンドの詳細は、Linuxのヘルプを参照してください。
-
HULFT10 Smart Proxy(WSS)の起動前の準備
HULFT10 Smart Proxy(WSS)(以降、WSSサーバー)を起動する前に、以下の準備が必要です。
-
接続するPostgreSQLデータベースを起動
-
$HULFT_SMART_PROXY_HOME/etc/に以下をおく
WSSサーバー設定ファイル(wss-config.yml)
-
WSSサーバー設定ファイルに以下を設定
-
PostgreSQLデータベースへの接続情報
-
サーバー証明書と秘密鍵のパス
-
-
カレントディレクトリーは、WSSサーバーの実行ファイルと同じ階層にする
-
-
WSSサーバーの起動
以下の実行ファイルを実行します。
$ ./hsp-wss-server
実行時にコンソールログが標準出力に出力されます。必要に応じてリダイレクトしてください。
バックグラウンドジョブでの動作や、仮想端末を閉じたりログアウトしたりしても停止しないよう、必要に応じてnohupコマンドを使用します。
nohupコマンドの詳細は、Linuxのヘルプを参照してください。
各サーバーの停止
各サーバーを停止するには、killコマンドなどでサーバーのプロセスを停止します。
killコマンドを使用して、APIサーバーを停止させる例は以下のとおりです。
$ ps ax | grep ./hsp-api-server # APIサーバーのプロセスIDを問い合わせ 16619 ? Sl 0:01 ./hsp-api-server $ kill 16619 # killコマンドでAPIサーバーのプロセスIDを指定してプロセスを停止
各コマンドの詳細は、Linuxのコマンドのヘルプを参照してください。
systemdを使用した各サーバーの起動と停止
初回の各サーバーの起動および停止以降は、systemdによるサービスの起動および停止の機能を使用して、各サーバーを起動および停止できます。
ユニットファイルの作成
systemdがシステム起動時にHULFT10 Smart Proxyをサービスとして起動するためのユニットファイルを作成します。
ユニットファイル名は任意で、/etc/systemd/systemのディレクトリーに配置します。
以下はユニットファイルのサンプルです。
-
HULFT10 Smart Proxy(Web API)を起動するためのユニットファイル
例)/etc/systemd/system/hulft-api-server.service
[Unit] Description=SmartProxy api-server run test After=network.target [Service] Environment="HULFT_SMART_PROXY_HOME=xxx" (*1) ExecStart=/bin/bash -c 'xxx.sh' (*2) [Install] WantedBy=multi-user.target
-
HULFT10 Smart Proxy(WSS)を起動するためのユニットファイル
例)/etc/systemd/system/hulft-wss-server.service
[Unit] Description=SmartProxy wss-server run test After=network.target [Service] Environment="HULFT_SMART_PROXY_HOME=xxx" (*1) ExecStart=/bin/bash -c 'xxx.sh' (*2) [Install] WantedBy=multi-user.target
*1 |
: |
Environmentには、HULFT10 Smart Proxyを導入したディレクトリーを指定します。 |
*2 |
: |
ExecStartには、実行ファイルを配置したディレクトリーを指定します。 |
サービスの操作コマンド
作成したユニットファイルをサービスとして、以下のとおり登録、起動、停止、および参照できます。
-
更新したユニットファイルの内容をsystemdに反映
sudo systemctl daemon-reload
-
サービスの自動起動を有効
sudo systemctl enable xxx
“xxx”にはユニットファイル名を指定します。
-
サービスを起動
sudo systemctl start xxx
“xxx”にはユニットファイル名を指定します。
-
サービスを停止
sudo systemctl stop xxx
“xxx”にはユニットファイル名を指定します。
-
サービスのステータスを表示
sudo systemctl satus xxx
“xxx”にはユニットファイル名を指定します。
各サーバーのログ
各サーバーからのログの出力先は、各設定ファイルに指定したパスになります。
-
APIサーバー
APIサーバー設定ファイル(api-wss-config.yml)
ログレベル(level)
ファイルパス(filepath)
-
WSSサーバー
WSSサーバー設定ファイル(wss-config.yml)
ログ出力レベル(log-level)
ログファイル名(log-path)
各設定ファイルの詳細は、「設定ファイル」を参照してください。