basic/basic_cluster_alb_ssl

Genvid クラスタと必要なワーカーを作成する Twitch エクステンションサンプルの基本的なインフラストラクチャです。

重要

ALB SSL の統合には次の 2 つの前提条件があります。

  1. Web バックエンドが、パブリックノードのポート 30000 でサービスされており、/health のヘルスチェックを受けていること。
  2. Leaf の Web ソケットが、パブリックノードのポート 30001 でサービスされており、/health のヘルスチェックを受けていること。

すべてのノードがサービスを実行する必要はありませんが、存在しない場合は破棄されます。

プロバイダ

  • aws (2.54.0)
  • null
  • tls

要件

  • terraform >= 0.12
  • aws 2.54.0

入力

cluster (string)

クラスタの名称

trusted_cidr (string)

信頼する CIDR。少なくともローカルマシンの外部 IP が含まれている必要があります。 他の場所では、consul/nomad への提供とアクセスは失敗します。

admin_password (string)

ゲームマシンの管理者パスワード。

ami_prefix (string)

ゲーム AMI のプレフィックス。

ami_version (string)

使用する AMI (ゲームおよび genvid) のバージョン。

azs (list(string))

リージョンのアベイラビリティゾーンの一覧

cidr (string)

VPC の CIDR ブロック。デフォルト値は有効な CIDR ですが、AWS はアクセスできないため、上書きする必要があります。

datacenter (string)

Consul/Nomad datacenter

domain_name (string)

ルートドメイン名

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_stickiness_ttl (number)

Leaf ターゲットグループの粘着性のタイムアウトを設定します。

leaf_tg_stickiness_enabled (bool)

Leaf ターゲットグループの粘着性を有効または無効に設定します。

namespace (string)

クラスタを再グループ化するデプロイの名前空間

private_subnets (list(string))

VPC 内部のプライベートサブネットの一覧

public_subnets (list(string))

VPC 内のパブリックサブネットの一覧

region (string)

AWS デプロイメント領域

stage (string)

デプロイ ステージ

subdomain_name (string)

サブドメイン名。AWS にゾーンを作成する際に使用します (twitch.acme.com)

toolbox_location (string)

Genvid ツールボックス Wheel ファイル。

AMI からアップデートする場合にのみ必要。指定しない場合は、ツールボックスをインストールしません。

trusted_cidrs (list(string))

信頼する CIDR リスト。

trusted_security_groups (list(string))

信頼するセキュリティグループの一覧

validation_method (string)

AWS からの SSL 発行証明書の検証方法 (DNS、メール、なし)

web_port (number)

なし

web_stickiness_ttl (number)

Web ターゲットグループの粘着性のタイムアウトを設定します

web_tg_stickiness_enabled (bool)

Web ターゲットグループの粘着性を有効または無効に設定します

出力

ami_prefix

ゲーム AMI のプレフィックス。

ami_version

使用する AMI (ゲームおよび genvid) のバージョン。

azs_available
azs_selected
cluster

クラスタの名称

consul_nodes
datacenter

Consul/Nomad datacenter

domain_name

クラスタを作成し、クラスタに関連付けるドメイン名

encoding_worker_private_ips
encoding_worker_public_ips
endpoint_leaf
endpoint_web
game_private_ips
game_public_ips
iam_policy_name_game
iam_policy_name_server
internal_worker_private_ips
internal_worker_public_ips
leaf_port

leaf の設定を行うポート

namespace

クラスタを再グループ化するデプロイの名前空間

private_key_pem
private_subnets

VPC 内部のプライベートサブネットの一覧

public_key
public_subnets

VPC 内のパブリックサブネットの一覧

public_worker_private_ips
public_worker_public_ips
region

AWS デプロイメント領域

server_private_ips
server_public_ips
stage

デプロイ ステージ

subnet_ids

使用したサブネットの順番リストを指定します。

vpc_id_selected
web_port

Web バックエンドが使用するポート