Initialize the AMI

The AMI for the game machine requires some manual steps before use. We provide a basic image. You install the necessary audio and video drivers, as well as any other libraries required by your software.

Included Software

The current AMI comes with:

  • Windows Server Datacenter 2019
  • .Net Framework Core and 4.5
  • Visual Studio C Runtime 2013 and 2015
  • DirectX June 2010

Warning

We disable Windows Defender, Windows Defender SmartScreen, and Windows Firewall in the AMI for performance reasons.

We also install these open source components:

  • Consul, Nomad, and Python

    These are necessary for running the Genvid Stack.

  • TightVNC

    Used for remote access to your cluster, as it allows access to the GPU.

    The default password for access and administrative control is 1genvid6. You can access the cluster only from the development machine, but we still recommend that you change this password.

  • Consul-template

    Used to run some services on the machines.

  • AWS Command Line Interface

    Used to access various Amazon services.

Start the AMI

First, ensure the bastion service is running:

genvid-bastion install --bastionid mybastion --checkmodules --update-global-tfvars --loadconfig

Run the following command to start the AMI:

genvid-ami setup mycluster --az b

mycluster is a unique name used to distinguish your cluster from any other cluster currently running. You add it on the command line for almost every command of genvid-ami. The actual name of the cluster will be suffixed with -ami-setup (e.g. mycluster-ami-setup) to help with the distinction.

Availability Zones

The –az specifies an availability zone (b in the example). The Windows AMI requires a GPU instance, which isn’t available in every availability zone.

If the zone you selected doesn’t have a GPU, you’ll get an error message.

Your requested instance type (g2.2xlarge Windows) is not supported
in your requested Availability Zone (us-east-1a). Please retry your
request by not specifying an Availability Zone or choosing
us-east-1c, us-east-1b, us-east-1d, us-east-1e.

If that happens, you’ll need to run the command using a different zone. The name of the availability zone appears in the error message. The option corresponds to the last letter of the name (e.g., b in us-east-1b).

The command starts a small VPC with the base Genvid image, using your device’s external IP as the sole trusted IP. The first run takes a long time for Windows to setup the necessary elements. Expect around 30 minutes before the script stops.

After the script finishes you get a message like this:

You can now connect to the game machine on vnc://<some ip address>:5900/

You can start TightVNC viewer with the public machine IP and the default port (5900) or you can leave the port blank. The password is 1genvid6.

Locate the Cluster IP

You can run the following command to find the machine IP:

genvid-ami output mycluster game_public_ips

You can also re-run genvid-ami setup mycluster: