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

Resource Orchestration Service:ALIYUN::CS::ClusterAddons

最終更新日:Apr 12, 2025

ALIYUN::CS::ClusterAddons は、クラスタにコンポーネントをインストールするために使用されます。

構文

{
  "Type": "ALIYUN::CS::ClusterAddons",
  "Properties": {
    "ClusterId": String, // クラスタID
    "Addons": List, // アドオンのリスト
    "InstalledIgnore": Boolean, // インストール済みアドオンを無視するかどうか
    "WaitUntil": List, // 待機条件のリスト
    "RolePolicy": String, // ロールポリシー
    "ValidationMode": String // 検証モード
  }
}

プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ClusterId

String

はい

いいえ

クラスタの ID です。

なし。

Addons

List

はい

はい

コンポーネントの構成です。

詳細については、「Addons プロパティ」をご参照ください。

InstalledIgnore

Boolean

いいえ

いいえ

クラスタの作成時に既存のコンポーネントを無視するかどうかを指定します。

有効な値:

  • true: クラスタの作成時に既存のコンポーネントを無視します。

    クラスタを作成する場合、クラスタに新しいコンポーネントのみをインストールできます。クラスタを削除する場合、クラスタの作成時にインストールしたコンポーネントのみをアンインストールできます。

  • false (デフォルト): クラスタの作成時に既存のコンポーネントを無視しません。

WaitUntil

List

いいえ

はい

コンポーネントの作成または更新を開始した後、すべての条件が満たされるまでシステムは待機します。

詳細については、「WaitUntil プロパティ」をご参照ください。

RolePolicy

String

いいえ

はい

ロールポリシー。アプリケーションをデプロイする前に、アカウントのロールにアタッチされているポリシーを確認してください。

有効な値:

  • EnsureAdminRoleAndBinding (デフォルト): 管理者権限を持つ ros:application-admin:${user-id}\ という名前のロールを自動的に作成し、アカウントにそのロールを割り当てます。

  • None: 操作を実行しません。

ValidationMode

String

いいえ

いいえ

検証モード。

有効な値:

  • Basic: 基本的な検証。たとえば、システムはクラスタが存在するかどうかを検証します。

  • Strict: 厳密な検証。基本的な検証に加えて、システムは WaitUntil が有効かどうかを検証します。

Addons 構文

"Addons": [
  {
    "Version": String, // コンポーネントのバージョン
    "Config": String, // コンポーネントの設定
    "Name": String // コンポーネントの名前
  }
]

Addons プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

Version

String

いいえ

いいえ

コンポーネントのバージョンです。

なし。

Config

String

いいえ

はい

コンポーネントの構成です。

なし。

Name

String

はい

いいえ

コンポーネントの名前です。

なし。

WaitUntil 構文

"WaitUntil": [
  {
   "ApiVersion": String, // APIバージョン
   "FirstMatch": Boolean, // 最初の一致のみを返すかどうか
   "Timeout": Integer, // タイムアウト時間(秒)
   "JsonPath": String, // JSONPath式
   "Namespace": String, // Kubernetes 名前空間
   "Stage": String, // 待機ステージ
   "Name": String, // リソース名
   "ValueType": String, // 値のタイプ
   "Kind": String, // リソースの種類
   "Value": String, // 比較値
   "Operator": String // 比較演算子
  }
]

WaitUntil プロパティ

プロパティ

タイプ

必須

編集可能

説明

制約

ApiVersion

String

いいえ

はい

API のバージョンです。

なし。

FirstMatch

Boolean

いいえ

はい

JSONPath 式を使用してフィルタリングされた結果で、最初に一致した結果のみを返すかどうかを指定します。

有効な値:

  • true

  • false (デフォルト)

Timeout

Integer

いいえ

はい

条件が満たされるまで待機するタイムアウト期間です。

単位: 秒。

JsonPath

String

いいえ

はい

結果をフィルタリングするために使用する JSONPath 式です。

なし。

Namespace

String

いいえ

はい

リソースの Kubernetes 名前空間です。

デフォルト値: DefaultNamespace。

Stage

String

いいえ

いいえ

システムが待機する 1 つ以上のステージです。

有効な値:

  • Create/Update (デフォルト): 作成および更新ステージ

  • Delete: 削除ステージ

Name

String

はい

はい

クエリを実行する Kubernetes リソースの名前です。

なし。

ValueType

String

いいえ

はい

値のタイプです。

デフォルト値: String。

Kind

String

はい

はい

クエリを実行する Kubernetes リソースのタイプです。

なし。

Value

String

いいえ

はい

JSONPath 式の結果と比較される値です。

なし。

Operator

String

はい

はい

JSONPath 式の結果と値を比較するために使用する演算子です。

なし。

戻り値

Fn::GetAtt

  • ClusterId: クラスタの ID です。

  • WaitUntilData: WaitUntil 内の JSONPath 値です。

ROSTemplateFormatVersion: '2015-09-01'
Parameters:
  Addons:
    Description: 'Kubernetes クラスタ用アドオンプラグインの組み合わせ。
      ネットワークプラグイン: Flannel および Terway ネットワークプラグインを含む
      ログサービス: オプション。ログサービスが有効になっていない場合、クラスタ監査機能は使用できません。
      Ingress: Ingress コンポーネントのインストールはデフォルトで有効になっています。'
    Type: Json
  ClusterId:
    Description: クラスタID。
    Type: String
Resources:
  ClusterAddons:
    Properties:
      Addons:
        Ref: Addons
      ClusterId:
        Ref: ClusterId
    Type: ALIYUN::CS::ClusterAddons
Outputs:
  ClusterId:
    Description: クラスタID。
    Value:
      Fn::GetAtt:
      - ClusterAddons
      - ClusterId
{ // YAMLと同じ内容をJSONで表現
  "ROSTemplateFormatVersion": "2015-09-01",
  "Parameters": {
    "ClusterId": {
      "Type": "String",
      "Description": "クラスタID。" // クラスタID
    },
    "Addons": {
      "Type": "Json",
      "Description": "Kubernetes クラスタ用アドオンプラグインの組み合わせ。\nネットワークプラグイン: Flannel および Terway ネットワークプラグインを含む\nログサービス: オプション。ログサービスが有効になっていない場合、クラスタ監査機能は使用できません。\nIngress: Ingress コンポーネントのインストールはデフォルトで有効になっています。"
    }
  },
  "Resources": {
    "ClusterAddons": {
      "Type": "ALIYUN::CS::ClusterAddons",
      "Properties": {
        "ClusterId": {
          "Ref": "ClusterId"
        },
        "Addons": {
          "Ref": "Addons"
        }
      }
    }
  },
  "Outputs": {
    "ClusterId": {
      "Description": "クラスタ ID。", // クラスタID
      "Value": {
        "Fn::GetAtt": [
          "ClusterAddons",
          "ClusterId"
        ]
      }
    }
  }
}