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.
Minimal Example
Create a basic VirtualCluster with required properties and one optional security configuration.
ts
import AWS from "alchemy/aws/control";
const virtualCluster = await AWS.EMRContainers.VirtualCluster("myVirtualCluster", {
name: "MyVirtualCluster",
containerProvider: {
type: "EKS",
id: "myEKSCluster"
},
securityConfigurationId: "mySecurityConfigId" // Optional
});
Advanced Configuration
Configure a VirtualCluster with tags for better resource management and identification.
ts
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"
}
]
});
Using Existing Resource
This example demonstrates how to adopt an existing VirtualCluster instead of failing if it already exists.
ts
const existingVirtualCluster = await AWS.EMRContainers.VirtualCluster("existingVirtualCluster", {
name: "ExistingVirtualCluster",
containerProvider: {
type: "EKS",
id: "myExistingEKSCluster"
},
adopt: true // Enables adopting existing resources
});