Skip to content
GitHubXDiscord

VirtualCluster

The VirtualCluster resource allows you to create and manage AWS EMRContainers VirtualClusters for running serverless Apache Spark applications. This resource facilitates the management of your containerized EMR workloads.

Create a basic VirtualCluster with required properties and one optional security configuration.

import AWS from "alchemy/aws/control";
const virtualCluster = await AWS.EMRContainers.VirtualCluster("myVirtualCluster", {
name: "MyVirtualCluster",
containerProvider: {
type: "EKS",
id: "myEKSCluster"
},
securityConfigurationId: "mySecurityConfigId" // Optional
});

Configure a VirtualCluster with tags for better resource management and identification.

const advancedVirtualCluster = await AWS.EMRContainers.VirtualCluster("advancedVirtualCluster", {
name: "AdvancedVirtualCluster",
containerProvider: {
type: "EKS",
id: "myAdvancedEKSCluster"
},
securityConfigurationId: "myAdvancedSecurityConfigId", // Optional
tags: [
{
key: "Environment",
value: "Production"
},
{
key: "Department",
value: "DataScience"
}
]
});

This example demonstrates how to adopt an existing VirtualCluster instead of failing if it already exists.

const existingVirtualCluster = await AWS.EMRContainers.VirtualCluster("existingVirtualCluster", {
name: "ExistingVirtualCluster",
containerProvider: {
type: "EKS",
id: "myExistingEKSCluster"
},
adopt: true // Enables adopting existing resources
});