すべてのプロダクト
Search
ドキュメントセンター

Resource Orchestration Service:ALIYUN::KAFKA::Instance

最終更新日:Apr 23, 2025

ALIYUN::KAFKA::Instance は、ApsaraMQ for Kafka インスタンスを作成するために使用されます。

構文

{
  "Type": "ALIYUN::KAFKA::Instance",
  "Properties": {
    "DeployType": Integer,
    "DiskType": String,
    "DeployOption": Map,
    "EipMax": Integer,
    "SpecType": String,
    "IoMax": Integer,
    "IoMaxSpec": String,
    "DiskSize": Integer,
    "TopicQuota": Integer,
    "PayType": String,
    "Tags": List,
    "DeletionForce": Boolean,
    "OpenConnector": Boolean,
    "PartitionNum": Integer,
    "ServerlessConfig": Map
  }
}

プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

DeployType

Integer

はい

いいえ

デプロイメントタイプ。

有効な値:

  • 4: インターネット接続および VPC 接続インスタンスをデプロイします。

  • 5: VPC 接続インスタンスをデプロイします。

DiskType

String

いいえ

いいえ

ディスクのカテゴリ。

有効な値:

  • 0: Ultra ディスク

  • 1: 標準 SSD

DeployOption

Map

いいえ

いいえ

デプロイオプションの詳細。

詳細については、「DeployOption プロパティ」をご参照ください。

EipMax

Integer

いいえ

はい

インターネットトラフィック。

DeployType が 4 に設定されている場合は、このプロパティを指定する必要があります。

有効な値: 1 ~ 160。

SpecType

String

いいえ

はい

エディション。

有効な値:

  • normal: Standard Edition (High Write)

  • professional: Professional Edition (High Write)

  • professionalForHighRead: Professional Edition (High Read)

IoMax

Integer

いいえ

はい

ピークトラフィック。

IoMax プロパティと IoMaxSpec プロパティのいずれかを指定する必要があります。両方のプロパティを指定した場合、IoMaxSpec プロパティが優先されます。 IoMaxSpec プロパティのみを指定することをお勧めします。

詳細については、「課金概要」をご参照ください。

IoMaxSpec

String

いいえ

はい

トラフィック仕様。

IoMax プロパティと IoMaxSpec プロパティのいずれかを指定する必要があります。両方のプロパティを指定した場合、IoMaxSpec プロパティが優先されます。 IoMaxSpec プロパティのみを指定することをお勧めします。

詳細については、「課金概要」をご参照ください。

DiskSize

Integer

いいえ

はい

ディスクサイズ。

有効な値: 500 ~ 96000。

単位: GB。

TopicQuota

Integer

いいえ

はい

トピックの数。

有効な値: 50 ~ 79。

PayType

String

いいえ

いいえ

課金方法。

有効な値:

  • Hour: 従量課金

  • Month: サブスクリプション

Tags

List

いいえ

はい

タグ。

最大 20 個のタグを追加できます。

詳細については、「Tags プロパティ」をご参照ください。

DeletionForce

Boolean

いいえ

はい

インスタンスを強制的に削除するかどうかを指定します。

有効な値:

  • true

  • false (デフォルト)

OpenConnector

Boolean

いいえ

いいえ

コネクタ機能を有効にするかどうかを指定します。

有効な値:

  • true

  • false (デフォルト)

説明

コネクタの詳細については、「概要」をご参照ください。

PartitionNum

Integer

いいえ

はい

パーティションの数。

次のルールが適用されます。

  • PartitionNum プロパティと TopicQuota プロパティのいずれかを指定する必要があります。 PartitionNum プロパティのみを指定することをお勧めします。

  • 両方のプロパティを指定した場合、トピックベースの販売モデルを使用して、PartitionNum 値が TopicQuota 値と同じかどうかがチェックされます。値が異なる場合、エラー応答が返されます。値が同じ場合、PartitionNum 値に基づいて注文が行われます。

詳細については、「課金概要」をご参照ください。

ServerlessConfig

Map

いいえ

はい

サーバーレスインスタンスのパラメータ。

サーバーレス ApsaraMQ for Kafka V3 インスタンスを作成する場合は、このプロパティを指定する必要があります。詳細については、このトピックの「ServerlessConfig プロパティ」セクションをご参照ください。

Tags 構文

"Tags": [
  {
    "Key": String,
    "Value": String
  }
]  

Tags プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

Key

String

はい

いいえ

タグキー。

タグキーの長さは 1 ~ 128 文字で、http:// または https:// を含めることはできません。 aliyun または acs: で始めることはできません。

Value

String

いいえ

いいえ

タグ値。

タグ値の長さは最大 128 文字で、http:// または https:// を含めることはできません。 aliyun または acs: で始めることはできません。

DeployOption 構文

"DeployOption": {
  "IsEipInner": Boolean,
  "VpcId": String,
  "ZoneId": String,
  "VSwitchId": String,
  "SecurityGroup": String,
  "DeployModule": String,
  "Name": String,
  "IsSetUserAndPassword": Boolean,
  "Username": String,
  "Password": String,
  "ServiceVersion": String,
  "Config": Map,
  "Notifier": String,
  "CrossZone": Boolean,
  "UserPhoneNum": String,
  "SelectedZones": List,
  "VSwitchIds": List,
  "KMSKeyId": String,
  "IsForceSelectedZones": Boolean
}

DeployOption プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

IsEipInner

Boolean

いいえ

いいえ

インスタンスが Elastic IP アドレス (EIP) をサポートするかどうかを指定します。

有効な値:

  • true

  • false (デフォルト)

このプロパティの値は、インスタンスのタイプと一致する必要があります。インターネット接続および VPC 接続インスタンスの有効な値は true です。 VPC 接続インスタンスの有効な値は false です。

DeployModule

String

はい

いいえ

デプロイモード。

有効な値:

  • vpc: VPC 接続インスタンスをデプロイします。

  • eip: インターネット接続および VPC 接続インスタンスをデプロイします。

VpcId

String

いいえ

いいえ

インスタンスをデプロイする VPC の ID。

なし。

ZoneId

String

いいえ

いいえ

インスタンスをデプロイするゾーンの ID。

なし。

VSwitchId

String

はい

いいえ

デプロイするインスタンスが接続されている vSwitch の ID。

なし。

SecurityGroup

String

いいえ

いいえ

インスタンスが属するセキュリティグループ。

このプロパティを空のままにすると、ApsaraMQ for Kafka はインスタンスのセキュリティグループを自動的に構成します。

Name

String

いいえ

いいえ

インスタンス名。

なし。

IsSetUserAndPassword

Boolean

いいえ

いいえ

新しいユーザー名とパスワードを構成するかどうかを指定します。

インターネット接続および VPC 接続インスタンスのみがサポートされています。有効な値:

  • true

  • false (デフォルト)

Username

String

いいえ

いいえ

ユーザー名。

インターネット接続および VPC 接続インスタンスのみがサポートされています。

ユーザー名の長さは 8 ~ 40 文字で、文字と数字を含めることができます。

Password

String

いいえ

いいえ

ユーザー名に対応するパスワード。

インターネット接続および VPC 接続インスタンスのみがサポートされています。

パスワードの長さは 8 ~ 40 文字で、小文字、大文字、および数字を含める必要があります。

ServiceVersion

String

いいえ

いいえ

デプロイするインスタンスのバージョン。

有効な値:

  • 0.10.2

  • 2.2.0

Config

Map

いいえ

いいえ

デプロイするインスタンスの初期構成。

値は有効な JSON 文字列である必要があります。このプロパティの値には、次のフィールドが含まれます。

  • enable.vpc_sasl_ssl: VPC 伝送暗号化を有効にするかどうかを指定します。有効な値:

    • true: VPC 伝送暗号化を有効にします。 VPC 伝送暗号化を有効にする場合は、アクセス制御リスト (ACL) 機能を有効にする必要があります。

    • false (デフォルト): VPC 伝送暗号化を無効にします。

  • enable.acl: ACL 機能を有効にするかどうかを指定します。有効な値:

    • true

    • false (デフォルト)

  • kafka.log.retention.hours: ディスク容量が十分な場合のメッセージの最大保存期間。

    有効な値: 24 ~ 480。

    デフォルト値: 72。

    単位: 時間。

    説明

    ディスク使用率が 85% に達すると、システムはディスク容量が不足していると見なします。この場合、システムはメッセージを保存された順に、最も古いものから最も新しいものへと削除します。これにより、サービスの可用性が確保されます。

  • kafka.message.max.bytes: ApsaraMQ for Kafka が送受信できるメッセージの最大サイズ。

    有効な値: 1048576 ~ 10485760。

    デフォルト値: 1048576。

    単位: バイト。

    説明

    メッセージの最大サイズを変更する前に、新しい値がプロデューサーとコンシューマーの構成と一致していることを確認してください。

Notifier

String

いいえ

いいえ

アラート連絡先。

なし。

CrossZone

Boolean

いいえ

いいえ

インスタンスをゾーンをまたいでデプロイするかどうかを指定します。

有効な値:

  • true

  • false

デフォルト値: true。

UserPhoneNum

String

いいえ

いいえ

アラート連絡先の携帯電話番号。

なし。

SelectedZones

List

いいえ

いいえ

プライマリゾーンの候補セットとセカンダリゾーンの候補セットで構成される二次元配列。

zone {zone} 形式のカスタムコードと cn-RegionID-{zone} 形式の標準コードは、配列内のゾーンを指定するために使用されます。

  • CrossZone を true に設定し、カスタムコード形式でプライマリゾーンの候補セットにゾーン H とゾーン F を使用し、セカンダリゾーンの候補セットにゾーン K を使用する場合、SelectedZones の値として [[\"zoneh\",\"zonef\"],[\"zonek\"]] を指定する必要があります。

    次の情報に注意してください。

    プライマリゾーンまたはセカンダリゾーンとして複数のゾーンを指定した場合、システムは指定されたゾーンに優先順位を付けることなく、1 つのゾーンをプライマリゾーンまたはセカンダリゾーンとして使用します。たとえば、このプロパティを [[\"zoneh\",\"zonef\"],[\"zonek\"]] に設定すると、システムはゾーン H またはゾーン F をプライマリゾーンとして使用し、ゾーン K をセカンダリゾーンとして使用します。

  • CrossZone を false に設定し、カスタムコード形式でゾーン K を使用する場合、SelectedZones の値として [[\"zonek\"],[]] を指定する必要があります。 [[\"zonek\"],[]] は依然として 2 次元配列ですが、セカンダリゾーンの候補セットを指定する配列は空であることに注意してください。

VSwitchIds

List

いいえ

いいえ

デプロイするインスタンスが接続されている vSwitch の ID。

ApsaraMQ for Kafka V2 または V3 インスタンスの場合は、このプロパティを指定する必要があります。 ApsaraMQ for Confluent インスタンスの場合は、VSwitchIds プロパティと VSwitchId プロパティのいずれかを指定する必要があります。 ApsaraMQ for Confluent インスタンスの両方のプロパティを指定した場合、VSwitchIds プロパティが優先されます。

KMSKeyId

String

いいえ

いいえ

インスタンスが存在するリージョンでクラウドディスクの暗号化に使用されるキーの ID。

Key Management Service (KMS) コンソール からキーの ID を取得できます。キーを作成することもできます。詳細については、「CMK を作成する」をご参照ください。

このプロパティを指定すると、インスタンスの暗号化が有効になり、無効にすることはできません。 ALIYUN::KAFKA::Instance を使用する場合、システムはサービスロール AliyunServiceRoleForAlikafkaInstanceEncryption が作成されているかどうかをチェックします。サービスロールが作成されていない場合、システムは自動的にロールを作成します。詳細については、「サービスロール」をご参照ください。

IsForceSelectedZones

Boolean

いいえ

いいえ

選択したゾーンにインスタンスを強制的にデプロイするかどうかを指定します。

なし。

ServerlessConfig 構文

"ServerlessConfig": {
   "ReservedPublishCapacity": Integer,
   "ReservedSubscribeCapacity": Integer
}

ServerlessConfig プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ReservedPublishCapacity

Integer

はい

はい

メッセージパブリッシング用に予約されているトラフィック。

値は整数である必要があります。最小値: 60。

ReservedSubscribeCapacity

Integer

はい

はい

メッセージサブスクリプション用に予約されているトラフィック。

値は整数である必要があります。最小値: 20。

戻り値

Fn::GetAtt

  • InstanceId: インスタンス ID。

  • OrderId: 注文 ID。

  • name: インスタンス名。

  • SslEndpoint: IP アドレス形式の SSL エンドポイント。

  • SaslDomainEndpoint: ドメイン名形式の簡易認証およびセキュリティ層 (SASL) エンドポイント。

  • SslDomainEndpoint: ドメイン名形式の SSL エンドポイント。

  • DomainEndpoint: ドメイン名形式のデフォルトエンドポイント。

  • Endpoint: IP アドレス形式のデフォルトエンドポイント。

  • Arn: Alibaba Cloud Resource Name (ARN)。

YAML 形式

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  VpcId:
    Type: String
    AssociationProperty: ALIYUN::ECS::VPC::VPCId
  ZoneId:
    Type: String
    AssociationProperty: ALIYUN::ECS::ZoneId
  VSwitchId:
    Type: String
    AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
      ZoneId: ${ZoneId}
  SecurityGroupId:
    Type: String
    AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
    AssociationPropertyMetadata:
      VpcId: ${VpcId}
Resources:
  Instance:
    Type: ALIYUN::KAFKA::Instance
    Properties:
      DeployType: 5
      SpecType: normal
      PayType: Hour
      DiskType: '1'
      DeployOption:
        VpcId:
          Ref: VpcId
        ZoneId:
          Ref: ZoneId
        VSwitchId:
          Ref: VSwitchId
        SecurityGroup:
          Ref: SecurityGroupId
        DeployModule: vpc
        ServiceVersion: 0.10.2
        Config:
          kafka.log.retention.hours: '33'
      DeletionForce: 'false'
      DiskSize: 500
      TopicQuota: 50
      OpenConnector: 'false'
      IoMaxSpec: alikafka.hw.2xlarge
Outputs:
  InstanceId:
    Description: 'Id of the instance. '
    Value:
      Fn::GetAtt:
        - Instance
        - InstanceId
  OrderId:
    Description: 'Id of the order. '
    Value:
      Fn::GetAtt:
        - Instance
        - OrderId
  Name:
    Description: Name of the instance.
    Value:
      Fn::GetAtt:
        - Instance
        - Name

JSON 形式

{
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "VpcId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
    },
    "ZoneId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::ZoneId"
    },
    "VSwitchId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
      "AssociationPropertyMetadata": {
        "VpcId": "${VpcId}",
        "ZoneId": "${ZoneId}"
      }
    },
    "SecurityGroupId": {
      "Type": "String",
      "AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
      "AssociationPropertyMetadata": {
        "VpcId": "${VpcId}"
      }
    }
  },
  "Resources": {
    "Instance": {
      "Type": "ALIYUN::KAFKA::Instance",
      "Properties": {
        "DeployType": 5,
        "SpecType": "normal",
        "PayType": "Hour",
        "DiskType": "1",
        "DeployOption": {
          "VpcId": {
            "Ref": "VpcId"
          },
          "ZoneId": {
            "Ref": "ZoneId"
          },
          "VSwitchId": {
            "Ref": "VSwitchId"
          },
          "SecurityGroup": {
            "Ref": "SecurityGroupId"
          },
          "DeployModule": "vpc",
          "ServiceVersion": "0.10.2",
          "Config": {
            "kafka.log.retention.hours": "33"
          }
        },
        "DeletionForce": "false",
        "DiskSize": 500,
        "TopicQuota": 50,
        "OpenConnector": "false",
        "IoMaxSpec": "alikafka.hw.2xlarge"
      }
    }
  },
  "Outputs": {
    "InstanceId": {
      "Description": "インスタンスの ID。",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "InstanceId"
        ]
      }
    },
    "OrderId": {
      "Description": "注文の ID。",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "OrderId"
        ]
      }
    },
    "Name": {
      "Description": "インスタンスの名前。",
      "Value": {
        "Fn::GetAtt": [
          "Instance",
          "Name"
        ]
      }
    }
  }
}

その他の例については、instance.yml をご覧ください。例では、ALIYUN::KAFKA::Instance リソースタイプと ALIYUN::KAFKA::Topic リソースタイプが使用されています。