/AWS1/IF_KFK=>CREATECLUSTER()¶
About CreateCluster¶
Creates a new MSK cluster.
Method Signature¶
METHODS /AWS1/IF_KFK~CREATECLUSTER
  IMPORTING
    !IO_BROKERNODEGROUPINFO TYPE REF TO /AWS1/CL_KFKBROKERNODEGRPINFO OPTIONAL
    !IO_CLIENTAUTHENTICATION TYPE REF TO /AWS1/CL_KFKCLIENTAUTHNTCTN OPTIONAL
    !IV_CLUSTERNAME TYPE /AWS1/KFK__STRINGMIN1MAX64 OPTIONAL
    !IO_CONFIGURATIONINFO TYPE REF TO /AWS1/CL_KFKCONFIGURATIONINFO OPTIONAL
    !IO_ENCRYPTIONINFO TYPE REF TO /AWS1/CL_KFKENCRYPTIONINFO OPTIONAL
    !IV_ENHANCEDMONITORING TYPE /AWS1/KFKENHANCEDMONITORING OPTIONAL
    !IO_OPENMONITORING TYPE REF TO /AWS1/CL_KFKOPENMONITORINGINFO OPTIONAL
    !IV_KAFKAVERSION TYPE /AWS1/KFK__STRINGMIN1MAX128 OPTIONAL
    !IO_LOGGINGINFO TYPE REF TO /AWS1/CL_KFKLOGGINGINFO OPTIONAL
    !IV_NUMBEROFBROKERNODES TYPE /AWS1/KFK__INTEGERMIN1MAX15 OPTIONAL
    !IT_TAGS TYPE /AWS1/CL_KFK__MAPOF__STRING_W=>TT___MAPOF__STRING OPTIONAL
    !IV_STORAGEMODE TYPE /AWS1/KFKSTORAGEMODE OPTIONAL
  RETURNING
    VALUE(OO_OUTPUT) TYPE REF TO /aws1/cl_kfkcreateclusterrsp
  RAISING
    /AWS1/CX_KFKBADREQUESTEX
    /AWS1/CX_KFKCONFLICTEXCEPTION
    /AWS1/CX_KFKFORBIDDENEXCEPTION
    /AWS1/CX_KFKINTERNALSERVERER00
    /AWS1/CX_KFKSERVICEUNAVAILEX
    /AWS1/CX_KFKTOOMANYREQUESTSEX
    /AWS1/CX_KFKUNAUTHORIZEDEX
    /AWS1/CX_KFKCLIENTEXC
    /AWS1/CX_KFKSERVEREXC
    /AWS1/CX_RT_TECHNICAL_GENERIC
    /AWS1/CX_RT_SERVICE_GENERIC.
IMPORTING¶
Required arguments:¶
io_brokernodegroupinfo TYPE REF TO /AWS1/CL_KFKBROKERNODEGRPINFO /AWS1/CL_KFKBROKERNODEGRPINFO¶
Information about the broker nodes in the cluster.
iv_clustername TYPE /AWS1/KFK__STRINGMIN1MAX64 /AWS1/KFK__STRINGMIN1MAX64¶
The name of the cluster.
iv_kafkaversion TYPE /AWS1/KFK__STRINGMIN1MAX128 /AWS1/KFK__STRINGMIN1MAX128¶
The version of Apache Kafka.
iv_numberofbrokernodes TYPE /AWS1/KFK__INTEGERMIN1MAX15 /AWS1/KFK__INTEGERMIN1MAX15¶
The number of broker nodes in the cluster.
Optional arguments:¶
io_clientauthentication TYPE REF TO /AWS1/CL_KFKCLIENTAUTHNTCTN /AWS1/CL_KFKCLIENTAUTHNTCTN¶
Includes all client authentication related information.
io_configurationinfo TYPE REF TO /AWS1/CL_KFKCONFIGURATIONINFO /AWS1/CL_KFKCONFIGURATIONINFO¶
Represents the configuration that you want MSK to use for the brokers in a cluster.
io_encryptioninfo TYPE REF TO /AWS1/CL_KFKENCRYPTIONINFO /AWS1/CL_KFKENCRYPTIONINFO¶
Includes all encryption-related information.
iv_enhancedmonitoring TYPE /AWS1/KFKENHANCEDMONITORING /AWS1/KFKENHANCEDMONITORING¶
Specifies the level of monitoring for the MSK cluster. The possible values are DEFAULT, PER_BROKER, PER_TOPIC_PER_BROKER, and PER_TOPIC_PER_PARTITION.
io_openmonitoring TYPE REF TO /AWS1/CL_KFKOPENMONITORINGINFO /AWS1/CL_KFKOPENMONITORINGINFO¶
The settings for open monitoring.
io_logginginfo TYPE REF TO /AWS1/CL_KFKLOGGINGINFO /AWS1/CL_KFKLOGGINGINFO¶
LoggingInfo
it_tags TYPE /AWS1/CL_KFK__MAPOF__STRING_W=>TT___MAPOF__STRING TT___MAPOF__STRING¶
Create tags when creating the cluster.
iv_storagemode TYPE /AWS1/KFKSTORAGEMODE /AWS1/KFKSTORAGEMODE¶
This controls storage mode for supported storage tiers.
RETURNING¶
oo_output TYPE REF TO /aws1/cl_kfkcreateclusterrsp /AWS1/CL_KFKCREATECLUSTERRSP¶
Domain /AWS1/RT_ACCOUNT_ID Primitive Type NUMC 
Examples¶
Syntax Example¶
This is an example of the syntax for calling the method. It includes every possible argument and initializes every possible value. The data provided is not necessarily semantically accurate (for example the value "string" may be provided for something that is intended to be an instance ID, or in some cases two arguments may be mutually exclusive). The syntax shows the ABAP syntax for creating the various data structures.
DATA(lo_result) = lo_client->createcluster(
  io_brokernodegroupinfo = new /aws1/cl_kfkbrokernodegrpinfo(
    io_connectivityinfo = new /aws1/cl_kfkconnectivityinfo(
      io_publicaccess = new /aws1/cl_kfkpublicaccess( |string| )
      io_vpcconnectivity = new /aws1/cl_kfkvpcconnectivity(
        io_clientauthentication = new /aws1/cl_kfkvpccvyclientauthn(
          io_sasl = new /aws1/cl_kfkvpccnnctvysasl(
            io_iam = new /aws1/cl_kfkvpcconnectivityiam( ABAP_TRUE )
            io_scram = new /aws1/cl_kfkvpccnnctvyscram( ABAP_TRUE )
          )
          io_tls = new /aws1/cl_kfkvpcconnectivitytls( ABAP_TRUE )
        )
      )
    )
    io_storageinfo = new /aws1/cl_kfkstorageinfo(
      io_ebsstorageinfo = new /aws1/cl_kfkebsstorageinfo(
        io_provisionedthroughput = new /aws1/cl_kfkprovthroughput(
          iv_enabled = ABAP_TRUE
          iv_volumethroughput = 123
        )
        iv_volumesize = 123
      )
    )
    it_clientsubnets = VALUE /aws1/cl_kfk__listof__string_w=>tt___listof__string(
      ( new /aws1/cl_kfk__listof__string_w( |string| ) )
    )
    it_securitygroups = VALUE /aws1/cl_kfk__listof__string_w=>tt___listof__string(
      ( new /aws1/cl_kfk__listof__string_w( |string| ) )
    )
    it_zoneids = VALUE /aws1/cl_kfk__listof__string_w=>tt___listof__string(
      ( new /aws1/cl_kfk__listof__string_w( |string| ) )
    )
    iv_brokerazdistribution = |string|
    iv_instancetype = |string|
  )
  io_clientauthentication = new /aws1/cl_kfkclientauthntctn(
    io_sasl = new /aws1/cl_kfksasl(
      io_iam = new /aws1/cl_kfkiam( ABAP_TRUE )
      io_scram = new /aws1/cl_kfkscram( ABAP_TRUE )
    )
    io_tls = new /aws1/cl_kfktls(
      it_certauthorityarnlist = VALUE /aws1/cl_kfk__listof__string_w=>tt___listof__string(
        ( new /aws1/cl_kfk__listof__string_w( |string| ) )
      )
      iv_enabled = ABAP_TRUE
    )
    io_unauthenticated = new /aws1/cl_kfkunauthenticated( ABAP_TRUE )
  )
  io_configurationinfo = new /aws1/cl_kfkconfigurationinfo(
    iv_arn = |string|
    iv_revision = 123
  )
  io_encryptioninfo = new /aws1/cl_kfkencryptioninfo(
    io_encryptionatrest = new /aws1/cl_kfkencryptionatrest( |string| )
    io_encryptionintransit = new /aws1/cl_kfkencintransit(
      iv_clientbroker = |string|
      iv_incluster = ABAP_TRUE
    )
  )
  io_logginginfo = new /aws1/cl_kfklogginginfo(
    io_brokerlogs = new /aws1/cl_kfkbrokerlogs(
      io_cloudwatchlogs = new /aws1/cl_kfkcloudwatchlogs(
        iv_enabled = ABAP_TRUE
        iv_loggroup = |string|
      )
      io_firehose = new /aws1/cl_kfkfirehose(
        iv_deliverystream = |string|
        iv_enabled = ABAP_TRUE
      )
      io_s3 = new /aws1/cl_kfks3(
        iv_bucket = |string|
        iv_enabled = ABAP_TRUE
        iv_prefix = |string|
      )
    )
  )
  io_openmonitoring = new /aws1/cl_kfkopenmonitoringinfo(
    io_prometheus = new /aws1/cl_kfkprometheusinfo(
      io_jmxexporter = new /aws1/cl_kfkjmxexporterinfo( ABAP_TRUE )
      io_nodeexporter = new /aws1/cl_kfknodeexporterinfo( ABAP_TRUE )
    )
  )
  it_tags = VALUE /aws1/cl_kfk__mapof__string_w=>tt___mapof__string(
    (
      VALUE /aws1/cl_kfk__mapof__string_w=>ts___mapof__string_maprow(
        key = |string|
        value = new /aws1/cl_kfk__mapof__string_w( |string| )
      )
    )
  )
  iv_clustername = |string|
  iv_enhancedmonitoring = |string|
  iv_kafkaversion = |string|
  iv_numberofbrokernodes = 123
  iv_storagemode = |string|
).
This is an example of reading all possible response values
lo_result = lo_result.
IF lo_result IS NOT INITIAL.
  lv___string = lo_result->get_clusterarn( ).
  lv___string = lo_result->get_clustername( ).
  lv_clusterstate = lo_result->get_state( ).
ENDIF.