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

Container Service for Kubernetes:API を使用して ACK Serverless クラスターを作成する

最終更新日:Apr 28, 2025

CreateCluster オペレーションを呼び出して、Container Service for Kubernetes (ACK) Serverless クラスターを作成できます。

リクエスト構文

POST /clusters HTTP/1.1
Content-Type:application/json
{
  "cluster_type" : "String", // クラスターの種類
  "profile": "String", // クラスタの識別子
  "cluster_spec" : "String", // ACK Serverlessクラスターの種類
  "name" : "String", // クラスター名
  "kubernetes_version" : "String", // Kubernetesのバージョン
  "private_zone" : Boolean, // プライベートゾーンを有効にするかどうか
  "region_id" : "String", // リージョンID
  "endpoint_public_access" : Boolean, // インターネット経由でAPIサーバーへのアクセスを許可するかどうか
  "service_discovery_types" : [ "String" ], // サービスディスカバリーの種類
  "zoneid" : "String", // ゾーンID
  "logging_type" : "String", // Log Serviceを有効にするかどうか
  "tags" : [ {
    "key" : "String", // タグキー
    "value" : "String" // タグ値
  } ],
  "deletion_protection" : Boolean, // 削除保護を有効にするかどうか
  "service_cidr" : "String", // サービスCIDRブロック
  "timezone" : "String", // タイムゾーン
  "addons" : [ {
    "name" : "String", // コンポーネント名
    "config" : "String", // コンポーネントの設定
    "disabled" : Boolean // 自動インストールを無効にするかどうか
  } ],
  "snat_entry" : Boolean, // SNATルールを設定するかどうか
  "vpcid" : "String", // VPC ID
  "vswitch_ids" : [ "String" ], // vSwitch ID
  "security_group_id" : "String" // セキュリティグループID
}

リクエストパラメーター

表 1. リクエストパラメーター

パラメーター

タイプ

必須

説明

cluster_type

String

はい

ManagedKubernetes

クラスターのタイプ。値を ManagedKubernetes に設定します。この場合、profile パラメーターを Serverless に設定すると、ACK Serverless クラスター が作成されます。

profile

String

はい

Serverless

クラスターの識別子。このパラメーターを Serverless に設定し、cluster_type パラメーターを ManagedKubernetes に設定すると、ACK Serverless クラスター が作成されます。

cluster_spec

String

いいえ

ack.pro.small

ACK Serverless クラスター の種類。有効な値:

  • ack.pro.small: プロフェッショナル ACK Serverless クラスター

  • ack.standard: 標準 ACK Serverless クラスター

デフォルト値: ack.standard。このパラメーターを空のままにすると、標準 ACK Serverless クラスター が作成されます。

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

name

String

はい

cluster-demo

クラスター名。

名前は 1 ~ 63 文字で、数字、文字、およびハイフン (-) を使用できます。名前はハイフン (-) で始めることはできません。

kubernetes_version

String

いいえ

1.32.1-aliyun.1

クラスターの Kubernetes バージョン。ACK はすべてのオープンソース Kubernetes バージョンをサポートしています。このパラメーターを指定しない場合、最新の安定した Kubernetes バージョンが使用されます(推奨)。

ACK コンソールでは、最新の Kubernetes バージョンを実行する2種類のクラスターを作成できます。以前の Kubernetes バージョンを実行するクラスターを作成する場合は、API オペレーションを呼び出します。ACK でサポートされている Kubernetes バージョンの詳細については、「ACK でサポートされている Kubernetes バージョンの概要」をご参照ください。

private_zone

Boolean

いいえ

false

サービスディスカバリーに Alibaba Cloud DNS PrivateZone を有効にするかどうかを指定します。有効な値:

  • true: サービスディスカバリーに Alibaba Cloud DNS PrivateZone を有効にします。

  • false: サービスディスカバリーに Alibaba Cloud DNS PrivateZone を無効にします。

詳細については、「Alibaba Cloud DNS PrivateZone に基づくサービスディスカバリーを有効にする」をご参照ください。

region_id

String

はい

cn-beijing

クラスターをデプロイするリージョンの ID。

endpoint_public_access

Boolean

いいえ

true

クラスターがインターネット経由で API サーバーにアクセスすることを許可するかどうかを指定します。有効な値:

  • true: クラスターがインターネット経由で API サーバーにアクセスすることを許可します。

  • false: クラスターがインターネット経由で API サーバーにアクセスすることを許可しません。この場合、クラスターは指定された VPC (Virtual Private Cloud) 経由でのみ API サーバーにアクセスできます。

デフォルト値: true

service_discovery_types

String の配列

いいえ

PrivateZone

クラスターに実装されているサービスディスカバリーのタイプ。有効な値:ACK Serverless クラスタ。

  • CoreDNS: Kubernetes ネイティブの標準サービスディスカバリーコンポーネント。DNS 解決サービスを使用するには、一連のコンテナーをデプロイする必要があります。デフォルトでは、0.25 CPU コアと 512 MiB のメモリを持つ 2 つの ECI (Elastic Container Instance) が使用されます。

  • PrivateZone: Alibaba Cloud が提供する DNS 解決サービス。サービスディスカバリーに使用する前に、Alibaba Cloud DNS PrivateZone をアクティブ化する必要があります。

デフォルトでは、このパラメーターは指定されていません。

zoneid

String

いいえ

cn-beiji****

クラスターが存在するゾーンの ID。

重要

vpc_id パラメーターまたは vswitch_ids パラメーターを指定しない場合は、zoneid パラメーターを指定する必要があります。

logging_type

String

いいえ

SLS

クラスターの Simple Log Service を有効にするかどうかを指定します。値を SLS に設定します。このパラメーターは、ACK Serverless クラスター の場合にのみ有効です。

tags

tag の配列

いいえ

[{"key": "env", "value": "prod"}]

クラスターに追加するタグ。タグは次の要素で構成されます。

  • key: タグキー。

  • value: タグ値。

deletion_protection

Boolean

いいえ

true

クラスターの削除保護を有効にするかどうかを指定します。削除保護が有効になっていると、ACK コンソールまたは API オペレーションの呼び出しでクラスターを削除できません。有効な値:

  • true: クラスターの削除保護を有効にします。

  • false: クラスターの削除保護を無効にします。

デフォルト値: false

service_cidr

String

いいえ

172.21.0.0/20

サービス CIDR ブロック。有効な値: 10.0.0.0/16-24、172.16-31.0.0/16-24、および 192.168.0.0/16-24。

サービス CIDR ブロックは、VPC CIDR ブロックまたは VPC 内の既存のクラスターの CIDR ブロックと重複することはできません。VPC CIDR ブロックは 10.1.0.0/21 です。サービス CIDR ブロックは、クラスターの作成後に変更することはできません。

デフォルト値: 172.19.0.0/20。

timezone

String

いいえ

Asia/Shanghai

クラスターのタイムゾーン。詳細については、「サポートされているタイムゾーン」をご参照ください。

addons

addon の配列

いいえ

[{"name":"logtail-ds","config":"{\"sls_project_name\":\"your_sls_project_name\"}"}]

クラスターにインストールするコンポーネント。次のパラメーターを指定できます。

  • name: 必須。このパラメーターは、コンポーネントの名前を示します。

  • config: オプション。このパラメーターを空のままにすると、構成は必要ありません。

  • disabled: オプション。このパラメーターは、自動インストールを無効にするかどうかを指定します。

Log Service コンポーネント: オプション。

説明

クラスターで Simple Log Service が有効になっていない場合、クラスター監査機能を使用できません。

  • 既存の Simple Log Service プロジェクトを使用するには、[{"name": "logtail-ds","config": "{\"IngressDashboardEnabled\":\"true\",\"sls_project_name\":\"your_sls_project_name\"}"} ] の形式でコンポーネントを指定します。

  • Simple Log Service プロジェクトを作成するには、[{"name": "logtail-ds","config": "{\"IngressDashboardEnabled\":\"true\"}"} ] の形式でコンポーネントを指定します。

Ingress コントローラー: オプション。デフォルトでは、nginx-ingress-controller コンポーネントは専用 ACK クラスターにインストールされます。

  • nginx-ingress-controller をインストールしてインターネットアクセスを有効にするには、[{"name":"nginx-ingress-controller","config":"{\"IngressSlbNetworkType\":\"internet\"}"} ] の形式で Ingress コントローラーを指定します。

  • nginx-ingress-controller をインストールしたくない場合は、[{"name": "nginx-ingress-controller","config": "","disabled": true} ] の形式でコンポーネントを指定します。

snat_entry

Boolean

いいえ

true

ACK Serverless クラスター を作成するときに、NAT ゲートウェイを作成し、SNAT (Source Network Address Translation) ルールを構成するかどうかを指定します。有効な値:

  • true: NAT ゲートウェイを自動的に作成し、SNAT ルールを構成します。このパラメーターを true に設定すると、VPC 内のクラスターはインターネットにアクセスできます。

  • false: NAT ゲートウェイを作成したり、SNAT ルールを構成したりしません。このパラメーターを false に設定すると、VPC 内のクラスターはインターネットにアクセスできません。

デフォルト値: false

vpcid

String

いいえ

vpc-2zeik9h3ahvv2zz95****

クラスターをデプロイする VPC。クラスターを作成するときに VPC を指定する必要があります。

説明

vpcid パラメーターを指定する場合は、vswitch_ids パラメーターも指定する必要があります。

vswitch_ids

String の配列

いいえ

["vsw-2ze97jwri7cei0mpw****"]

vSwitch の ID。1 ~ 3 つの vSwitch を指定できます。

security_group_id

String

いいえ

sg-bp1bdue0qc1g7k****

クラスターに使用する既存のセキュリティ グループの ID です。このパラメーター、または is_enterprise_security_group パラメーターを指定する必要があります。クラスター内のノードは、指定されたセキュリティ グループに自動的に追加されます。

resource_group_id

String

いいえ

rg-acfm3mkrure****

クラスターが属するリソースグループの ID。このパラメーターを使用して、異なるクラスターを分離できます。

レスポンス構文

HTTP/1.1 200
Content-Type:application/json
{
  "cluster_id" : "String", // クラスターID
  "request_id" : "String", // リクエストID
  "task_id" : "String" // タスクID
}

レスポンスパラメーター

表 2. レスポンスパラメーター

パラメーター

タイプ

説明

cluster_id

String

cb95aa626a47740afbf6aa099b650****

クラスター ID。

request_id

String

687C5BAA-D103-4993-884B-C35E4314A1E1

リクエスト ID。

task_id

String

T-5a54309c80282e39ea00002f

タスク ID。

例 1: 自動的に作成された VPC に ACK Serverless クラスター を作成する

リクエストの例

POST /clusters HTTP/1.1
<共通リクエストヘッダー>
{
    "cluster_type":"ManagedKubernetes",
    "profile":"Serverless",
    "cluster_spec":"ack.standard",  
    "name":"test-ask",
    "region_id":"cn-hangzhou",
    "endpoint_public_access":false,
    "logging_type" : "SLS",
    "private_zone":false,
    "snat_entry":true,
    "tags":[
        {
            "key":"k-aa",
            "value":"v-aa"
        }
    ],
    "deletion_protection":false,
    "addons":[
        {
            "name":"logtail-ds"
        }
    ],
    "zoneid":"cn-hangzhou-i"
}

レスポンスの例

{
    "cluster_id": "cb95aa626a47740afbf6aa099b650****",
    "RequestId": "687C5BAA-D103-4993-884B-C35E4314A1E1",
    "task_id": "T-5a54309c80282e39ea00002f",
}

例 2: 既存の VPC に ACK Serverless クラスター を作成する

リクエストの例

POST /clusters HTTP/1.1
<共通リクエストヘッダー>
{
    "cluster_type":"ManagedKubernetes",
    "profile":"Serverless",
    "cluster_spec":"ack.pro.small", 
    "name":"ask-cluster",
    "region_id":"cn-shenzhen",
    "endpoint_public_access":true,
    "logging_type": "SLS",
    "private_zone":true,
    "tags":[
        {
            "key":"tier",
            "value":"frontend"
        }
    ],
    "deletion_protection":true,
    "addons":[
        {
            "name":"logtail-ds"
        }
    ],
    "vpcid":"vpc-wz984yvbd6lck22z3****",
    "vswitch_ids":[
        "vsw-wz9uwxhawmtzg7u9h****"
    ],
    "security_group_id":"sg-wz9b86l4s7nthi1k****"
}

レスポンスの例

{
    "cluster_id": "cb95aa626a47740afbf6aa099b650****",
    "RequestId": "687C5BAA-D103-4993-884B-C35E4314A1E1",
    "task_id": "T-5a54309c80282e39ea00002f",
}

エラーコード

エラーコードのリストについては、「サービスエラーコード」をご参照ください。