Skip to content
GitHubXDiscordRSS

ReplicationGroup

Learn how to create, update, and manage AWS ElastiCache ReplicationGroups using Alchemy Cloud Control.

The ReplicationGroup resource allows you to manage AWS ElastiCache ReplicationGroups for high availability and fault tolerance in your caching layers.

Create a basic ReplicationGroup with required properties and a few common optional configurations.

import AWS from "alchemy/aws/control";
const basicReplicationGroup = await AWS.ElastiCache.ReplicationGroup("basicReplicationGroup", {
ReplicationGroupDescription: "Basic replication group for caching",
ReplicationGroupId: "basic-replication-group",
CacheNodeType: "cache.t2.micro",
Engine: "redis",
NumCacheClusters: 2,
AutomaticFailoverEnabled: true
});

Configure a ReplicationGroup with advanced settings such as encryption and preferred maintenance windows.

const advancedReplicationGroup = await AWS.ElastiCache.ReplicationGroup("advancedReplicationGroup", {
ReplicationGroupDescription: "Advanced replication group with encryption",
ReplicationGroupId: "advanced-replication-group",
CacheNodeType: "cache.m5.large",
Engine: "redis",
NumCacheClusters: 3,
AtRestEncryptionEnabled: true,
TransitEncryptionEnabled: true,
PreferredMaintenanceWindow: "sun:05:00-sun:06:00",
SnapshotRetentionLimit: 7,
SnapshotWindow: "05:00-06:00"
});

Create a ReplicationGroup designed for Multi-AZ deployment for better availability.

const multiAZReplicationGroup = await AWS.ElastiCache.ReplicationGroup("multiAZReplicationGroup", {
ReplicationGroupDescription: "Multi-AZ replication group",
ReplicationGroupId: "multi-az-replication-group",
CacheNodeType: "cache.r5.large",
Engine: "memcached",
NumCacheClusters: 2,
MultiAZEnabled: true,
PreferredCacheClusterAZs: ["us-east-1a", "us-east-1b"]
});

Define a ReplicationGroup with specific node group configurations to control the number of replicas per node group.

const customNodeGroupReplicationGroup = await AWS.ElastiCache.ReplicationGroup("customNodeGroupReplicationGroup", {
ReplicationGroupDescription: "Replication group with custom node group config",
ReplicationGroupId: "custom-node-group-replication-group",
CacheNodeType: "cache.r5.large",
Engine: "redis",
NodeGroupConfiguration: [{
NodeGroupId: "0001",
ReplicasPerNodeGroup: 2,
PrimaryAvailabilityZone: "us-west-2a",
ReplicaAvailabilityZones: ["us-west-2b", "us-west-2c"]
}],
AutomaticFailoverEnabled: true
});

These examples illustrate how to effectively manage AWS ElastiCache ReplicationGroups using Alchemy, enabling you to create scalable and resilient caching solutions.