GameServerGroup
The GameServerGroup resource lets you manage AWS GameLift GameServerGroups for deploying and scaling game servers effectively.
Minimal Example
Section titled “Minimal Example”Create a basic GameServerGroup with required properties and a couple of optional configurations.
import AWS from "alchemy/aws/control";
const gameServerGroup = await AWS.GameLift.GameServerGroup("myGameServerGroup", {  GameServerGroupName: "MyGameServerGroup",  InstanceDefinitions: [    {      InstanceType: "c5.large",      WeightedCapacity: "1"    }  ],  RoleArn: "arn:aws:iam::123456789012:role/GameLiftServerRole",  MinSize: 1,  MaxSize: 5,  VpcSubnets: ["10.0.0.0/24"]});Advanced Configuration
Section titled “Advanced Configuration”Configure a GameServerGroup with an Auto Scaling Policy and specific balancing strategy.
const advancedGameServerGroup = await AWS.GameLift.GameServerGroup("advancedGameServerGroup", {  GameServerGroupName: "AdvancedGameServerGroup",  InstanceDefinitions: [    {      InstanceType: "c5.large",      WeightedCapacity: "1"    }  ],  RoleArn: "arn:aws:iam::123456789012:role/GameLiftServerRole",  AutoScalingPolicy: {    TargetValue: 50.0,    ScaleUpInterval: 60,    ScaleDownInterval: 60,    ScaleUpThreshold: 70,    ScaleDownThreshold: 30  },  BalancingStrategy: "SPOT",  VpcSubnets: ["10.0.0.0/24"]});Game Server Protection Policy
Section titled “Game Server Protection Policy”Create a GameServerGroup with a protection policy to safeguard game servers from termination.
const protectedGameServerGroup = await AWS.GameLift.GameServerGroup("protectedGameServerGroup", {  GameServerGroupName: "ProtectedGameServerGroup",  InstanceDefinitions: [    {      InstanceType: "c5.large",      WeightedCapacity: "1"    }  ],  RoleArn: "arn:aws:iam::123456789012:role/GameLiftServerRole",  GameServerProtectionPolicy: "FULLY_PROTECTED",  VpcSubnets: ["10.0.0.0/24"]});Tagging Resources
Section titled “Tagging Resources”Add tags to your GameServerGroup for better management and organization.
const taggedGameServerGroup = await AWS.GameLift.GameServerGroup("taggedGameServerGroup", {  GameServerGroupName: "TaggedGameServerGroup",  InstanceDefinitions: [    {      InstanceType: "c5.large",      WeightedCapacity: "1"    }  ],  RoleArn: "arn:aws:iam::123456789012:role/GameLiftServerRole",  Tags: [    {      Key: "Environment",      Value: "Production"    },    {      Key: "Game",      Value: "MyAwesomeGame"    }  ]});