> For the complete documentation index, see llms.txt.
Skip to main content

Check out Port for yourself ➜ 

Amazon Managed Streaming for Apache Kafka (MSK)

AWS::MSK::Cluster

The following example demonstrates how to ingest your AWS MSK clusters to Port.

MSK Cluster supported actions

The table below summarizes the available actions for ingesting Amazon MSK Cluster resources in Port:

ActionDescriptionTypeRequired AWS Permission
ListClustersActionDiscover MSK clusters and retrieve detailed configuration data.Defaultkafka:ListClusters

You can use the following Port blueprint definitions and integration configuration:

MSK Cluster blueprint (click to expand)
[
{
"identifier": "mskCluster",
"title": "MSK Cluster",
"icon": "AWS",
"schema": {
"properties": {
"clusterArn": {
"type": "string",
"title": "ARN",
"description": "The Amazon Resource Name (ARN) of the MSK cluster"
},
"state": {
"type": "string",
"title": "State",
"description": "The current state of the cluster",
"enum": [
"ACTIVE",
"CREATING",
"DELETING",
"FAILED",
"HEALING",
"MAINTENANCE",
"REBOOTING_BROKER",
"UPDATING"
]
},
"kafkaVersion": {
"type": "string",
"title": "Kafka Version",
"description": "The version of Apache Kafka"
},
"numberOfBrokerNodes": {
"type": "number",
"title": "Number of Broker Nodes",
"description": "The number of broker nodes in the cluster"
},
"instanceType": {
"type": "string",
"title": "Instance Type",
"description": "The type of broker instances"
},
"enhancedMonitoring": {
"type": "string",
"title": "Enhanced Monitoring",
"description": "The level of enhanced monitoring"
},
"clientAuthentication": {
"type": "object",
"title": "Client Authentication",
"description": "Client authentication settings (IAM, SASL, TLS)"
},
"encryptionInTransit": {
"type": "string",
"title": "Encryption In Transit",
"description": "Encryption setting for data in transit between clients and brokers"
},
"creationTime": {
"type": "string",
"title": "Creation Time",
"description": "The time when the cluster was created",
"format": "date-time"
},
"tags": {
"type": "object",
"title": "Tags",
"description": "Tags associated with the cluster"
}
},
"required": []
},
"calculationProperties": {},
"relations": {
"account": {
"title": "Account",
"target": "awsAccount",
"required": false,
"many": false
}
}
}
]
MSK Cluster mapping configuration (click to expand)
resources:
- kind: AWS::MSK::Cluster
selector:
query: 'true'
port:
entity:
mappings:
identifier: .Properties.ClusterArn
title: .Properties.ClusterName
blueprint: '"mskCluster"'
properties:
clusterArn: .Properties.ClusterArn
state: .Properties.State
kafkaVersion: .Properties.CurrentBrokerSoftwareInfo.KafkaVersion
numberOfBrokerNodes: .Properties.NumberOfBrokerNodes
instanceType: .Properties.BrokerNodeGroupInfo.InstanceType
enhancedMonitoring: .Properties.EnhancedMonitoring
clientAuthentication: .Properties.ClientAuthentication
encryptionInTransit: .Properties.EncryptionInfo.EncryptionInTransit.ClientBroker
creationTime: .Properties.CreationTime
tags: .Properties.Tags
relations:
account: .__ExtraContext.AccountId

For more details about MSK cluster properties, refer to the AWS MSK API documentation.