Kubernetes クラスターまたは Serverless Kubernetes クラスターにアプリケーションを作成します。
今すぐお試しください
テスト
RAM 認証
|
アクション |
アクセスレベル |
リソースタイプ |
条件キー |
依存アクション |
|
edas:CreateApplication |
create |
*All Resource
|
なし | なし |
リクエスト構文
POST /pop/v5/k8s/acs/create_k8s_app HTTP/1.1
リクエストパラメーター
|
パラメーター |
型 |
必須 / 任意 |
説明 |
例 |
| IntranetTargetPort |
integer |
任意 |
イントラネット SLB インスタンスのバックエンドポート。これはアプリケーションのサービスポートでもあります。値は 1 から 65535 の範囲である必要があります。 |
80 |
| IntranetSlbPort |
integer |
任意 |
イントラネット SLB インスタンスのフロントエンドポート。値は 1 から 65535 の範囲である必要があります。 |
80 |
| ImageUrl |
string |
任意 |
イメージのアドレス。このパラメーターは、 |
registry.cn-beijing.aliyuncs.com/****_test/****-cons****:1.0 |
| ApplicationDescription |
string |
任意 |
アプリケーションの説明。 |
Production Environment |
| RepoId |
string |
任意 |
イメージリポジトリの ID。 |
ced******** |
| Replicas |
integer |
任意 |
アプリケーションインスタンスの数。 |
4 |
| LimitCpu |
integer |
任意 |
アプリケーションインスタンスが使用できる CPU コアの最大数。LimitmCpu を指定した場合、このパラメーターは無視されます。 |
4 |
| LimitMem |
integer |
任意 |
アプリケーションインスタンスが使用できるメモリの最大量。単位: MB。LimitMem の値は RequestsMem の値以上である必要があります。 |
2 |
| RequestsCpu |
integer |
任意 |
作成時にアプリケーションインスタンスに要求される CPU コアの数。単位: コア。値 0 は制限がないことを意味します。RequestsmCpu を指定した場合、このパラメーターは無視されます。 |
0 |
| RequestsMem |
integer |
任意 |
作成時にアプリケーションインスタンスに要求されるメモリの量。単位: MB。値 0 は制限がないことを意味します。RequestsMem の値は LimitMem の値より大きくすることはできません。 |
0 |
| Command |
string |
任意 |
アプリケーションの起動コマンド。このパラメーターを設定すると、イメージの元の起動コマンドが上書きされます。 |
ls |
| CommandArgs |
string |
任意 |
起動コマンドの引数。引数は文字列の JSON 配列です。例: |
[{"argument":"-lh"}] |
| AppName |
string |
必須 |
アプリケーションの名前。名前は文字で始まる必要があり、数字、文字、ハイフン (-) を含めることができます。名前の長さは最大 36 文字です。 |
doc-test |
| IntranetSlbProtocol |
string |
任意 |
イントラネット SLB インスタンスで使用されるプロトコル。有効な値: TCP、HTTP、および HTTPS。 |
TCP |
| IntranetSlbId |
string |
任意 |
イントラネット SLB インスタンスの ID。このパラメーターを指定しない場合、EDAS は自動的に新しい SLB インスタンスを購入します。 |
ae93******** |
| ClusterId |
string |
必須 |
クラスターの ID。ListCluster 操作を呼び出してクラスター ID をクエリできます。詳細については、「ListCluster」をご参照ください。 |
c9cd**** |
| InternetSlbId |
string |
任意 |
インターネット SLB インスタンスの ID。このパラメーターを指定しない場合、EDAS は自動的に新しい SLB インスタンスを購入します。 |
a3d4******** |
| InternetSlbProtocol |
string |
任意 |
インターネット SLB インスタンスで使用されるプロトコル。有効な値: TCP、HTTP、および HTTPS。 |
TCP |
| InternetSlbPort |
integer |
任意 |
インターネット SLB インスタンスのフロントエンドポート。値は 1 から 65535 の範囲である必要があります。 |
80 |
| InternetTargetPort |
integer |
任意 |
内部 SLB インスタンスのバックエンドポート。これはアプリケーションのサービスポートとしても機能します。ポート番号は 1 から 65535 までの整数である必要があります。 |
8080 |
| Envs |
string |
任意 |
デプロイメントの環境変数。値はオブジェクトの JSON 配列である必要があります。3 種類の環境変数がサポートされています: 通常の環境変数、Kubernetes ConfigMap 環境変数、および Kubernetes Secret 環境変数。通常の環境変数のフォーマットは次のとおりです:
ConfigMap を使用して、特定のキーの値をコンテナーの環境変数に挿入できます。フォーマットは次のとおりです:
Secret を使用して、特定のキーの値をコンテナーの環境変数に挿入できます。フォーマットは次のとおりです:
説明
この構成をクリアするには、値を空の JSON 配列 ([]) に設定します。 |
[{"name":"x1","value":"y1"},{"name":"x2","valueFrom":{"configMapKeyRef":{"name":"my-config","key":"y2"}}},{"name":"x3","valueFrom":{"secretKeyRef":{"name":"my-secret","key":"y3"}}}] |
| PreStop |
string |
任意 |
コンテナーが停止する前に実行されるスクリプト。例: この構成をクリアするには、値を |
{\"exec\":{\"command\":[\"ls\",\"/\"]}}" |
| PostStart |
string |
任意 |
コンテナーが開始された後に実行されるスクリプト。例: この構成をクリアするには、値を |
{\"exec\":{\"command\":[\"ls\",\"/\"]}}" |
| Liveness |
string |
任意 |
コンテナーの liveness プローブ。例: この構成をクリアするには、値を |
{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}} |
| Readiness |
string |
任意 |
コンテナーの readiness プローブ。チェックが失敗した場合、トラフィックは Kubernetes Service を介してコンテナーにルーティングされません。例: この構成をクリアするには、値を |
{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}} |
| NasId |
string |
任意 |
マウントする NAS ファイルシステムの ID。このパラメーターを指定せず、mountDescs が指定されている場合、新しい NAS ファイルシステムが自動的に購入され、VPC 内の vSwitch にマウントされます。 |
dfs23**** |
| MountDescs |
string |
任意 |
マウント構成の説明。値はシリアル化された JSON 文字列です。例: |
[{"nasPath": "/k8s","mountPath": "/mnt"},{"nasPath": "/files","mountPath": "/app/files"}] |
| StorageType |
string |
任意 |
NAS ファイルシステムのストレージタイプ。有効な値:
現在、Performance タイプのみがサポートされています。 |
Performance |
| LocalVolume |
string |
任意 |
ホストファイルをコンテナーにマウントするための構成。例:
|
[{"type":"","nodePath":"/localfiles","mountPath":"/app/files"},{"type":"Directory","nodePath":"/mnt","mountPath":"/app/storage"}] |
| Namespace |
string |
任意 |
Kubernetes クラスターの名前空間。このパラメーターは、アプリケーションがデプロイされる Kubernetes 名前空間を決定します。デフォルト値は default です。 |
default |
| LogicalRegionId |
string |
任意 |
EDAS 名前空間の ID。デフォルト以外の名前空間を使用する場合、このパラメーターは必須です。 |
cn-shenzhen:beta**** |
| PackageType |
string |
任意 |
アプリケーションパッケージのタイプ。有効な値: FatJar、WAR、および Image。 |
WAR |
| PackageUrl |
string |
任意 |
デプロイメントパッケージの URL。このパラメーターは、FatJar または WAR パッケージを使用してデプロイされるアプリケーションに必要です。 説明
Java または Python 用の EDAS POP API SDK のバージョンは 2.44.0 以降である必要があります。 |
https://e***.oss-cn-beijing.aliyuncs.com/s***-1.0-SNAPSHOT-spring-boot.jar |
| PackageVersion |
string |
任意 |
デプロイメントパッケージのバージョン番号。このパラメーターは WAR および FatJar パッケージに必要です。バージョン番号の意味を定義できます。 説明
Java または Python 用の EDAS POP API SDK のバージョンは 2.44.0 以降である必要があります。 |
20200720 |
| JDK |
string |
任意 |
デプロイメントパッケージが依存する Java 開発キット (JDK) のバージョン。有効な値: Open JDK 7、Open JDK 8、および Custom OpenJDK。このパラメーターはイメージベースのデプロイメントではサポートされていません。Custom OpenJDK を選択した場合は、UserBaseImageUrl パラメーターも指定する必要があります。 |
Open JDK 8 |
| WebContainer |
string |
任意 |
デプロイメントパッケージが依存する Tomcat コンテナーのバージョン。このパラメーターは、WAR パッケージを使用してデプロイされる Spring Cloud および Dubbo アプリケーションに適用されます。このパラメーターはイメージベースのデプロイメントではサポートされていません。 |
apache-tomcat-7.0.91 |
| EdasContainerVersion |
string |
任意 |
デプロイメントパッケージが依存する 説明
このパラメーターはイメージベースのデプロイメントではサポートされていません。 |
3.5.9 |
| UriEncoding |
string |
任意 |
URI エンコーディングスキーム。有効な値: ISO-8859-1、GBK、GB2312、および UTF-8。 説明
アプリケーションにこのパラメーターを設定しない場合、Tomcat のデフォルト値が使用されます。 |
GBK |
| UseBodyEncoding |
boolean |
任意 |
useBodyEncodingForURI を有効にするかどうかを指定します。 説明
アプリケーションにこのパラメーターを設定しない場合、デフォルト値の false が使用されます。 |
false |
| RequestsmCpu |
integer |
任意 |
作成時にアプリケーションインスタンスに要求される CPU コアの数。単位: ミリコア。 |
500 |
| LimitmCpu |
integer |
任意 |
アプリケーションインスタンスが使用できる CPU コアの最大数。単位: ミリコア。値 0 は制限がないことを意味します。 |
1000 |
| RuntimeClassName |
string |
任意 |
コンテナーランタイムのタイプ。このパラメーターは、サンドボックス化されたコンテナーを使用するクラスターにのみ適用されます。 |
runc |
| DeployAcrossZones |
string |
任意 |
アプリケーションインスタンスを複数のゾーンに分散するかどうかを指定します。値 |
true |
| Timeout |
integer |
任意 |
変更プロセスのタイムアウト期間。単位: 秒。値は 1 から 1800 の範囲である必要があります。このパラメーターを指定しない場合、デフォルト値の 1800 が使用されます。 |
60 |
| EnableAhas |
boolean |
任意 |
Application High Availability Service (AHAS) を有効にするかどうかを指定します:
|
true |
| WebContainerConfig |
string |
任意 |
Tomcat コンテナーの構成。構成をクリアするには、値を "" または "{}" に設定します:
|
{"useDefaultConfig":false,"contextInputType":"custom","contextPath":"hello","httpPort":8088,"maxThreads":400,"uriEncoding":"UTF-8","useBodyEncoding":true,"useAdvancedServerXml":false} |
| JavaStartUpConfig |
string |
任意 |
Java 起動パラメーター。Java アプリケーションの起動パラメーターを構成できます。メモリ、アプリケーション、ガベージコレクション (GC) ポリシー、ツール、サービス登録と検出、およびカスタムパラメーターを構成できます。適切なパラメーター構成は、GC のオーバーヘッドを削減し、サーバーの応答時間を短縮し、スループットを向上させるのに役立ちます。値は JSON 文字列です。original は構成値を指定し、startup は起動パラメーターを指定します。システムはすべての startup 値を自動的に連結して、アプリケーションの Java 起動パラメーターとして使用します。構成をクリアするには、値を
|
{"InitialHeapSize":{"original":512,"startup":"-Xms512m"},"MaxHeapSize":{"original":1024,"startup":"-Xmx1024m"},"CustomParams":{"original":"-Dcustom.property.sample=false","startup":"-Dcustom.property.sample=false"}} |
| SlsConfigs |
string |
任意 |
Logstore の構成。構成をクリアするには、値を
|
[{"logstore":"thisisanotherfilelog","type":"file","logDir":"/var/log/*"},{"logstore":"","type":"stdout","logDir":"stdout.log"},{"logstore":"thisisafilelog","type":"file","logDir":"/tmp/log/*"}] |
| IsMultilingualApp |
boolean |
任意 |
アプリケーションが多言語アプリケーションであるかどうかを指定します。 |
true |
| DeployAcrossNodes |
string |
任意 |
アプリケーションインスタンスを複数のノードに分散するかどうかを指定します。値 |
true |
| PvcMountDescs |
string |
任意 |
Kubernetes PersistentVolumeClaim (PVC) をマウントするための構成。Kubernetes PVC ボリュームをコンテナー内の指定されたディレクトリにマウントできます。PvcMountDescs には次のパラメーターが含まれます:
|
[{"pvcName":"nas-pvc-1","mountPaths":[{"mountPath":"/usr/share/nginx/data"},{"mountPath":"/usr/share/nginx/html","readOnly":true}]}] |
| ConfigMountDescs |
string |
任意 |
Kubernetes ConfigMap と Secret をマウントするための構成。ConfigMap と Secret をコンテナー内の指定されたディレクトリにマウントできます。ConfigMountDescs には次のパラメーターが含まれます:
|
[{"name":"nginx-config","type":"ConfigMap","mountPath":"/etc/nginx"},{"name":"tls-secret","type":"secret","mountPath":"/etc/ssh"}] |
| CsClusterId |
string |
任意 |
インポートされたことのないクラスターにアプリケーションを作成する場合にのみ、CsClusterId を指定する必要があります。 |
abcdefg |
| EnableAsm |
boolean |
任意 |
インポートされたことのないクラスターにアプリケーションを作成し、Service Mesh (ASM) を有効にする場合にのみ、このパラメーターを true に設定する必要があります。 |
false |
| EnvFroms |
string |
任意 |
Kubernetes EnvFrom タイプの環境変数の構成。指定された ConfigMap または Secret を指定されたディレクトリにマウントできます。各キーはディレクトリ内のファイルに対応します。ファイルの内容はキーの値です。 EnvFroms には次のパラメーターが含まれます:
|
[{"name":"appname","valueFrom":{"configMapKeyRef":{"name":"appconf","key":"name"}}}] |
| EmptyDirs |
string |
任意 |
Kubernetes emptyDir ボリュームをマウントするための構成。emptyDir ボリュームをコンテナー内の指定されたディレクトリにマウントできます。EmptyDirs には次のパラメーターが含まれます:
|
[{"mountPath":"/app-log","subPathExpr":"$(POD_IP)"},{"readOnly":true,"mountPath":"/etc/nginx"}] |
| BuildPackId |
string |
任意 |
EDAS Container のバージョン。このパラメーターは |
-1 |
| CustomAffinity |
string |
任意 |
カスタムアフィニティ。 |
demo |
| CustomTolerations |
string |
任意 |
カスタムの Toleration。 |
demo |
| ResourceGroupId |
string |
任意 |
リソースグループの ID。 |
461 |
| Annotations |
string |
任意 |
アプリケーション Pod のアノテーション。 |
{"annotation-name-1":"annotation-value-1","annotation-name-2":"annotation-value-2"} |
| Labels |
string |
任意 |
アプリケーション Pod のラベル。 |
{"label-name-1":"label-value-1","label-name-2":"label-value-2"} |
| EnableEmptyPushReject |
boolean |
任意 |
空のプッシュに対する保護を有効にするかどうかを指定します:
|
false |
| EnableLosslessRule |
boolean |
任意 |
グレースフル起動ルールを有効にするかどうかを指定します:
|
true |
| LosslessRuleWarmupTime |
integer |
任意 |
サービスのウォームアップ期間。単位: 秒。値は 0 から 86400 の範囲である必要があります。 |
120 |
| LosslessRuleDelayTime |
integer |
任意 |
サービス登録の遅延。単位: 秒。値は 0 から 86400 の範囲である必要があります。 |
0 |
| LosslessRuleFuncType |
integer |
任意 |
サービスのウォームアップ曲線。値は 0 から 20 の範囲である必要があります。デフォルト値: 2。この値は通常のウォームアップシナリオに適しており、ウォームアップ期間中にサービスプロバイダーが受信するトラフィックが二次曲線に従うことを示します。 |
2 |
| LosslessRuleAligned |
boolean |
任意 |
readiness プローブがパスされる前にサービス登録が完了するグレースフルローリングデプロイモードを有効にするかどうかを指定します:
|
false |
| LosslessRuleRelated |
boolean |
任意 |
readiness プローブがパスされる前にサービスのウォームアップが完了するグレースフルローリングデプロイモードを有効にするかどうかを指定します:
|
false |
| ServiceConfigs |
string |
任意 |
Kubernetes Service の構成。 |
[{"name": "test-svc-create","serviceType":"ClusterIP","portMappings":[{"servicePort": {"targetPort":8080,"port":80,"protocol":"TCP"}}]}] |
| AppTemplateName |
string |
任意 |
アプリケーションの作成に使用されるアプリケーションテンプレートの名前。アプリケーションの作成時にアプリケーションテンプレートを指定すると、アプリケーションテンプレートと AppConfig パラメーターが優先的に使用されてアプリケーション構成が決定されます。他の構成は無視されます。 |
app-template001 |
| AppConfig |
string |
任意 |
アプリケーションテンプレートが使用される場合のアプリケーション構成。値は JSON 文字列です。 |
{} |
| LimitEphemeralStorage |
integer |
任意 |
最大エフェメラルストレージ。単位: GB。値 0 は制限がないことを意味します。 |
4 |
| RequestsEphemeralStorage |
integer |
任意 |
最小エフェメラルストレージ。単位: GB。値 0 は制限がないことを意味します。 |
2 |
| SecretName |
string |
任意 |
イメージプルシークレットの名前。シークレットを作成する必要があります。 |
edas-app-01-image-secret |
| ContainerRegistryId |
string |
任意 |
イメージリポジトリのビルドに使用されるリポジトリの ID。このパラメーターを空のままにすると、EDAS が提供するデフォルトのリポジトリが使用されます。現在、EDAS が提供するデフォルトのリポジトリのみがサポートされています。 |
leave empty |
| WorkloadType |
string |
任意 |
ワークロードのタイプ。現在、デプロイメントのみがサポートされています。 |
Deployment |
| Sidecars |
string |
任意 |
アプリケーション Pod のサイドカーコンテナー。コンテナー構成を YAML 形式で設定できます。値は、サイドカーコンテナーの Base64 エンコードされた YAML 構成です。 |
[{"yamlEncoded":"Y29tbWFuZDoKICAtIHRhaWwKICAtICctZicKICAtIC9kZXYvbnVsbAppbWFnZTogJ2J1c3lib3g6bGF0ZXN0JwpuYW1lOiBidXN5Ym94Cg=="}] |
| InitContainers |
string |
任意 |
アプリケーション Pod の init コンテナー。コンテナー構成を YAML 形式で設定できます。値は、init コンテナーの Base64 エンコードされた YAML 構成です。 |
[ { "yamlEncoded": "Y29tbWFuZDoKICAtIHNsZWVwCiAgLSAnNjAnCmltYWdlOiAnYnVzeWJveDpsYXRlc3QnCm5hbWU6IGluaXQtYnVzeWJveAo=" } ] |
| UserBaseImageUrl |
string |
任意 |
カスタム JDK ランタイムを使用する場合、ベースイメージのアドレスを構成する必要があります。アドレスはインターネット経由でアクセス可能である必要があります。EDAS サーバーはイメージをプルしてアプリケーションイメージをビルドします。 |
openjdk:8u302 |
| TerminateGracePeriod |
integer |
任意 |
グレースフルストップのタイムアウト期間。単位: 秒。 |
120 |
| ImagePlatforms |
string |
任意 |
イメージプラットフォームのアーキテクチャ。このパラメーターは、WAR または JAR パッケージを使用してデプロイする場合に有効です。例:
|
linux/arm64,linux/amd64 |
| Startup |
string |
任意 |
起動プローブ。起動プローブを使用して、起動が遅いコンテナーの liveness をチェックし、起動前にコンテナーが強制終了されるのを防ぐことができます。例: {"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"httpGet": {"path": "/consumer","port": 8080,"scheme": "HTTP","httpHeaders": [{"name": "test","value": "testvalue"}]}}。 この構成をクリアするには、値を "" または {} に設定します。このパラメーターを設定しない場合、無視されます。 |
{"failureThreshold": 3,"initialDelaySeconds": 5,"successThreshold": 1,"timeoutSeconds": 1,"tcpSocket":{"host":"", "port":8080}} |
| FeatureConfig |
string |
任意 |
カスタムの監視および管理ソリューションの構成。 |
{"features":[{"name":"base.combination.arms","enable":true},{"name":"base.combination.mse","enable":true}]} |
| CustomAgentVersion |
string |
任意 |
エージェントのバージョン。 |
2.8.3,3.2.10,4.3.1 |
| SecurityContext |
string |
任意 |
アプリケーション Pod コンテナーの SecurityContext 属性。値は、SecurityContext の Base64 エンコードされた YAML 構成です。 |
{"yamlEncoded":"cnVuQXNVc2VyOiAwCnJ1bkFzR3JvdXA6IDA="} |
レスポンスフィールド
|
フィールド |
型 |
説明 |
例 |
|
object |
リクエストへの応答。 |
||
| Code |
integer |
インターフェイスのステータスコードまたは POP エラーコード。 |
200 |
| Message |
string |
追加情報。 |
success |
| RequestId |
string |
リクエストの ID。 |
b197-40ab-9155-**** |
| ApplicationInfo |
object |
アプリケーションの詳細。 |
|
| ChangeOrderId |
string |
変更プロセスの ID。GetChangeOrderInfo 操作を呼び出して ID をクエリできます。詳細については、「GetChangeOrderInfo」をご参照ください。 |
cd65b247-****-475b-ad4b-7039040d625c |
| AppName |
string |
アプリケーションの名前。 |
test |
| Dockerize |
boolean |
アプリケーションが Docker アプリケーションであるかどうかを示します。
|
true |
| Owner |
string |
アプリケーションのオーナー。 |
zp |
| EdasId |
string |
ユーザーアカウントの ID。 |
1172****6608**** |
| ClusterType |
integer |
アプリケーションがデプロイされているクラスターのタイプ。
|
5 |
| AppId |
string |
アプリケーションの ID。ListApplication 操作を呼び出してアプリケーション ID をクエリできます。詳細については、「ListApplication」をご参照ください。 |
e83acea6-****-47e1-96ae-c0e95377**** |
| UserId |
string |
アプリケーションの作成に使用される Alibaba Cloud アカウント。 |
edas_test****@aliyun****.com |
| RegionId |
string |
リージョンの ID。 |
cn-beijing |
例
成功レスポンス
JSONJSON
{
"Code": 200,
"Message": "success",
"RequestId": "b197-40ab-9155-****",
"ApplicationInfo": {
"ChangeOrderId": "cd65b247-****-475b-ad4b-7039040d625c",
"AppName": "test",
"Dockerize": true,
"Owner": "zp",
"EdasId": "1172****6608****",
"ClusterType": 5,
"AppId": "e83acea6-****-47e1-96ae-c0e95377****",
"UserId": "edas_test****@aliyun****.com",
"RegionId": "cn-beijing"
}
}
エラーコード
完全なリストについては、「エラーコード」をご参照ください。
変更履歴
完全なリストについては、「変更履歴」をご参照ください。