Skip to content
v2.274.0

CfnClusterProps Struct ​

Properties for defining a CfnCluster.

Example ​

ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_msk as msk } from 'aws-cdk-lib';
const cfnClusterProps: msk.CfnClusterProps = {
  brokerNodeGroupInfo: {
    clientSubnets: ['clientSubnets'],
    instanceType: 'instanceType',

    // the properties below are optional
    brokerAzDistribution: 'brokerAzDistribution',
    connectivityInfo: {
      networkType: 'networkType',
      publicAccess: {
        type: 'type',
      },
      vpcConnectivity: {
        clientAuthentication: {
          sasl: {
            iam: {
              enabled: false,
            },
            scram: {
              enabled: false,
            },
          },
          tls: {
            enabled: false,
          },
        },
      },
    },
    securityGroups: ['securityGroups'],
    storageInfo: {
      ebsStorageInfo: {
        provisionedThroughput: {
          enabled: false,
          volumeThroughput: 123,
        },
        volumeSize: 123,
      },
    },
  },
  clusterName: 'clusterName',
  kafkaVersion: 'kafkaVersion',
  numberOfBrokerNodes: 123,

  // the properties below are optional
  clientAuthentication: {
    sasl: {
      iam: {
        enabled: false,
      },
      scram: {
        enabled: false,
      },
    },
    tls: {
      certificateAuthorityArnList: ['certificateAuthorityArnList'],
      enabled: false,
    },
    unauthenticated: {
      enabled: false,
    },
  },
  configurationInfo: {
    arn: 'arn',
    revision: 123,
  },
  currentVersion: 'currentVersion',
  encryptionInfo: {
    encryptionAtRest: {
      dataVolumeKmsKeyId: 'dataVolumeKmsKeyId',
    },
    encryptionInTransit: {
      clientBroker: 'clientBroker',
      inCluster: false,
    },
  },
  enhancedMonitoring: 'enhancedMonitoring',
  loggingInfo: {
    brokerLogs: {
      cloudWatchLogs: {
        enabled: false,

        // the properties below are optional
        logGroup: 'logGroup',
      },
      firehose: {
        enabled: false,

        // the properties below are optional
        deliveryStream: 'deliveryStream',
      },
      s3: {
        enabled: false,

        // the properties below are optional
        bucket: 'bucket',
        prefix: 'prefix',
      },
    },

    // the properties below are optional
    authorizerLogs: {
      cloudWatchLogs: {
        enabled: false,

        // the properties below are optional
        logGroup: 'logGroup',
      },
      firehose: {
        enabled: false,

        // the properties below are optional
        deliveryStream: 'deliveryStream',
      },
      s3: {
        enabled: false,

        // the properties below are optional
        bucket: 'bucket',
        prefix: 'prefix',
      },
    },
  },
  openMonitoring: {
    prometheus: {
      jmxExporter: {
        enabledInBroker: false,
      },
      nodeExporter: {
        enabledInBroker: false,
      },
    },
  },
  rebalancing: {
    status: 'status',
  },
  storageMode: 'storageMode',
  tags: {
    tagsKey: 'tags',
  },
  zookeeperAccess: {
    enabled: false,
  },
};

Properties ​

brokerNodeGroupInfoIResolvable | CfnCluster.BrokerNodeGroupInfoPropertybroker_node_group_infotyping.Union[IResolvable, BrokerNodeGroupInfoProperty]brokerNodeGroupInfoIResolvableBrokerNodeGroupInfoIResolvableBrokerNodeGroupInfointerface{}required#
Information about the broker nodes in the cluster.
clientAuthenticationIResolvable | CfnCluster.ClientAuthenticationPropertyclient_authenticationtyping.Union[IResolvable, ClientAuthenticationProperty]clientAuthenticationIResolvableClientAuthenticationIResolvableClientAuthenticationinterface{}#
Includes all client authentication related information.
clusterNamestringcluster_namestrclusterNameStringClusterNamestringClusterName*stringrequired#
The name of the cluster.
configurationInfoIResolvable | CfnCluster.ConfigurationInfoPropertyconfiguration_infotyping.Union[IResolvable, ConfigurationInfoProperty]configurationInfoIResolvableConfigurationInfoIResolvableConfigurationInfointerface{}#
Represents the configuration that you want MSK to use for the cluster.
currentVersionstringcurrent_versionstrcurrentVersionStringCurrentVersionstringCurrentVersion*string#
encryptionInfoIResolvable | CfnCluster.EncryptionInfoPropertyencryption_infotyping.Union[IResolvable, EncryptionInfoProperty]encryptionInfoIResolvableEncryptionInfoIResolvableEncryptionInfointerface{}#
Includes all encryption-related information.
enhancedMonitoringstringenhanced_monitoringstrenhancedMonitoringStringEnhancedMonitoringstringEnhancedMonitoring*string#
Specifies the level of monitoring for the MSK cluster.
kafkaVersionstringkafka_versionstrkafkaVersionStringKafkaVersionstringKafkaVersion*stringrequired#
The version of Apache Kafka.

You can use Amazon MSK to create clusters that use supported Apache Kafka versions .

loggingInfoIResolvable | CfnCluster.LoggingInfoPropertylogging_infotyping.Union[IResolvable, LoggingInfoProperty]loggingInfoIResolvableLoggingInfoIResolvableLoggingInfointerface{}#
Logging info details for the cluster.
numberOfBrokerNodesnumbernumber_of_broker_nodesint | floatnumberOfBrokerNodesNumberNumberOfBrokerNodesdoubleNumberOfBrokerNodes*float64required#
The number of broker nodes in the cluster.
openMonitoringIResolvable | CfnCluster.OpenMonitoringPropertyopen_monitoringtyping.Union[IResolvable, OpenMonitoringProperty]openMonitoringIResolvableOpenMonitoringIResolvableOpenMonitoringinterface{}#
The settings for open monitoring.
rebalancingIResolvable | CfnCluster.RebalancingPropertyrebalancingtyping.Union[IResolvable, RebalancingProperty]rebalancingIResolvableRebalancingIResolvableRebalancinginterface{}#
storageModestringstorage_modestrstorageModeStringStorageModestringStorageMode*string#
This controls storage mode for supported storage tiers.
tags{ [key: string]: string }tagstyping.Mapping[str, str]tagsMap<String, String>TagsIDictionary<string, string>Tags*map[string]*string#
An arbitrary set of tags (key-value pairs) for the cluster.
zookeeperAccessIResolvable | CfnCluster.ZookeeperAccessPropertyzookeeper_accesstyping.Union[IResolvable, ZookeeperAccessProperty]zookeeperAccessIResolvableZookeeperAccessIResolvableZookeeperAccessinterface{}#