環境の準備
ホストマシン
Diamond ホストでは、クラスタ管理コンポーネントが稼働します。HA 環境以外の場合は、1 台の Diamond ホストで十分です。HA を設定する場合は 3 台の Diamond ホストが必要です。
SenseLink ホストでは、SenseLink サービスが稼働します。HA クラスタとして 3 台のホストが必要です。SenseLink Enterprise Pro 用ホストの最小システム要件を以下に記載します。
ELK ホストでは、Elasticsearch サービスが稼働します。HA クラスタとして 2 台以上のホストが必要です。ELK ホストには大容量ストレージディスクを搭載することを推奨します。 ストレージ容量の要件については、以下の表をご参照ください。
デイリーアクティブデバイス | ログレプリカ (デフォルト) | レグリカあたりのログストレージ | 有効期限 (デフォルト) | ストレージ要件 | 備考 |
100 | 2 | 3 GB | 15 | 100 GB | (ログレプリカ) * (レプリカあたりのストレージ) * (有効期限) |
200 | 2 | 3 GB | 15 | 200 GB |
また、 SenseLink ホストの拡張ディスクは、初期化して /data
パスにマウントする必要があります。
下記は300
台のデバイスで25,000従業員が1日に4回顔認証を実施して1.5年間に使う場合のサーバー構成例です。SenseLinkホストとCVホストはそれぞれ3台の構成となっています。
ホスト名 | 用途 | CPU | メモリ | OS ディスク | 拡張ディスク | 備考 |
ECS 0 | Diamond ホスト | 8 コア | 32 GB | 500 GB | 500 GB | -- |
ECS 1~3 | SenseLink ホスト | 8 コア | 32 GB | 500 GB | 500 GB | -- |
ECS 4~6 | CV ホスト | 16 コア | 120 GB | 500 GB | 500 GB | GPU*2, Nvidia P100 |
SenseLinkホストとCVホストをスケールアウトして、それぞれ4台の構成にする場合、400
台のデバイスで25,000従業員が1日に4回顔認証を実施して1.5年間に使える見込みです。
SLB サービス
SenseLink Enterprise Pro をクラウド上にデプロイするには、3 つの SLB サービスが必要です。1 つは内部用、2 つは外部トラフィック用です。SLB サービスはデプロイで使用されるため、デプロイの前に SLB の構成を設定する必要があります。
外部 SLB
外部 SLB によりクラウド内のサービスが外部と繋がり、SenseLink 管理者やすべての Sense デバイスがクラウドサービスにアクセスできるようになります。外部 SLB の構成を以下に記載します。1 番目の外部 SLB はインターネットによるアクセスが可能です。2 番目の外部 SLB には、Web 管理サイトおよび Diamond ポータルサイトの管理者のみがアクセスできます。特に 2 番目の外部 SLB は、イントラネットからのアクセスのみを許可することを推奨します。
用途 | 用途 | リスナー | 外部ポート | ルール | バックエンド ポート | ホスト |
1 番目の外部 SLB | SenseLink ポータル (要認証) | HTTPS | 443 | RoundRobin | 40080 | ECS 1/2/3/4/5/6 |
2 番目の外部 SLB | Diamond ポータル (オプション) | HTTP | 30080 | RoundRobin | 30080 | ECS 1/2/3/4/5/6 |
内部 SLB
内部 SLB は、Kubernetes API の HA サービス用であり、 トラフィックをすべての k8s マスターサーバにルーティングします。これにより、k8s マスターホストがクラッシュしても、現行の k8s クラスタに影響が及ぶことはありません。
用途 | リスナー | 外部ポート | ルール | バックエンドポート | ホスト |
Kubernetes HA | TCP または HTTPS | 9443 | RoundRobin | 6443 | ECS 0/1/2 |
外部サービス
SenseLink では、ソリューション内の MongoDB、MySQL、Redis および OSS が活用されます。これらのサービスは、クラウドプロバイダーから購入します。このとき、サービスの仕様が以下に記載する要件を満たしているかを注意して確認する必要があります。 特にデータベースのアカウントに注意が必要です。ユーザやデータベースを作成するには、高い特権
が設定されたアカウントが必要です。
サービス | バージョン | アカウント | 備考 |
MySQL | v5.7 | 高い特権 | # setting global variables set global innodb_large_prefix=1; set global log_bin_trust_function_creators=1; |
MongoDB | v4.0 | 高い特権 | --- |
Redis | v5.0 | -- | -- |
OSS | -- | -- | -- |
RDS前提条件
SenseLinkをインストールする前に、データベースの初期化が必要です。高特権のアカウントを使用して、下のSQLでデータベースを初期化してください。
サーバホストに接続するための キーリングデータ がローカルファイルに保存されている場合、keyring_file プラグイン が必要です。 キーリングプラグインがアクティブになっているかを確認するには、SHOW PLUGINS 構文を使用するか、INFORMATION_SCHEMA.PLUGINS テーブルに対してクエリを実行します。以下に例を示します。
その他の前提条件
(オプション) すべてのホストのニックネームを設定
デプロイや稼働中、 Diamond ホストからワークロードホストに対して ssh の実行が必要になる場合があります。すべての ECS ホストの /etc/hosts
でニックネームを設定すると、ssh を簡単に実行できるようになります。ニックネームは、ECS の元のホスト名にすることもできます。
最終更新