Skip to content

Gateway ​

The Gateway resource lets you manage AWS MediaConnect Gateways which serve as a bridge between your on-premises networks and AWS MediaConnect for transporting live video.

Minimal Example ​

Create a basic MediaConnect Gateway with essential properties.

ts
import AWS from "alchemy/aws/control";

const mediaConnectGateway = await AWS.MediaConnect.Gateway("myMediaConnectGateway", {
  Networks: [
    {
      NetworkName: "myNetwork",
      NetworkType: "VPC",
      NetworkId: "vpc-0abcd1234efgh5678"
    }
  ],
  EgressCidrBlocks: ["203.0.113.0/24"],
  Name: "MyMediaConnectGateway"
});

Advanced Configuration ​

Configure a gateway with multiple networks and additional optional settings.

ts
const advancedMediaConnectGateway = await AWS.MediaConnect.Gateway("advancedGateway", {
  Networks: [
    {
      NetworkName: "primaryNetwork",
      NetworkType: "VPC",
      NetworkId: "vpc-0abcd1234efgh5678"
    },
    {
      NetworkName: "backupNetwork",
      NetworkType: "VPC",
      NetworkId: "vpc-0ijkl1234mnop5678"
    }
  ],
  EgressCidrBlocks: ["203.0.113.0/24", "198.51.100.0/24"],
  Name: "AdvancedMediaConnectGateway",
  adopt: true // Allows adopting existing resource
});

Multiple Networks Example ​

Create a gateway that connects to multiple networks for redundancy.

ts
const multiNetworkGateway = await AWS.MediaConnect.Gateway("multiNetworkGateway", {
  Networks: [
    {
      NetworkName: "mainNetwork",
      NetworkType: "VPC",
      NetworkId: "vpc-0abcd1234efgh5678"
    },
    {
      NetworkName: "failoverNetwork",
      NetworkType: "VPC",
      NetworkId: "vpc-0mnop1234qrst5678"
    }
  ],
  EgressCidrBlocks: ["203.0.113.0/24"],
  Name: "MultiNetworkGateway"
});