Skip to main content

clusters

Creates, updates, deletes or gets a cluster resource or lists clusters in a region

Overview

Nameclusters
TypeResource
DescriptionResource Type definition for AWS::MSK::Cluster
Idawscc.msk.clusters

Fields

NameDatatypeDescription
broker_node_group_infoobject
enhanced_monitoringstring
kafka_versionstring
number_of_broker_nodesinteger
encryption_infoobject
open_monitoringobject
cluster_namestring
arnstring
current_versionstringThe current version of the MSK cluster
client_authenticationobject
logging_infoobject
tagsobjectA key-value pair to associate with a resource.
configuration_infoobject
storage_modestring
regionstringAWS region.

For more information, see AWS::MSK::Cluster.

Methods

NameResourceAccessible byRequired Params
create_resourceclustersINSERTBrokerNodeGroupInfo, KafkaVersion, NumberOfBrokerNodes, ClusterName, region
delete_resourceclustersDELETEIdentifier, region
update_resourceclustersUPDATEIdentifier, PatchDocument, region
list_resourcesclusters_list_onlySELECTregion
get_resourceclustersSELECTIdentifier, region

SELECT examples

Gets all properties from an individual cluster.

SELECT
region,
broker_node_group_info,
enhanced_monitoring,
kafka_version,
number_of_broker_nodes,
encryption_info,
open_monitoring,
cluster_name,
arn,
current_version,
client_authentication,
logging_info,
tags,
configuration_info,
storage_mode
FROM awscc.msk.clusters
WHERE
region = 'us-east-1' AND
Identifier = '{{ arn }}';

INSERT example

Use the following StackQL query and manifest file to create a new cluster resource, using stack-deploy.

/*+ create */
INSERT INTO awscc.msk.clusters (
BrokerNodeGroupInfo,
KafkaVersion,
NumberOfBrokerNodes,
ClusterName,
region
)
SELECT
'{{ broker_node_group_info }}',
'{{ kafka_version }}',
'{{ number_of_broker_nodes }}',
'{{ cluster_name }}',
'{{ region }}';

UPDATE example

Use the following StackQL query and manifest file to update a cluster resource, using stack-deploy.

/*+ update */
UPDATE awscc.msk.clusters
SET PatchDocument = string('{{ {
"EnhancedMonitoring": enhanced_monitoring,
"KafkaVersion": kafka_version,
"NumberOfBrokerNodes": number_of_broker_nodes,
"OpenMonitoring": open_monitoring,
"CurrentVersion": current_version,
"ClientAuthentication": client_authentication,
"LoggingInfo": logging_info,
"Tags": tags,
"ConfigurationInfo": configuration_info,
"StorageMode": storage_mode
} | generate_patch_document }}')
WHERE
region = '{{ region }}' AND
Identifier = '{{ arn }}';

DELETE example

/*+ delete */
DELETE FROM awscc.msk.clusters
WHERE
Identifier = '{{ arn }}' AND
region = 'us-east-1';

Permissions

To operate on the clusters resource, the following permissions are required:

ec2:DescribeSecurityGroups,
ec2:DescribeSubnets,
ec2:DescribeVpcs,
iam:AttachRolePolicy,
iam:CreateServiceLinkedRole,
iam:PutRolePolicy,
kms:CreateGrant,
kms:DescribeKey,
kafka:CreateCluster,
kafka:DescribeCluster,
kafka:TagResource,
logs:CreateLogDelivery,
logs:GetLogDelivery,
logs:UpdateLogDelivery,
logs:DeleteLogDelivery,
logs:ListLogDeliveries,
s3:GetBucketPolicy,
s3:PutBucketPolicy,
logs:PutResourcePolicy,
logs:DescribeResourcePolicies,
logs:DescribeLogGroups,
firehose:TagDeliveryStream,
acm-pca:GetCertificateAuthorityCertificate