4 サービスの展開方法
SenseIDのインストール方法について記載しています。
SenseIDを認証するための展開方法について、主にインストール、設定、重要なサービスの起動、また発生する可能性のある問題とその解決策について詳しく説明しています。
4.1 インストールパッケージの展開確認
ライセンスファイルファイルを配置する為に、パッケージを解凍します。手順は3.3.1節をご参照ください。
解凍されたファイルのディレクトリへ移動し、現在のディレクトリにあるファイルを表示します。
$ cd 1v1-private-cloud-v1.8
$ ls -1
構造は次のとおりです。
api.tar
docker-compose
docker-compose.yml
go-workers
load_image.sh
package.toml
product.toml
4.2 Go-Workersの展開
このサービスは主要なコンピューティングサービスであるため、できれば専用のサーバーリソースを割り当てるようにしてください。
4.2.1 並行CPU数を調整
Go-Workersを配置する前に、サーバーの物理CPUコア数を確認する必要があります。物理CPUコア情報を取得するコマンドは以下のとおりです。
$ echo Cores=$(($(lscpu | awk '/^Socket/{print $2}') * $(lscpu | awk '/^Core/{print $4}')))
Go-Workersディレクトリへ移動して.env
ファイルを開き、専用サーバーを利用する場合、HANDLERS
の値を先程確認した物理CPUコア数に設定してください。それ以外の場合は、コア数を指定してください。編集後、.env
ファイルを保存してください。
$ cd go-workers
$ vi .env
4.2.2 Go-Workersサービスを開始
開始する前に、ライセンスが置き換え済であることを確認してください。
Go-Workersサービスを開始します。
$ sudo ./start.sh
この命令を実行する必要があるのは一度のみです。
なお、展開ディレクトリ内に停止スクリプトも用意されています。停止したい場合、以下の命令を実行してください。
$ sudo ./stop.sh
4.2.3 Go-Workersサービス開始の確認
サービスが正常に開始したかを確認するために、以下の命令でログを参照します。
$ tail -f tmp/worker.log.0
tailコマンドの実行結果にポート番号50050のServer Listenが含まれていれば、サービスが正常に開始されたことを示します。
また、以下の命令でヘルスチェックを実施してください。
$ curl 127.0.0.1:50050/healthcheck
正常に展開された場合の実行結果の例は、以下のとおりです(これはサービスが正常に開始したことを示しています)。
{"request_id":"07a41c21822e4223a373e77bfc186ed2","status":"ok"}
4.3 Ruby-Cloud-APIを展開
4.3.1 サービスイメージを読み込む
Ruby-Cloud-APIのイメージファイルを読み込みます。
$ cd 1v1-private-cloud-v1.8
$ sudo ./load_image.sh
実行結果は以下のとおりです。
Loaded image: registry.sensetime.com/senseid-cloudv2/api-1v1:xxx
4.3.2 Go-Workersサービスアドレスを設定
Go-WorkersサーバーのIPアドレスを取得してください。
$ hostname -I | cut -d' ' -f1
SenseIDインストールパッケージのルートフォルダにある.env
ファイルを開きます。
$ vi .env
最終行の WORKER_IP
値を、Go-Workersサービスが展開されているサーバーの IP アドレスで設定します。
4.3.3 並行CPU数を調整
Go-Workersと同様に、サーバーの物理CPUコア数を設定します。
$ vi .env
.env
ファイルを開き、専用サーバーを利用する場合、API_HANDLES
の値を先程確認した物理CPUコア数に設定してください。それ以外の場合は、コア数を指定してください。編集後、.env
ファイルを保存してください。
4.3.4 Ruby-Cloud-APIサービス開始
Ruby-Cloud-APIサービスを開始します。
$ sudo ./docker-compose up -d
結果は、以下のとおりです。
Creating network "1v1-private-cloud-yyyymmdd_default" with the default driver
Creating 1v1-private-cloud-yyyymmdd_api_1 ... done
Dockerが起動していることを確認します。
$ sudo ./docker-compose ps
結果は以下のとおりです。
Name Command State Ports
---------------------------------------------------------------------------------------
1v1-private-cloud_api_1 ./entrypoint.sh start Up (healthy) 0.0.0.0:3000->3000/tcp
ここまででサービスは展開されています。
4.3.5 Ruby-Cloud-APIサービス開始を確認
以下の命令で、ヘルスチェックを実施してください。
$ curl 127.0.0.1:3000/healthcheck
正常に展開された場合、実行結果の例は以下のとおりです(サービスが正常に開始したことを示しています)。
{"code":1000,"status":"ok"}
Last updated
Was this helpful?