Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions packages/@aws-cdk/aws-msk-alpha/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ The following example creates an MSK Cluster.
declare const vpc: ec2.Vpc;
const cluster = new msk.Cluster(this, 'Cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_8_X,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
});
```
Expand All @@ -36,7 +36,7 @@ To control who can access the Cluster, use the `.connections` attribute. For a l
declare const vpc: ec2.Vpc;
const cluster = new msk.Cluster(this, 'Cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_8_X,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
});

Expand Down Expand Up @@ -88,7 +88,7 @@ import * as acmpca from 'aws-cdk-lib/aws-acmpca';
declare const vpc: ec2.Vpc;
const cluster = new msk.Cluster(this, 'Cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_8_X,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
encryptionInTransit: {
clientBroker: msk.ClientBrokerEncryption.TLS,
Expand All @@ -113,7 +113,7 @@ Enable client authentication with [SASL/SCRAM](https://docs.aws.amazon.com/msk/l
declare const vpc: ec2.Vpc;
const cluster = new msk.Cluster(this, 'cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_8_X,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
encryptionInTransit: {
clientBroker: msk.ClientBrokerEncryption.TLS,
Expand All @@ -132,7 +132,7 @@ Enable client authentication with [IAM](https://docs.aws.amazon.com/msk/latest/d
declare const vpc: ec2.Vpc;
const cluster = new msk.Cluster(this, 'cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_8_X,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
encryptionInTransit: {
clientBroker: msk.ClientBrokerEncryption.TLS,
Expand All @@ -155,7 +155,7 @@ import * as acmpca from 'aws-cdk-lib/aws-acmpca';
declare const vpc: ec2.Vpc;
const cluster = new msk.Cluster(this, 'Cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_8_X,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
encryptionInTransit: {
clientBroker: msk.ClientBrokerEncryption.TLS,
Expand Down Expand Up @@ -186,7 +186,7 @@ declare const vpc: ec2.Vpc;
declare const bucket: s3.IBucket;
const cluster = new msk.Cluster(this, 'cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_8_X,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
logging: {
s3: {
Expand Down Expand Up @@ -226,7 +226,7 @@ declare const bucket: s3.IBucket;

const cluster = new msk.Cluster(this, 'cluster', {
clusterName: 'myCluster',
kafkaVersion: msk.KafkaVersion.V3_6_0,
kafkaVersion: msk.KafkaVersion.V3_9_X,
vpc,
storageMode: msk.StorageMode.TIERED,
});
Expand Down
14 changes: 14 additions & 0 deletions packages/@aws-cdk/aws-msk-alpha/lib/cluster-version.ts
Original file line number Diff line number Diff line change
Expand Up @@ -210,6 +210,20 @@ export class KafkaVersion {
* @see https://docs.aws.amazon.com/msk/latest/developerguide/metadata-management.html#kraft-intro
*/
public static readonly V3_8_X_KRAFT = KafkaVersion.of('3.8.x.kraft', { tieredStorage: true });

/**
* Kafka version 3.9.x with ZooKeeper metadata mode support
*
* @see https://docs.aws.amazon.com/msk/latest/developerguide/metadata-management.html#msk-get-connection-string
*/
public static readonly V3_9_X = KafkaVersion.of('3.9.x', { tieredStorage: true });

/**
* Kafka version 3.9.x with KRaft (Apache Kafka Raft) metadata mode support
*
* @see https://docs.aws.amazon.com/msk/latest/developerguide/metadata-management.html#kraft-intro
*/
public static readonly V3_9_X_KRAFT = KafkaVersion.of('3.9.x.kraft', { tieredStorage: true });
/**
* Custom cluster version
* @param version custom version number
Expand Down
3 changes: 2 additions & 1 deletion packages/@aws-cdk/aws-msk-alpha/test/cluster.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,8 @@ describe('MSK Cluster', () => {
[msk.KafkaVersion.V3_7_X_KRAFT, '3.7.x.kraft'],
[msk.KafkaVersion.V3_8_X, '3.8.x'],
[msk.KafkaVersion.V3_8_X_KRAFT, '3.8.x.kraft'],
[msk.KafkaVersion.V3_9_X, '3.9.x'],
[msk.KafkaVersion.V3_9_X_KRAFT, '3.9.x.kraft'],
],
)('created with expected Kafka version %j', (parameter, result) => {
new msk.Cluster(stack, 'Cluster', {
Expand Down Expand Up @@ -978,4 +980,3 @@ describe('MSK Cluster', () => {
});
});
});

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
Expand Up @@ -1839,6 +1839,144 @@
},
"UpdateReplacePolicy": "Delete",
"DeletionPolicy": "Delete"
},
"ClusterVersion39xSecurityGroupEEB562CB": {
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "MSK security group",
"SecurityGroupEgress": [
{
"CidrIp": "0.0.0.0/0",
"Description": "Allow all outbound traffic by default",
"IpProtocol": "-1"
}
],
"VpcId": {
"Ref": "Vpc8378EB38"
}
}
},
"ClusterVersion39x27DE3BBA": {
"Type": "AWS::MSK::Cluster",
"Properties": {
"BrokerNodeGroupInfo": {
"ClientSubnets": [
{
"Ref": "VpcPrivateSubnet1Subnet536B997A"
},
{
"Ref": "VpcPrivateSubnet2Subnet3788AAA1"
}
],
"InstanceType": "kafka.m5.large",
"SecurityGroups": [
{
"Fn::GetAtt": [
"ClusterVersion39xSecurityGroupEEB562CB",
"GroupId"
]
}
],
"StorageInfo": {
"EBSStorageInfo": {
"VolumeSize": 1000
}
}
},
"ClusterName": "cluster-v3-9-x",
"EncryptionInfo": {
"EncryptionInTransit": {
"ClientBroker": "TLS",
"InCluster": true
}
},
"KafkaVersion": "3.9.x",
"LoggingInfo": {
"BrokerLogs": {
"CloudWatchLogs": {
"Enabled": false
},
"Firehose": {
"Enabled": false
},
"S3": {
"Enabled": false
}
}
},
"NumberOfBrokerNodes": 2
},
"UpdateReplacePolicy": "Delete",
"DeletionPolicy": "Delete"
},
"ClusterVersion39xkraftSecurityGroupA2700FB1": {
"Type": "AWS::EC2::SecurityGroup",
"Properties": {
"GroupDescription": "MSK security group",
"SecurityGroupEgress": [
{
"CidrIp": "0.0.0.0/0",
"Description": "Allow all outbound traffic by default",
"IpProtocol": "-1"
}
],
"VpcId": {
"Ref": "Vpc8378EB38"
}
}
},
"ClusterVersion39xkraft96CD852C": {
"Type": "AWS::MSK::Cluster",
"Properties": {
"BrokerNodeGroupInfo": {
"ClientSubnets": [
{
"Ref": "VpcPrivateSubnet1Subnet536B997A"
},
{
"Ref": "VpcPrivateSubnet2Subnet3788AAA1"
}
],
"InstanceType": "kafka.m5.large",
"SecurityGroups": [
{
"Fn::GetAtt": [
"ClusterVersion39xkraftSecurityGroupA2700FB1",
"GroupId"
]
}
],
"StorageInfo": {
"EBSStorageInfo": {
"VolumeSize": 1000
}
}
},
"ClusterName": "cluster-v3-9-x-kraft",
"EncryptionInfo": {
"EncryptionInTransit": {
"ClientBroker": "TLS",
"InCluster": true
}
},
"KafkaVersion": "3.9.x.kraft",
"LoggingInfo": {
"BrokerLogs": {
"CloudWatchLogs": {
"Enabled": false
},
"Firehose": {
"Enabled": false
},
"S3": {
"Enabled": false
}
}
},
"NumberOfBrokerNodes": 2
},
"UpdateReplacePolicy": "Delete",
"DeletionPolicy": "Delete"
}
},
"Parameters": {
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading