submodules/cluster/sample

A basic cluster of AWS EC2 instances and network resources to run the Genvid stack.

Requirements

  • terraform >= 0.12

Inputs

cluster (string)

Name of your cluster

instance_profile_game (string)

Name of the IAM Instance Profile to use instead of creating a new one for game

instance_profile_server (string)

Name of the IAM Instance Profile to use instead of creating a new one for server

key_name (string)

The key name to use with the instance

private_key (string)

Your private key

subnet_ids (list(string))

An ordered list of subnets that can be used. Empty means all. New in version 1.24.

vpc_id (string)

VPC ID to use instead of creating a new one

admin_password (string)

Administrative password for the game machine.

ami_prefix (string)

Prefix of the game AMI.

ami_version (string)

Version prefix of the AMIs (both game and genvid) to use (ex: 1.20.0 will match both 1.20.0 and 1.20.0.0 versions).

datacenter (string)

Consul/Nomad datacenter

instance_encoding_count (number)

Number of internal workers to spawn

instance_encoding_type (string)

Type of EC2 instance to use for encoding servers

instance_game_count (number)

Number of game instances to spawn

instance_game_type (string)

Type of EC2 instance to use for game servers

instance_internal_count (number)

Number of internal workers to spawn

instance_internal_type (string)

Type of EC2 instance to use for internal servers

instance_public_count (number)

Number of public workers to spawn

instance_public_type (string)

Type of EC2 instance to use for public servers

instance_server_count (number)

The number of supervisor servers. Must be an odd number. It is usually 3 for production deployment.

instance_server_type (string)

Type of EC2 instance to use for admin servers

namespace (string)

Deployment namespace that will regroup the clusters

region (string)

AWS deployment region

stage (string)

Deployment stage

toolbox_location (string)

Genvid Toolbox Wheel file.

Only required if you need to update the one from the AMI. An empty value indicates to not install the toolbox.

trusted_cidrs (list(string))

A list of CIDR to be trusted.

trusted_security_groups (list(string))

A list of security groups to be trusted.

Outputs

cluster
consul_nodes
encoding_worker_private_ips
encoding_worker_public_ips
game_private_ips
game_public_ips
internal_worker_private_ips
internal_worker_public_ips
public_worker_instance_ids
public_worker_private_ips
public_worker_public_ips
server_private_ips
server_public_ips