basic/basic_cluster

DirectX サンプルで使用するための、基本的ながら完全な AWS クラスタインフラストラクチャです。

このモジュールは、以下の主なリソースを作成することで、 SDK クラスタをデプロイすることができます: - VPC、サブネット - EC2 サーバー (SGroups)

プロバイダ

  • aws (~> 3.35.0)
  • tls (~> 3.1.0)

要件

  • terraform >= 0.13
  • aws ~> 3.35.0
  • tls ~> 3.1.0

入力

bastionid (string)

この bastion インスタンスの ID

cluster (string)

クラスタの名称

trusted_cidr (string)

信頼する CIDR。少なくともローカルマシンの外部 CIDR (<ip>/32) が含まれている必要があります。含まれていない場合、Consul/Nomad への提供とアクセスは失敗します。

admin_password (string)

Windows マシンの管理者パスワードです。Windows マシンは、他のサーバーインスタンス、または [2] に同じ外部 IP が設定された他のマシンからのみ、アクセス可能です。

デフォルト: 1genvid6

ami_version (string)

使用する AMI (wingame および server) のバージョンプレフィックス (例: 1.20.0 は、 1.20.0 および 1.20.0.0 の両バージョンに一致)。

バージョンサフィックス付きの AMI を使用するには、サフィックス付きのバージョン全体を指定する必要があります (例: 1.28.0.1.mysuffix)。

デフォルト: 1.35.0

azs (list(string))

リージョンで使用するアベイラビリティゾーンの一覧。空のリストでは、利用可能なすべてのゾーンが選択されます。注釈: ゾーンの順序を変更すると、クラスタが再構築されます。リストに追加しても、既存のリソースには影響しません。

custom_tags (map(string))

すべてのクラウドリソースに追加するユーザー定義タグのマップ。 [1] [4]

datacenter (string)

Consul/Nomad datacenter

デフォルト: default

game_ami_owners (list(string))

ゲーム AMI を所有できるオーナーの一覧。 デフォルトでは self。

バージョン 1.30.0 で追加.

デフォルト: [『self』]

game_ami_prefix (string)

ゲーム AMI の共通プレフィックスです。 AMI の保存 のセクションで使用したプレフィックスです。自分の AMI でテストしたい場合は、変更することができます。[5]

デフォルト: default

instance_encoding_count (number)

生成する内部ワーカー数

デフォルト: 1

instance_encoding_type (string)

エンコーディングサーバーで使用する EC2 インスタンスのタイプ

デフォルト: c5.2xlarge

instance_game_count (number)

生成されるゲームインスタンス数

デフォルト: 1

instance_game_type (string)

ゲームサーバーで使用する EC2 インスタンスのタイプ

デフォルト: g5.xlarge

instance_internal_count (number)

生成する内部ワーカー数

デフォルト: 1

instance_internal_type (string)

内部サーバーで使用する EC2 インスタンスのタイプ

デフォルト: t3.small

instance_public_count (number)

生成するパブリックワーカー数

デフォルト: 1

instance_public_type (string)

パブリックサーバーで使用する EC2 インスタンスのタイプ

デフォルト: t3.small

instance_server_count (number)

監視サーバー数。奇数である必要があります。プロダクションのデプロイの場合、通常は 3 です。

デフォルト: 1

instance_server_type (string)

管理サーバーで使用する EC2 インスタンスのタイプ

デフォルト: t3.small

region (string)

AWS デプロイメント領域

デフォルト: us-east-1

server_ami_owners (list(string))

有効な AMI が持つことのできるオーナーの一覧。 デフォルトで Genvid パブリックアカウント。

バージョン 1.30.0 で追加.

デフォルト: [『149754531711』]

server_ami_prefix (string)

サーバー AMI の共通プレフィックスです。自分の AMI でテストしたい場合は、変更することができます。[5]

デフォルト: genvidtech

subnet_cidr_block_size (number)

サブネットの CIDR ブロックのサイズを設定します。サブネットはアベイラビリティゾーンにまたがっており、すべてのサブネットの合計サイズが VPC の CIDR ブロック (10.0.0.0/16) 内に収まっている必要があります。つまり、より大きなブロックがより少ないアベイラビリティゾーンにまたがることを意味します。例: サイズ 17 の場合は、1 つのアベイラビリティゾーン、サイズ 28 の場合は、2048 のアベイラビリティゾーンとなります。最大サイズ: 17、最小サイズ: 28

デフォルト: 28

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 以下から 1.25 以上にアップグレードする場合は、false を選択してください。[3]

警告

既存のドライブでこの機能を切り替えると、ドライブが再生されます。1.25 以前のバージョンではドライブは暗号化されていません。バージョン 1.25 以降、暗号化はデフォルトで有効になっています。

デフォルト: True

出力

azs_available

使用可能と検出されたアベイラビリティゾーンの一覧。

azs_selected

使用するために選択したアベイラビリティゾーンの一覧。

cluster

クラスタの名称

consul_nodes

Consul ノード

encoding_worker_private_ips

エンコードインスタンスのプライベート IP アドレス

encoding_worker_public_ips

エンコードインスタンスのパブリック IP アドレス

game_instance_profile_name

ゲームインスタンスで使用するインスタンスプロフィール名

game_private_ips

ゲームインスタンスのプライベート IP アドレス

game_public_ips

ゲームインスタンスのパブリック IP アドレス

internal_worker_private_ips

内部インスタンスのプライベート IP アドレス

internal_worker_public_ips

内部インスタンスのパブリック IP アドレス

private_key_pem

SSH や RDP でインスタンスに接続するためのプライベートキー

public_key

AWS が認証に使用するインスタンスに接続するためのパブリックキー

public_subnets

パブリックサブネットのリスト

public_worker_private_ips

パブリックインスタンスのプライベート IP アドレス

public_worker_public_ips

パブリックインスタンスのパブリック IP アドレス

region

リージョン

server_instance_profile_name

サーバー、エンコード、内部、パブリックインスタンスで使用するインスタンスプロフィール名

server_private_ips

サーバーインスタンスのプライベート IP アドレス

server_public_ips

サーバーインスタンスのパブリック IP アドレス

subnet_selected

VPC 内に作成されたパブリックサブネットの一覧

vpc_id_selected

選択した VPC の ID

[1]カスタムタグに加えて、Genvid はリソースに独自のタグを追加する権利を有します。文書化されていない場合は、後方互換性を保証することなく、Genvid で使用することを意図しています。
[2]セキュリティ向上のため、将来のクラスタのバージョンでは bastion ホスト を使用する予定です。
[3]

バージョン 1.25.0 で追加.

[4]

バージョン 1.26.0 で追加.

[5](1, 2)

バージョン 1.27.0 で追加.