Interface CfnClusterProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnClusterProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:42.686Z") @Stability(Stable) public interface CfnClusterProps extends software.amazon.jsii.JsiiSerializable
Properties for defining a CfnCluster.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.msk.*;
 CfnClusterProps cfnClusterProps = CfnClusterProps.builder()
         .brokerNodeGroupInfo(BrokerNodeGroupInfoProperty.builder()
                 .clientSubnets(List.of("clientSubnets"))
                 .instanceType("instanceType")
                 // the properties below are optional
                 .brokerAzDistribution("brokerAzDistribution")
                 .connectivityInfo(ConnectivityInfoProperty.builder()
                         .publicAccess(PublicAccessProperty.builder()
                                 .type("type")
                                 .build())
                         .vpcConnectivity(VpcConnectivityProperty.builder()
                                 .clientAuthentication(VpcConnectivityClientAuthenticationProperty.builder()
                                         .sasl(VpcConnectivitySaslProperty.builder()
                                                 .iam(VpcConnectivityIamProperty.builder()
                                                         .enabled(false)
                                                         .build())
                                                 .scram(VpcConnectivityScramProperty.builder()
                                                         .enabled(false)
                                                         .build())
                                                 .build())
                                         .tls(VpcConnectivityTlsProperty.builder()
                                                 .enabled(false)
                                                 .build())
                                         .build())
                                 .build())
                         .build())
                 .securityGroups(List.of("securityGroups"))
                 .storageInfo(StorageInfoProperty.builder()
                         .ebsStorageInfo(EBSStorageInfoProperty.builder()
                                 .provisionedThroughput(ProvisionedThroughputProperty.builder()
                                         .enabled(false)
                                         .volumeThroughput(123)
                                         .build())
                                 .volumeSize(123)
                                 .build())
                         .build())
                 .build())
         .clusterName("clusterName")
         .kafkaVersion("kafkaVersion")
         .numberOfBrokerNodes(123)
         // the properties below are optional
         .clientAuthentication(ClientAuthenticationProperty.builder()
                 .sasl(SaslProperty.builder()
                         .iam(IamProperty.builder()
                                 .enabled(false)
                                 .build())
                         .scram(ScramProperty.builder()
                                 .enabled(false)
                                 .build())
                         .build())
                 .tls(TlsProperty.builder()
                         .certificateAuthorityArnList(List.of("certificateAuthorityArnList"))
                         .enabled(false)
                         .build())
                 .unauthenticated(UnauthenticatedProperty.builder()
                         .enabled(false)
                         .build())
                 .build())
         .configurationInfo(ConfigurationInfoProperty.builder()
                 .arn("arn")
                 .revision(123)
                 .build())
         .currentVersion("currentVersion")
         .encryptionInfo(EncryptionInfoProperty.builder()
                 .encryptionAtRest(EncryptionAtRestProperty.builder()
                         .dataVolumeKmsKeyId("dataVolumeKmsKeyId")
                         .build())
                 .encryptionInTransit(EncryptionInTransitProperty.builder()
                         .clientBroker("clientBroker")
                         .inCluster(false)
                         .build())
                 .build())
         .enhancedMonitoring("enhancedMonitoring")
         .loggingInfo(LoggingInfoProperty.builder()
                 .brokerLogs(BrokerLogsProperty.builder()
                         .cloudWatchLogs(CloudWatchLogsProperty.builder()
                                 .enabled(false)
                                 // the properties below are optional
                                 .logGroup("logGroup")
                                 .build())
                         .firehose(FirehoseProperty.builder()
                                 .enabled(false)
                                 // the properties below are optional
                                 .deliveryStream("deliveryStream")
                                 .build())
                         .s3(S3Property.builder()
                                 .enabled(false)
                                 // the properties below are optional
                                 .bucket("bucket")
                                 .prefix("prefix")
                                 .build())
                         .build())
                 .build())
         .openMonitoring(OpenMonitoringProperty.builder()
                 .prometheus(PrometheusProperty.builder()
                         .jmxExporter(JmxExporterProperty.builder()
                                 .enabledInBroker(false)
                                 .build())
                         .nodeExporter(NodeExporterProperty.builder()
                                 .enabledInBroker(false)
                                 .build())
                         .build())
                 .build())
         .storageMode("storageMode")
         .tags(Map.of(
                 "tagsKey", "tags"))
         .build();
 
  • Method Details

    • getBrokerNodeGroupInfo

      @Stability(Stable) @NotNull Object getBrokerNodeGroupInfo()
      Information about the broker nodes in the cluster.
    • getClusterName

      @Stability(Stable) @NotNull String getClusterName()
      The name of the cluster.
    • getKafkaVersion

      @Stability(Stable) @NotNull String getKafkaVersion()
      The version of Apache Kafka.

      You can use Amazon MSK to create clusters that use Apache Kafka versions 1.1.1 and 2.2.1.

    • getNumberOfBrokerNodes

      @Stability(Stable) @NotNull Number getNumberOfBrokerNodes()
      The number of broker nodes in the cluster.
    • getClientAuthentication

      @Stability(Stable) @Nullable default Object getClientAuthentication()
      Includes all client authentication related information.
    • getConfigurationInfo

      @Stability(Stable) @Nullable default Object getConfigurationInfo()
      Represents the configuration that you want MSK to use for the cluster.
    • getCurrentVersion

      @Stability(Stable) @Nullable default String getCurrentVersion()
      The version of the cluster that you want to update.
    • getEncryptionInfo

      @Stability(Stable) @Nullable default Object getEncryptionInfo()
      Includes all encryption-related information.
    • getEnhancedMonitoring

      @Stability(Stable) @Nullable default String getEnhancedMonitoring()
      Specifies the level of monitoring for the MSK cluster.

      The possible values are DEFAULT , PER_BROKER , and PER_TOPIC_PER_BROKER .

    • getLoggingInfo

      @Stability(Stable) @Nullable default Object getLoggingInfo()
      Logging Info details.
    • getOpenMonitoring

      @Stability(Stable) @Nullable default Object getOpenMonitoring()
      The settings for open monitoring.
    • getStorageMode

      @Stability(Stable) @Nullable default String getStorageMode()
      This controls storage mode for supported storage tiers.
    • getTags

      @Stability(Stable) @Nullable default Map<String,String> getTags()
      Create tags when creating the cluster.
    • builder

      @Stability(Stable) static CfnClusterProps.Builder builder()
      Returns:
      a CfnClusterProps.Builder of CfnClusterProps