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 パラメーターを |
profile | String | はい | Serverless | クラスターの識別子。このパラメーターを |
cluster_spec | String | いいえ | ack.pro.small | 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 を有効にするかどうかを指定します。有効な値:
詳細については、「Alibaba Cloud DNS PrivateZone に基づくサービスディスカバリーを有効にする」をご参照ください。 |
region_id | String | はい | cn-beijing | クラスターをデプロイするリージョンの ID。 |
endpoint_public_access | Boolean | いいえ | true | クラスターがインターネット経由で API サーバーにアクセスすることを許可するかどうかを指定します。有効な値:
デフォルト値: |
service_discovery_types | String の配列 | いいえ | PrivateZone | クラスターに実装されているサービスディスカバリーのタイプ。有効な値:ACK Serverless クラスタ。
デフォルトでは、このパラメーターは指定されていません。 |
zoneid | String | いいえ | cn-beiji**** | クラスターが存在するゾーンの ID。 重要
|
logging_type | String | いいえ | SLS | クラスターの Simple Log Service を有効にするかどうかを指定します。値を |
tags | tag の配列 | いいえ | [{"key": "env", "value": "prod"}] | クラスターに追加するタグ。タグは次の要素で構成されます。
|
deletion_protection | Boolean | いいえ | true | クラスターの削除保護を有効にするかどうかを指定します。削除保護が有効になっていると、ACK コンソールまたは API オペレーションの呼び出しでクラスターを削除できません。有効な値:
デフォルト値: |
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\"}"}] | クラスターにインストールするコンポーネント。次のパラメーターを指定できます。
Log Service コンポーネント: オプション。 説明 クラスターで Simple Log Service が有効になっていない場合、クラスター監査機能を使用できません。
Ingress コントローラー: オプション。デフォルトでは、nginx-ingress-controller コンポーネントは専用 ACK クラスターにインストールされます。
|
snat_entry | Boolean | いいえ | true | ACK Serverless クラスター を作成するときに、NAT ゲートウェイを作成し、SNAT (Source Network Address Translation) ルールを構成するかどうかを指定します。有効な値:
デフォルト値: |
vpcid | String | いいえ | vpc-2zeik9h3ahvv2zz95**** | クラスターをデプロイする VPC。クラスターを作成するときに VPC を指定する必要があります。 説明
|
vswitch_ids | String の配列 | いいえ | ["vsw-2ze97jwri7cei0mpw****"] | vSwitch の ID。1 ~ 3 つの vSwitch を指定できます。 |
security_group_id | String | いいえ | sg-bp1bdue0qc1g7k**** | クラスターに使用する既存のセキュリティ グループの ID です。このパラメーター、または |
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",
}エラーコード
エラーコードのリストについては、「サービスエラーコード」をご参照ください。