basic/basic_cluster_alb_ssl¶
Genvid クラスタと必要なワーカーを作成する Twitch 拡張機能サンプルの基本的なインフラストラクチャです。
重要
ALB SSL の統合には次の 2 つの前提条件があります。
- Web バックエンドが、パブリックノードのポート 30000 でサービスされており、
/health
のヘルスチェックを受けていること。 - Leaf のウェブソケットが、パブリックノードのポート 30001 でサービスされており、
/health
のヘルスチェックを受けていること。
すべてのノードがサービスを実行する必要はありませんが、存在しない場合は破棄されます。
バージョン 1.26.0 で変更: 変数 public_subnets
、 private_subnets
を削除
Content of this module
入力¶
-
bastionid (string)
この bastion インスタンスの ID。
-
cluster (string)
クラスタの名称。
-
trusted_cidr (string)
信頼する CIDR。少なくともローカルマシンの外部 CIDR (<ip>/32) が含まれている必要があります。含まれていない場合、Consul/Nomad への提供とアクセスは失敗します。
-
admin_password (string)
ゲームマシンの管理者パスワード。
-
ami_version (string)
使用する AMI (ゲームおよび Genvid) のバージョンプレフィックス (例: 1.20.0 は、1.20.0 および 1.20.0.0 の両バージョンに一致)。
バージョンサフィックス付きの AMI を使用するには、サフィックス付きのバージョン全体を指定する必要があります (例:
1.27.0.1.mysuffix
)。
-
azs (list(string))
リージョンで使用するアベイラビリティゾーンの一覧。空のリストでは、利用可能なすべてのゾーンが選択されます。
注釈
ゾーンの順序を変更すると、クラスタが再構築されます。リストに追加しても、既存のリソースには影響しません。
-
custom_tags (map(string))
すべてのクラウドリソースに追加するユーザー定義タグのマップ。
-
datacenter (string)
Consul/Nomad datacenter。
-
domain_name (string)
ルートドメイン名。
-
game_ami_prefix (string)
ゲーム AMI のプレフィックス。
バージョン 1.27.0 で追加.
-
instance_encoding_count (number)
生成するエンコーディングワーカー数。
-
instance_encoding_type (string)
エンコーディングサーバーで使用する EC2 インスタンスのタイプ。
-
instance_game_count (number)
生成されるゲームインスタンス数。
-
instance_game_type (string)
ゲームサーバーで使用する EC2 インスタンスのタイプ。
-
instance_internal_count (number)
生成する内部ワーカー数。
-
instance_internal_type (string)
内部サーバーで使用する EC2 インスタンスのタイプ。
-
instance_public_count (number)
生成するパブリックワーカー数。
-
instance_public_type (string)
パブリックサーバーで使用する EC2 インスタンスのタイプ。
-
instance_server_count (number)
監視サーバー数。奇数である必要があります (プロダクションのデプロイの場合、通常は 3 です)。
-
instance_server_type (string)
管理サーバーで使用する EC2 インスタンスのタイプ。
-
leaf_port (number)
Leaf サービスが実行されているポートです。
-
leaf_stickiness_ttl (number)
Leaf ターゲットグループ粘着性のタイムアウトを設定します。
-
leaf_tg_stickiness_enabled (bool)
Leaf ターゲットグループの粘着性を有効または無効に設定します。
-
region (string)
AWS デプロイメント領域。
-
server_ami_prefix (string)
サーバー AMI のプレフィックス。
バージョン 1.27.0 で追加.
-
subdomain_name (string)
subdomain_name
を使用して AWS にゾーンを作成します (例:subdomain.acme.com)。注釈
何も指定しなかった場合、
subdomain_name
のデフォルト値は{bastionid}-{clustername}
になります。注釈
既存のクラスタでサブドメインを変更または更新する場合は、 AWS Route53 のメインドメインから古いサブドメインの NS レコードを手動で削除する必要があります。古い NS レコードは自動的には削除されません。
-
subnet_cidr_block_size (number)
サブネットの CIDR ブロックのサイズを設定します。サブネットはアベイラビリティゾーンにまたがっており、すべてのサブネットの合計サイズが VPC の CIDR ブロック (10.0.0.0/16) 内に収まっている必要があります。これは、より大きなブロックがより少ないアベイラビリティゾーンにまたがることを意味します。
例えば、サイズ 18 の場合 2 つのアベイラビリティゾーンにまたがっています。サイズ 27 であれば、2048 のアベイラビリティゾーンにまたがります。
最大サイズ: 18
最小サイズ: 27
-
toolbox_location (string)
Genvid ツールボックス Wheel ファイル。
AMI からアップデートする場合にのみ必要。指定しない場合は、ツールボックスはインストールされません。
-
trusted_cidrs (list(string))
信頼する CIDR リスト。
-
trusted_security_groups (list(string))
信頼するセキュリティグループの一覧。
-
use_drive_encryption (bool)
暗号化された EBS にしたい場合は true を選択します。EBS を暗号化したくない場合や、SDK のバージョンを 1.24.0 以下から 1.25.0 以上にアップグレードする場合は、false を選択してください。
警告
既存のドライブでこの機能を切り替えると、ドライブが再生されます。
バージョン 1.25.0 以降、デフォルトで暗号化が有効になっています。1.25.0 以前のバージョンでは、ドライブは暗号化されていませんでした。
-
web_health_check_path (string)
Web サービスのヘルスチェックエンドポイントパス。web.nomad.tmpl で定義したパスと一致させる必要があります。
-
web_port (number)
Web サービスが実行されているポートです。
-
web_stickiness_ttl (number)
Web ターゲットグループ粘着性のタイムアウトを設定します。
-
web_tg_stickiness_enabled (bool)
Web ターゲットグループの粘着性を有効または無効に設定します。
出力¶
-
ami_version
使用する AMI (ゲームおよび genvid) のバージョン。
-
azs_available
使用可能と検出されたアベイラビリティゾーンの一覧。
-
azs_selected
使用するために選択したアベイラビリティゾーンの一覧。
-
cluster
クラスタの名称
-
consul_nodes
コンソールノード
-
datacenter
Consul/Nomad datacenter
-
domain_name
クラスタを作成し、クラスタに関連付けるドメイン名
-
encoding_worker_private_ips
エンコードインスタンスのプライベート IP アドレス
-
encoding_worker_public_ips
エンコードインスタンスのパブリック IP アドレス
-
endpoint_leaf
leaf サービスのエンドポイント URL
-
endpoint_web
Web サービスのエンドポイント URL
-
game_instance_profile_name
ゲームインスタンスで使用するインスタンスプロフィール名
-
game_private_ips
ゲームインスタンスのプライベート IP アドレス
-
game_public_ips
ゲームインスタンスのパブリック IP アドレス
-
internal_worker_private_ips
内部インスタンスのプライベート IP アドレス
-
internal_worker_public_ips
内部インスタンスのパブリック IP アドレス
-
leaf_port
leaf がリッスンするポート
-
private_key_pem
SSH や RDP でインスタンスに接続するためのプライベートキー
-
private_subnets
VPC 内部のプライベートサブネットの一覧
-
public_key
AWS が認証に使用するインスタンスに接続するためのパブリックキー
-
public_subnets
VPC 内のパブリックサブネットの一覧
-
public_worker_private_ips
パブリックインスタンスのプライベート IP アドレス
-
public_worker_public_ips
パブリックインスタンスのパブリック IP アドレス
-
region
AWS デプロイメント領域
-
server_instance_profile_name
サーバー、エンコード、内部、パブリックインスタンスで使用するインスタンスプロフィール名
-
server_private_ips
サーバーインスタンスのプライベート IP アドレス
-
server_public_ips
サーバーインスタンスのパブリック IP アドレス
-
subnet_ids
使用したサブネットの順番リストを指定します。
-
vpc_id_selected
選択した VPC の ID
-
web_health_check_path
Web サービスのヘルスチェックエンドポイントパス。
-
web_port
web サービスがリッスンしているポートです。