ALIYUN::SAE::Application タイプは、Serverless App Engine (SAE) でアプリケーションを作成するために使用されます。
構文
{
"Type": "ALIYUN::SAE::Application",
"Properties": {
"Timezone": String,
"AppDescription": String,
"MountDesc": String,
"NasId": String,
"WarStartOptions": String,
"Liveness": String,
"Memory": Integer,
"WebContainer": String,
"SlsConfigs": String,
"Cpu": Integer,
"Deploy": Boolean,
"PackageVersion": String,
"AppName": String,
"Jdk": String,
"JarStartArgs": String,
"PreStop": String,
"Readiness": String,
"PackageType": String,
"CommandArgs": String,
"Envs": String,
"VSwitchId": String,
"ImageUrl": String,
"PostStart": String,
"JarStartOptions": String,
"MountHost": String,
"Replicas": Integer,
"CustomHostAlias": String,
"VpcId": String,
"Tags": List,
"SecurityGroupId": String,
"Command": String,
"EdasContainerVersion": String,
"PackageUrl": String,
"NamespaceId": String,
"AssociateEip": Boolean,
"AcrInstanceId": String,
"OssAkId": String,
"ProgrammingLanguage": String,
"OssAkSecret": String,
"Python": String,
"BaseAppId": String,
"EnableEbpf": String,
"PhpArmsConfigLocation": String,
"PhpConfig": String,
"MicroRegistrationConfig": String,
"TerminationGracePeriodSeconds": Integer,
"ConfigMapMountDesc": String,
"PvtzDiscoverySvc": String,
"AcrAssumeRoleArn": String,
"TomcatConfig": String,
"AppSource": String,
"PythonModules": String,
"NasConfigs": String,
"MicroRegistration": String,
"ServiceTags": String,
"ImagePullSecrets": String,
"AutoConfig": Boolean,
"KafkaConfigs": String,
"Php": String,
"OssMountDescs": List,
"PhpConfigLocation": String,
"SaeVersion": String,
"NewSaeVersion": String,
"EnableNewArms": Boolean,
"EnableSidecarResourceIsolated": Boolean,
"SidecarContainersConfig": List,
"InitContainersConfig": List
}
}プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
AppName | String | はい | いいえ | アプリケーション名。 | 名前は最大 36 文字です。先頭は英字である必要があり、英字、数字、ハイフン (-) を使用できます。 |
Cpu | Integer | はい | いいえ | 各インスタンスに必要な CPU コア数。定義された仕様のインスタンスのみがサポートされます。 | 有効な値:
単位: ミリコア。 |
Memory | Integer | はい | いいえ | 各インスタンスに必要なメモリサイズ。定義された仕様のインスタンスのみがサポートされます。 | メモリサイズは CPU コアと連動します。次の仕様がサポートされています:
単位:MB。 |
Replicas | Integer | はい | いいえ | インスタンスの初期数。 | なし |
PackageType | String | はい | いいえ | アプリケーションパッケージのタイプ。 | 有効な値:
|
Timezone | String | いいえ | はい | タイムゾーン。 | デフォルト値:Asia/Shanghai。 |
AppDescription | String | いいえ | いいえ | アプリケーションの説明。 | 説明は最大 1,024 文字まで入力できます。 |
MountDesc | String | いいえ | はい | マウントの説明。 | なし |
NasId | String | いいえ | はい | マウントする NAS ファイルシステムの ID。 | NAS ファイルシステムには、利用可能なマウントポイントのクォータがあるか、そのマウントポイントが VPC 内の vSwitch 上にある必要があります。このパラメーターを指定せずに MountDesc パラメーターを指定した場合、NAS ファイルシステムが自動的に購入され、VPC 内の vSwitch にマウントされます。 |
WarStartOptions | String | いいえ | はい | WAR パッケージの起動オプション。 | デフォルトの起動コマンドは次のとおりです: |
Liveness | String | いいえ | はい | コンテナーのヘルスチェック。ヘルスチェックに失敗したコンテナーは再起動されます。 | 現在、コンテナー内でコマンドを実行してヘルスチェックを実行することのみが可能です。例: |
WebContainer | String | いいえ | はい | デプロイメントパッケージが依存する Tomcat コンテナーのバージョン。 | このパラメーターはイメージではサポートされていません。 |
SlsConfigs | String | いいえ | はい | ファイルログ収集設定。 | なし |
Deploy | Boolean | いいえ | いいえ | アプリケーションをすぐにデプロイするどうかを指定します。 | 有効な値:
|
Tags | List | いいえ | はい | タグ。 | 最大 20 個のタグを追加できます。 |
PackageVersion | String | いいえ | はい | デプロイメントパッケージのバージョン番号。 | このパラメーターは、PackageType が War または FatJar に設定されている場合に必須です。 |
Jdk | String | いいえ | はい | デプロイメントパッケージが依存する JDK のバージョン。 | このパラメーターはイメージではサポートされていません。 |
JarStartArgs | String | いいえ | はい | JAR パッケージの起動引数。 | デフォルトの起動コマンドは次のとおりです: |
PreStop | String | いいえ | はい | コンテナーが停止する前に実行するスクリプト。 | コンテナーが停止する前に実行するスクリプト。例: |
Readiness | String | いいえ | はい | 準備完了チェック用のスクリプト。 | 準備完了チェック用のスクリプト。例: ヘルスチェックに複数回失敗したコンテナーは再起動されます。ヘルスチェックに合格しないコンテナーは、SLB からのトラフィックを受信しません。 |
CommandArgs | String | いいえ | はい | イメージ起動コマンドの引数。 | なし |
Envs | String | いいえ | はい | コンテナーの環境変数。 | 環境変数のフォーマットは次のとおりです:
|
VSwitchId | String | いいえ | いいえ | アプリケーションインスタンスの ENI が配置されている vSwitch。 | vSwitch は指定された VPC 内にある必要があります。vSwitch は EDAS 名前空間にバインドされています。このパラメーターを指定しない場合、名前空間にバインドされている VSwitchId が使用されます。 |
ImageUrl | String | いいえ | はい | イメージのアドレス。 | Image タイプのアプリケーションに対してのみイメージアドレスを設定できます。 |
PostStart | String | いいえ | はい | コンテナーの起動後に実行するスクリプト。 | コンテナーの起動後に実行するスクリプト。例: |
JarStartOptions | String | いいえ | はい | JAR パッケージの起動オプション。 | デフォルトの起動コマンドは次のとおりです: |
MountHost | String | いいえ | はい | VPC 内の NAS ファイルシステムのマウントターゲット。 | なし |
CustomHostAlias | String | いいえ | はい | コンテナー内のカスタムホストマッピング。 | カスタムホストマッピングのフォーマットは次のとおりです:
|
VpcId | String | いいえ | いいえ | SAE 名前空間に対応する VPC。 | SAE では、1 つの名前空間は 1 つの VPC にのみ対応でき、変更することはできません。名前空間で SAE アプリケーションを初めて作成すると、バインディング関係が形成されます。複数の名前空間が 1 つの VPC に対応できます。このパラメーターを入力しない場合、デフォルトで名前空間にバインドされている VpcId が使用されます。 |
SecurityGroupId | String | いいえ | いいえ | セキュリティグループ ID。 | なし |
Command | String | いいえ | はい | イメージの起動コマンド。 | コマンドは、コンテナー内に存在する実行可能オブジェクトである必要があります。例: sleep。 コマンドは、コンテナー内に存在する実行可能なオブジェクトである必要があります。例: sleep。このコマンドを設定すると、イメージの元の起動コマンドがオーバーライドされます。 |
EdasContainerVersion | String | いいえ | はい | EDAS Pandora アプリケーションが使用するランタイム環境。 | なし |
PackageUrl | String | いいえ | はい | デプロイメントパッケージのアドレス。 | このパラメーターは、PackageType が War または FatJar に設定されている場合に有効です。 |
NamespaceId | String | はい | いいえ | EDAS 名前空間の ID。 | 名前が小文字とハイフン (-) で構成される名前空間のみがサポートされます。名前は小文字で始まる必要があります。 |
AssociateEip | Boolean | いいえ | いいえ | EIP をバインドするかどうかを指定します。 | 有効な値:
|
AcrInstanceId | String | いいえ | はい | ACR Enterprise インスタンスの ID。 | なし |
OssAkId | String | いいえ | いいえ | OSS への読み書き用の AccessKey ID。 | なし |
ProgrammingLanguage | String | いいえ | いいえ | アプリケーションを作成するための技術スタック言語。 | 有効な値:
|
OssAkSecret | String | いいえ | いいえ | OSS への読み書き用の AccessKey シークレット。 | なし |
Python | String | いいえ | いいえ | Python 環境。 | PYTHON 3.9.15 がサポートされています。 |
BaseAppId | String | いいえ | いいえ | ベースアプリケーションの ID。 | なし |
EnableEbpf | String | いいえ | いいえ | eBPF テクノロジーに基づいて、非 Java アプリケーションのアプリケーション監視を有効にします。 | 有効な値:
|
PhpArmsConfigLocation | String | いいえ | いいえ | PHP アプリケーション監視のマウントパス。PHP サーバーがこのパスから設定ファイルをロードすることを確認してください。 | 設定内容を管理する必要はありません。SAE は自動的に正しい設定ファイルをレンダリングします。 |
PhpConfig | String | いいえ | いいえ | PHP 設定ファイルの内容。 | なし |
MicroRegistrationConfig | String | いいえ | いいえ | レジストリの設定情報。 | なし |
TerminationGracePeriodSeconds | Integer | いいえ | いいえ | 安全停止のタイムアウト期間。 | デフォルト値は 30 です。単位: 秒。値は 1 から 300 の範囲である必要があります。 |
ConfigMapMountDesc | String | いいえ | いいえ | ConfigMap マウントの説明。 | 名前空間設定ページで作成された設定項目を使用して、設定情報をコンテナーに挿入します。パラメーターは次のとおりです:
説明
|
PvtzDiscoverySvc | String | いいえ | いいえ | K8s Service の登録と検出を有効にします。 | パラメーターは次のとおりです:
|
AcrAssumeRoleArn | String | いいえ | いいえ | アカウント間でイメージをプルするために必要な RAM ロールの ARN。 | 詳細については、「RAM ロールに権限を付与する」をご参照ください。 |
TomcatConfig | String | いいえ | いいえ | Tomcat ファイル設定。 | 設定を削除するには "" または "{}" に設定します:
|
AppSource | String | いいえ | いいえ | マイクロサービスアプリケーション。 | 有効値:
|
PythonModules | String | いいえ | いいえ | カスタムインストールモジュールの依存関係。 | デフォルトでは、ルートディレクトリの requirements.txt ファイルで定義された依存関係がインストールされます。パッケージが設定またはカスタマイズされていない場合は、インストールする依存関係を指定できます。 |
NasConfigs | String | いいえ | いいえ | NAS をマウントするための設定。 | パラメーターは次のとおりです:
|
MicroRegistration | String | いいえ | いいえ | Nacos レジストリを選択します。 | 有効な値:
|
ServiceTags | String | いいえ | いいえ | アプリケーションに設定されたグレースケールタグ。 | なし |
ImagePullSecrets | String | いいえ | いいえ | 対応するシークレット ID。 | なし |
AutoConfig | Boolean | いいえ | いいえ | ネットワーク環境を自動的に設定するかどうかを指定します。 | 有効な値:
説明 true を選択した場合、渡された他の NamespaceId の値は無視されます。 |
KafkaConfigs | String | いいえ | いいえ | Kafka にログを収集するための設定の概要。 | パラメーターは次のとおりです:
|
Php | String | いいえ | いいえ | PHP デプロイメントパッケージが依存する PHP のバージョン。 | なし。 |
OssMountDescs | List | いいえ | いいえ | OSS マウントの説明。 | パラメーターは次のとおりです:
|
PhpConfigLocation | String | いいえ | いいえ | PHP アプリケーション起動設定のマウントパス。 | PHP サーバーがこの設定ファイルを使用して起動することを確認してください。 |
SaeVersion | String | いいえ | いいえ | SAE バージョン。 | サポートされているバージョン:
|
NewSaeVersion | String | いいえ | いいえ | 新しい SAE バージョン。 | 有効値:
|
EnableNewArms | Boolean | いいえ | いいえ | 新しい Arms 機能を有効にするかどうかを指定します。 | 有効値:
|
EnableSidecarResourceIsolated | Boolean | いいえ | はい | サイドカーコンテナーのリソース分離を有効にするかどうかを指定します。 | 有効値:
|
SidecarContainersConfig | List | いいえ | はい | サイドカーコンテナーの設定。 | 詳細については、「SidecarContainersConfig プロパティ」をご参照ください。 |
InitContainersConfig | List | いいえ | はい | init コンテナーの設定。 | 詳細については、「InitContainersConfig プロパティ」をご参照ください。 |
SidecarContainersConfig 構文
"SidecarContainersConfig": [
{
"CommandArgs": String,
"AcrInstanceId": String,
"Memory": Integer,
"Name": String,
"EmptyDirDesc": String,
"Command": String,
"ImageUrl": String,
"Cpu": Integer,
"Envs": String,
"ConfigMapMountDesc": String
}
] SidecarContainersConfig プロパティ
プロパティ | タイプ | 必須 | 編集可能 | 説明 | 制約 |
CommandArgs | String | いいえ | はい | init コンテナーで実行されるコマンドのパラメーター | なし |
AcrInstanceId | String | いいえ | はい | ACR インスタンスの ID。 | なし |
Memory | Integer | はい | はい | サイドカーコンテナーに割り当てられるメモリ量。 | なし |
Name | String | はい | はい | サイドカーコンテナーの名前。 | なし |
EmptyDirDesc | String | いいえ | はい | emptyDir ボリュームマウントの説明。 | なし |
Command | String | いいえ | はい | init コンテナーで実行されるコマンド。 | なし |
ImageUrl | String | いいえ | はい | イメージのアドレス。 | Image タイプのアプリケーションに対してのみイメージアドレスを設定できます。 |
Cpu | Integer | はい | はい | サイドカーコンテナーに割り当てられる CPU コア数。 | なし |
Envs | String | いいえ | はい | コンテナーの環境変数。 | 例: |
ConfigMapMountDesc | String | いいえ | はい | ConfigMap マウントの説明。 | なし |
InitContainersConfig 構文
"InitContainersConfig": [
{
"Command": String,
"ConfigMapMountDesc": String,
"ImageUrl": String,
"CommandArgs": String,
"Envs": String,
"Name": String
}
] InitContainersConfig プロパティ
プロパティ | タイプ | 必須 | 更新を許可 | 説明 | 制約 |
Command | String | いいえ | はい | init コンテナーで実行するコマンド。 | なし |
ConfigMapMountDesc | String | いいえ | いいえ | ConfigMap マウントの説明。 | なし |
ImageUrl | String | いいえ | はい | イメージのアドレス。 | Image タイプのアプリケーションに対してのみイメージアドレスを設定できます。 |
CommandArgs | String | いいえ | はい | init コンテナーで実行するコマンドの引数。 | なし |
Envs | String | いいえ | はい | コンテナーの環境変数。 | 例: |
Name | String | はい | はい | init コンテナーの名前。 | なし |
タグの構文
"Tags": [
{
"Key": String,
"Value": String
}
] タグのプロパティ
プロパティ | タイプ | 必須 | 更新を許可 | 説明 | 制約 |
Key | String | はい | いいえ | タグキー。 | キーは 1~128 文字である必要があります。 |
Value | String | いいえ | いいえ | タグ値。 | 値は 0~128 文字である必要があります。 |
戻り値
Fn::GetAtt
AppId: アプリケーション ID。
ChangeOrderId: リリースオーダーの ID。この ID を使用して、タスクの実行ステータスをクエリできます。
例
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
NamespaceId:
Type: String
Description: |-
EDAS 名前空間の ID。名前空間の名前には小文字とハイフン (-) のみを含めることができ、先頭は英字である必要があります。
DescribeNamespaceList 操作の応答から名前空間 ID を取得できます。
VpcId:
Type: String
AssociationProperty: ALIYUN::ECS::VPC::VPCId
VSwitchId:
Type: String
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
SecurityGroupId:
Type: String
AssociationProperty: ALIYUN::ECS::SecurityGroup::SecurityGroupId
AssociationPropertyMetadata:
VpcId: ${VpcId}
Resources:
Application:
Type: ALIYUN::SAE::Application
Properties:
AppName: TestApp
NamespaceId:
Ref: NamespaceId
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitchId
SecurityGroupId:
Ref: SecurityGroupId
Cpu: 500
Memory: 1024
Replicas: 2
PackageType: War
Deploy: true
Timezone: Asia/Shanghai
Outputs: {}{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"NamespaceId": {
"Type": "String",
"Description": "EDAS 名前空間の ID。名前空間の名前には小文字とハイフン (-) のみを含めることができ、先頭は英字である必要があります。\nDescribeNamespaceList 操作の応答から名前空間 ID を取得できます。"
},
"VpcId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
},
"VSwitchId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
}
},
"SecurityGroupId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::SecurityGroup::SecurityGroupId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
}
}
},
"Resources": {
"Application": {
"Type": "ALIYUN::SAE::Application",
"Properties": {
"AppName": "TestApp",
"NamespaceId": {
"Ref": "NamespaceId"
},
"VpcId": {
"Ref": "VpcId"
},
"VSwitchId": {
"Ref": "VSwitchId"
},
"SecurityGroupId": {
"Ref": "SecurityGroupId"
},
"Cpu": 500,
"Memory": 1024,
"Replicas": 2,
"PackageType": "War",
"Deploy": true,
"Timezone": "Asia/Shanghai"
}
}
},
"Outputs": {
}
}名前空間の作成、SAE アプリケーションの作成、および SLB インスタンスのバインド方法の例については、「YAML の例」をご参照ください。