ローカルクラスタの開始¶
このセクションでは、Genvid SDK を統合したアプリケーションをテストするための、ローカル環境の構築方法を説明します。
In This Section
はじめに¶
- Genvid ツールボックス をインストールします。
PATH
が含まれていることを確認します。
ローカルクラスタの初期化¶
SHELL ウィンドウのコマンドラインで:
bastion サーバーをインストールします。
genvid-bastion install -lmu -b {mybastion}
このコマンドは、監視サーバー をセットアップして、Genvid bastion-api サービスを実行します。このスクリプトの詳細は、genvid-bastion を参照してください。
バージョン 1.20.0 で変更: ローカルクラスタの作成は、
genvid-bastion install
コマンド実行時のオプションになりました。デフォルトでは、ローカルクラスタは作成されなくなりました。mybastion は bastion サーバーの一意の識別子です。次の形である必要があります。
- 3 ~ 32 文字。
- 小文字、数字、ハイフンのみで構成。
- 冒頭は必ず小文字のアルファベット。
監視サーバーは、
~/.genvid
以下の作業ディレクトを使用します。GENVID_SERVICES_DATADIR
環境変数を、他の有効なディレクトリに設定することで、この場所を変更することもできます。注釈
ほとんどのデータは
GENVID_SERVICES_DATADIR
に書き込まれますが、現在の仕様では、ここの作業ディレクトリにすべてを転送することはできません。一部のデータ、たとえば terraform のworkdir
では、インストールディレクトリのbastion-services/terraform
内にある、terraform 設定ファイルと同じ場所に格納する必要があります。ローカルクラスタを設定します。
genvid-sdk setup
古い設定情報を消去します。
genvid-sdk clean-config
現在の設定を取得します。
genvid-sdk load-config-sdk
この時点で、プロジェクトを実行するための最小限のサービスでローカル環境が構築できました。
ストリーミングが完了したら、必ずすべてのサービスを停止してください。
genvid-bastion のその他のコマンドについては、 genvid-bastion を参照してください。
クラスタの共有¶
クラスタは、1 つを複数のプロジェクトで共有することはできますが、同時に起動できるのは 1 つのゲームだけです。ポートが競合してしまうため、1 台のマシンで複数のクラスタを実行することはできません。ローカルクラスタが使用するポートは以下の通りです。
ローカルクラスタが使用するポートは以下の通りです。
アプリケーション | TCP ポート | UDP ポート |
---|---|---|
Consul [1] | 8300, 8301, 8302, 8400, 8500, 8600 | 8301, 8302, 8600 |
Vault [2] | 8200 | |
Nomad [3] | 4646, 4647, 4648 | 4648 |
Bastion [4] | 8092 | |
その他 | 20000 - 60000 |
[1] | 使用される Consul ポート |
[2] | Vault 設定 |
[3] | Nomad エージェント設定 |
[4] | GENVID_BASTION_BINDING_PORT を参照してください。 |
その他のポートは、アプリケーションのクラスタでの実行スケジュールに合わせ、Nomad によって動的に割り当てられます。また メトリクス のセクションで説明しているとおり、すべてのサービスは udp://localhost:8125/
でメトリクスを送信するように設定されます。
ローカル IP の設定¶
デフォルトでは、local.py は IP アドレスを 127.0.0.1 にバインドします。特定のマシン IP を使用するには、2 つの環境変数を変更する必要があります。
すでにクラスタを設定している場合、最初にサービスを停止して現在の設定をすべてクリアする必要があります。
クラスタを停止する。
優先 Unix SHELL から、サービスのアンインストールとクリーンアップを行います。
genvid-bastion uninstall -c
古い設定情報をすべてクリアできたら、Windows コマンドプロンプトを開きます。
GENVID_DEFAULT_IP
をマシンの visible IP に設定します。CONSUL_HTTP_ADDR
を同じ IP に設定します。set GENVID_DEFAULT_IP=123.123.123.123 set CONSUL_HTTP_ADDR=123.123.123.123:8500
Unix SHELL からクラスタを再起動します。
genvid-bastion install -umlb {mybastion}