Cluster
The Cluster resource lets you manage AWS MediaLive Clusters which are used for video processing in the cloud.
Minimal Example
Section titled “Minimal Example”Create a basic MediaLive cluster with required properties and a common optional property:
import AWS from "alchemy/aws/control";
const mediaLiveCluster = await AWS.MediaLive.Cluster("basicCluster", { instanceRoleArn: "arn:aws:iam::123456789012:role/MediaLiveInstanceRole", clusterType: "STANDARD", networkSettings: { vpcId: "vpc-1234abcd", securityGroupIds: ["sg-1234abcd"], subnetIds: ["subnet-1234abcd"] }, tags: [ { key: "Environment", value: "Development" } ]});
Advanced Configuration
Section titled “Advanced Configuration”Configure a cluster with additional properties such as tags and a specific name:
const advancedMediaLiveCluster = await AWS.MediaLive.Cluster("advancedCluster", { instanceRoleArn: "arn:aws:iam::123456789012:role/MediaLiveInstanceRole", clusterType: "HIGH_AVAILABILITY", name: "HighAvailabilityCluster", networkSettings: { vpcId: "vpc-5678efgh", securityGroupIds: ["sg-5678efgh"], subnetIds: ["subnet-5678efgh"] }, tags: [ { key: "Project", value: "MediaStreaming" }, { key: "Owner", value: "TeamA" } ]});
Adoption of Existing Resources
Section titled “Adoption of Existing Resources”If you want to adopt an existing cluster instead of creating a new one, you can set the adopt
property to true:
const adoptMediaLiveCluster = await AWS.MediaLive.Cluster("existingCluster", { instanceRoleArn: "arn:aws:iam::123456789012:role/MediaLiveInstanceRole", clusterType: "STANDARD", adopt: true // Adopt the existing resource if it exists});
Custom Network Settings
Section titled “Custom Network Settings”Set up a cluster with specific network configurations:
const customNetworkCluster = await AWS.MediaLive.Cluster("customNetworkCluster", { instanceRoleArn: "arn:aws:iam::123456789012:role/MediaLiveInstanceRole", clusterType: "STANDARD", networkSettings: { vpcId: "vpc-9012ijkl", securityGroupIds: ["sg-9012ijkl"], subnetIds: ["subnet-9012ijkl"], inboundRules: [ { protocol: "tcp", fromPort: 80, toPort: 80, cidrBlock: "192.168.1.0/24" }, { protocol: "tcp", fromPort: 443, toPort: 443, cidrBlock: "192.168.1.0/24" } ] }});