CreateCluster 操作を呼び出して、ACK Edge クラスターを作成します。
デバッグ
リクエスト構文
POST /clusters HTTP/1.1
Content-Type:application/json
{
"name" : "String",
"cluster_type" : "String",
"disable_rollback" : Boolean,
"timeout_mins" : Long,
"kubernetes_version" : "String",
"runtime" : {
"name" : "String",
"version" : "String"
},
"region_id" : "String",
"key_pair" : "String",
"login_password" : "String",
"num_of_nodes" : Long,
"profile" : "String",
"logging_type" : "String",
"snat_entry" : Boolean,
"vswitch_ids" : [ "String" ],
"worker_system_disk_category" : "String",
"worker_system_disk_size" : Long,
"container_cidr" : "String",
"cloud_monitor_flags" : Boolean,
"endpoint_public_access" : Boolean,
"service_cidr" : "String",
"addons" : [ {
"name" : "String",
"config" : "String",
"disabled" : Boolean
} ],
"tags" : [ {
"key" : "String",
"value" : "String"
} ],
"vpcid" : "String",
"worker_data_disks" : [ {
"category" : "String",
"size" : Long,
"encrypted" : "String",
"auto_snapshot_policy_id" : "String"
} ],
"deletion_protection" : Boolean,
"node_cidr_mask" : "String",
"worker_instance_types" : [ "String" ],
"worker_instance_charge_type" : "String",
"security_group_id" : "String",
"is_enterprise_security_group" : Boolean,
"rds_instances" : [ "String" ]
}リクエストパラメーター
表 1. リクエストボディパラメーター
| パラメーター | タイプ | 必須 | 例 | 説明 |
|---|---|---|---|---|
| name | String | Yes | demo-edge-cluster | クラスターの名前。名前は 1~63 文字で、数字、文字、ハイフン (-) を含めることができます。名前はハイフン (-) で始めることはできません。 |
| cluster_type | String | Yes | ManagedKubernetes | クラスターのタイプ。ACK Edge クラスターを作成するには、このパラメーターを ManagedKubernetes に設定します。 |
| disable_rollback | Boolean | No | true | 非推奨。 クラスターの作成に失敗した場合にロールバックを実行するかどうかを指定します。有効な値: true (ロールバックを実行する)、false (ロールバックを実行しない)。デフォルト値: false。 |
| timeout_mins | Long | No | 60 | 非推奨。 リソース作成のタイムアウト期間。単位: 分。デフォルト値: 60。 |
| kubernetes_version | String | No | 1.30.1-aliyun.1 | クラスターの Kubernetes バージョン。ACK でサポートされている Kubernetes バージョンは、オープンソース Kubernetes でサポートされているバージョンと同じです。このパラメーターが設定されていない場合、最新の Kubernetes バージョンが使用されます。ACK コンソールでは最新の 3 つの Kubernetes バージョンのクラスターを作成でき、API オペレーションを呼び出すことで以前のバージョンのクラスターを作成できます。詳細については、「Kubernetes バージョンのサポート」をご参照ください。 |
| runtime | Array of runtime | No | {"name": "containerd", "version": "1.6.20"} | コンテナランタイム。サポートされているランタイムは containerd と docker です。このパラメーターには、name (コンテナランタイムの名前) と version (コンテナランタイムのバージョン) が含まれます。 |
| region_id | String | Yes | cn-beijing | クラスターのリージョン ID。 |
| key_pair | String | Yes | demo-key | 非推奨。 キーペアの名前。このパラメーターまたは login_password を設定します。 |
| login_password | String | Yes | HelloWorld123 | 非推奨。 SSH ログインパスワード。このパラメーターまたは key_pair を設定します。パスワードは 8~30 文字で、大文字、小文字、数字、特殊文字のうち少なくとも 3 種類を含める必要があります。 |
| num_of_nodes | Long | Yes | 1 | 非推奨。 ワーカーノードの数。有効な値: 0~100。 |
| profile | String | Yes | Edge | クラスターを ACK Edge クラスターとして識別します。デフォルト値: Edge。 |
| logging_type | String | No | SLS | クラスターに対して Simple Log Service を有効にするかどうかを指定します。Simple Log Service を有効にするには、このパラメーターを SLS に設定します。このパラメーターは、サーバーレス Kubernetes クラスターにのみ適用されます。 |
| snat_entry | Boolean | No | true | クラスターがデプロイされている VPC (Virtual Private Cloud) の SNAT ルールを設定するかどうかを指定します。VPC がインターネットにアクセスできる場合は、このパラメーターを false に設定します。VPC がインターネットアクセスを提供しない場合、有効な値は次のとおりです。true (VPC からのインターネットアクセスを有効にする SNAT ルールを設定する)、false (SNAT ルールを設定せず、クラスターにインターネットアクセスを提供しない)。クラスター内のアプリケーションがインターネットアクセスを必要とする場合は、このパラメーターを true に設定します。デフォルト値: false。 |
| vswitch_ids | Array of String | Yes | vsw-2ze48rkq464rsdts1\*\*\*\* | vSwitch の ID。1~3 個の vSwitch を指定します。 |
| worker_system_disk_category | String | Yes | cloud_efficiency | 非推奨。 ワーカーノードのシステムディスクタイプ。有効な値: cloud_efficiency (Ultra ディスク)、cloud_ssd (標準 SSD)。デフォルト値: cloud_ssd。 |
| worker_system_disk_size | Long | Yes | 100 | 非推奨。 ワーカーノードのシステムディスクサイズ。単位: GiB。有効な値: 40~500。値は 40 以上で、イメージサイズ以上である必要があります。デフォルト値: 120。 |
| container_cidr | String | No | 172.20.0.0 | Pod の CIDR ブロック。この CIDR ブロックは、VPC の CIDR ブロックと重複することはできません。VPC がシステムによって自動的に作成された場合、デフォルトの Pod CIDR ブロックは 172.16.0.0/16 です。 重要 このパラメーターは、クラスターが Flannel をネットワークプラグインとして使用する場合に必須であり、Terway を使用する場合はオプションです。 |
| cloud_monitor_flags | Boolean | No | true | 非推奨。 CloudMonitor エージェントをインストールするかどうかを指定します。有効な値: true (エージェントをインストールする)、false (エージェントをインストールしない)。デフォルト値: false。 |
| endpoint_public_access | Boolean | No | true | API サーバーのインターネットアクセスを有効にするかどうかを指定します。有効な値: true (インターネットアクセスを有効にする)、false (インターネットアクセスを無効にする。API サーバーは内部ネットワーク内でのみアクセス可能)。デフォルト値: true。重要 ACK Edge クラスターでは、エッジノードはインターネット経由でコントロールプレーンと通信します。ACK Edge クラスターを作成する際は、API サーバーのインターネットアクセスを有効にしてください。 |
| service_cidr | String | Yes | 172.21.0.0 | Service の CIDR ブロック。この CIDR ブロックは、Pod CIDR ブロックまたは VPC CIDR ブロックと重複することはできません。VPC がシステムによって自動的に作成された場合、デフォルトの Service CIDR ブロックは 172.19.0.0/20 です。 |
| addons | Array of addon | No | \[{"name":"flannel","config":""},{"name":"logtail-ds-docker","config":""},{"name":"alibaba-log-controller","config":"{\"IngressDashboardEnabled\":\"false\"}"}\] | クラスターにインストールするコンポーネント。パラメーター: name (必須。コンポーネント名)、config (オプション。構成が不要な場合は空白のままにする)、disabled (オプション。自動インストールを無効にするかどうかを指定する)。ネットワークプラグイン (必須): Flannel または Terway。Flannel は [{"name":"flannel","config":""}] として指定します。Terway は [{"name":"terway-eniip","config":""}] として指定します。ボリュームプラグイン (オプション): Container Storage Interface (CSI)。CSI は [{"name":"csi-plugin","config":""},{"name":"csi-provisioner","config":""}] として指定します。Log Service コンポーネント (オプション): Simple Log Service が無効になっている場合、クラスター監査機能は利用できません。既存のプロジェクトを使用する場合: [{"name":"logtail-ds","config":"{\"IngressDashboardEnabled\":\"true\",\"sls_project_name\":\"your_sls_project_name\"}"}]。新しいプロジェクトを作成する場合: [{"name":"logtail-ds","config":"{\"IngressDashboardEnabled\":\"true\"}"}]。Ingress コントローラー (オプション): デフォルトでは、nginx-ingress-controller は ACK 専用クラスターにインストールされます。インターネットアクセス付きの nginx-ingress-controller をインストールする場合: [{"name":"nginx-ingress-controller","config":"{\"IngressSlbNetworkType\":\"internet\"}"}]。インストールをスキップする場合: [{"name":"nginx-ingress-controller","config":"","disabled":true}]。イベントセンター (オプション): デフォルトで有効になっています。イベントセンターを有効にする場合: [{"name":"ack-node-problem-detector","config":"{\"sls_project_name\":\"your_sls_project_name\"}"}]。詳細については、「イベントセンターの作成と使用」をご参照ください。 |
| tags | Array of tag | No | \[{"key":"env","value":"prod"}\] | クラスターに追加するラベル。key: ラベルキー。value: ラベル値。 |
| vpcid | String | Yes | vpc-2zeik9h3ahvv2zz95\*\*\*\* | クラスターをデプロイする VPC の ID。クラスターを作成する際には VPC が必須です。 説明
|
| worker_data_disks | Array of data_disk | No | — | 非推奨。 ディスクタイプとサイズを含む、ワーカーノードのデータディスク構成。 |
| deletion_protection | Boolean | No | true | クラスターの削除保護を有効にするかどうかを指定します。有効にすると、クラスターは ACK コンソールから、または API オペレーションを呼び出すことによって削除できなくなります。有効な値: true (削除保護を有効にする)、false (削除保護を無効にする)。デフォルト値: false。 |
| node_cidr_mask | String | No | 25 | Pod CIDR ブロックによって決定される、各ノードに割り当て可能な最大 IP アドレス数。このパラメーターは、クラスターが Flannel プラグインを使用する場合にのみ適用されます。デフォルト値: 25。 |
| worker_instance_types | Array of String | Yes | ecs.n4.large | 非推奨。 ワーカーノードの Elastic Compute Service (ECS) インスタンスタイプ。少なくとも 1 つのインスタンスタイプを指定します。タイプは優先順位の降順でリストされます。システムが最も優先順位の高いタイプでノードを作成できない場合、次のタイプを試行します。詳細については、「インスタンスファミリーの概要」をご参照ください。 |
| worker_instance_charge_type | String | Yes | PrePaid | 非推奨。 ワーカーノードの課金方法。有効な値: PrePaid (サブスクリプション)、PostPaid (従量課金)。デフォルト値: PostPaid。 |
| security_group_id | String | No | sg-bp1bdue0qc1g7k\*\*\*\* | クラスターの既存のセキュリティグループの ID。このパラメーターまたは is_enterprise_security_group を設定します。クラスター内のノードは、指定されたセキュリティグループに自動的に追加されます。 |
| is_enterprise_security_group | Boolean | No | true | 高度セキュリティグループを作成するかどうかを指定します。このパラメーターは、security_group_id が設定されていない場合にのみ適用されます。有効な値: true (高度セキュリティグループを作成する)、false (作成しない)。デフォルト値: true。説明 基本セキュリティグループを使用するには、ノードと Terway Pod の合計数が 2,000 を超えないようにしてください。Terway ネットワークプラグインを使用するクラスターの場合は、高度セキュリティグループを使用してください。 |
| rds_instances | rds_instances | No | rm-2zev748xi27xc\*\*\*\* | 非推奨。 ApsaraDB RDS インスタンスの名前。 |
| cluster_spec | String | No | ack.pro.small | ACK マネージドクラスターのタイプ。有効な値: ack.pro.small (ACK Edge Pro クラスター)、ack.standard (ACK Edge Basic クラスター)。デフォルト値: ack.standard。このパラメーターが設定されていない場合、ACK Edge Basic クラスターが作成されます。詳細については、「ACK Edge Pro クラスターの概要」をご参照ください。 |
| resource_group_id | String | No | rg-acfm3mkrure\*\*\*\* | クラスターが属するリソースグループの ID。このパラメーターを使用して、異なるリソースグループ間でクラスターを分離します。 |
応答構文
HTTP/1.1 200
Content-Type:application/json
{
"cluster_id" : "String",
"request_id" : "String",
"task_id" : "String"
}応答パラメーター
表 2. 応答ボディパラメーター
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
| cluster_id | String | cb95aa626a47740afbf6aa099b650\*\*\*\* | クラスター ID。 |
| request_id | String | 687C5BAA-D103-4993-884B-C35E4314A1E1 | リクエスト ID。 |
| task_id | String | T-5a54309c80282e39ea00002f | タスク ID。 |
例
リクエストの例
POST /clusters
<Common request headers>
{
"name":"ACK Edge クラスター",
"cluster_type":"ManagedKubernetes",
"disable_rollback":true,
"timeout_mins":60,
"kubernetes_version":"1.14.8-aliyunedge.1",
"region_id":"中国 (張家口)",
"snat_entry":true,
"cloud_monitor_flags":true,
"endpoint_public_access":true,
"deletion_protection":true,
"node_cidr_mask":"25",
"tags":[
{
"key":"tag-k",
"value":"tag-v"
}
],
"addons":[
{
"name":"logtail-ds-docker"
},
{
"name":"alibaba-log-controller",
"config":"{\"IngressDashboardEnabled\":\"false\"}"
},
{
"name":"flannel"
},
{
"name":"alicloud-monitor-controller"
}
],
"profile":"Edge", // クラスターが ACK Edge クラスターであることを指定します。
"logging_type" : "SLS",
"worker_instance_types":[
"ecs.hfc6.large"
],
"runtime":{ // コンテナランタイムの構成。
"name":"containerd", // コンテナランタイムの名前。
"version":"1.6.20" // コンテナランタイムのバージョン。
},
"num_of_nodes":1,
"worker_system_disk_category":"cloud_ssd",
"worker_system_disk_size":40,
"worker_data_disks":[
{
"category":"cloud_efficiency",
"size":"40",
"encrypted":"false",
"auto_snapshot_policy_id":"",
}
],
"worker_instance_charge_type":"PostPaid",
"vpcid":"vpc-8vb435kr467tnfj42****",
"container_cidr":"172.20.0.0/16",
"service_cidr":"172.21.0.0/20",
"vswitch_ids":[
"vsw-8vbhdhn461i65p32g****"
],
"login_password":"Hello1234",
"key_pair": "sin-name",
"security_group_id":"sg-8vb7grbyvlb10j0i****",
"is_enterprise_security_group":true,
"rds_instances": ["rm-xx","rm-xx"]
}成功応答の例
XML 形式
<cluster_id>cb95aa626a47740afbf6aa099b650****</cluster_id>
<task_id>T-5a54309c80282e39ea00002f</task_id>
<request_id>687C5BAA-D103-4993-884B-C35E4314A1E1</request_id>JSON 形式
{
"cluster_id": "cb95aa626a47740afbf6aa099b650****",
"task_id": "T-5a54309c80282e39ea00002f",
"request_id": "687C5BAA-D103-4993-884B-C35E4314A1E1"
}エラーコード
エラーコードの詳細については、「エラーセンター」をご参照ください。
エラーコードのリストについては、「サービスエラーコード」をご参照ください。