API

Red Hat Advanced Cluster Management for Kubernetes 2.8

API

概要

アプリケーションリソース、チャンネル、サブスクリプションの作成および管理、ならびに情報のクエリーに使用できる API のリストを表示します。

第1章 API

API にアクセスして、アプリケーションリソース、チャネル、サブスクリプションの作成や管理、さらに情報のクエリーを行うことができます。

ユーザーに必要なアクセス権: ロールが割り当てられているアクションのみを実行できます。ロールベースのアクセス制御 のドキュメントで、アクセス要件について確認してください。

詳細は、以下の各リソースに関する API のドキュメントを参照してください。

1.1. Clusters API

1.1.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes のクラスターリソースについて説明します。クラスターリソースには、create、query、delete、update の 4 つの要求を使用できます。ManagedCluster はマネージドクラスターの望ましい状態と現在の状態を表します。ManagedCluster はクラスタースコープのリソースです。

1.1.1.1. バージョン情報

Version: 2.8.0

1.1.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.1.1.3. タグ

  • cluster.open-cluster-management.io: クラスターを作成して管理します。

1.1.2. パス

1.1.2.1. 全クラスターのクエリー

GET /cluster.open-cluster-management.io/v1/managedclusters
1.1.2.1.1. 説明

クラスターに対してクエリーを実行して詳細を確認します。

1.1.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

1.1.2.1.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.1.2.1.4. 消費
  • cluster/yaml
1.1.2.1.5. タグ
  • cluster.open-cluster-management.io

1.1.2.2. クラスターの作成

POST /cluster.open-cluster-management.io/v1/managedclusters
1.1.2.2.1. 説明

クラスターの作成

1.1.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

Body

body
必須

作成するクラスターを記述するパラメーター

クラスター

1.1.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.1.2.2.4. 消費
  • cluster/yaml
1.1.2.2.5. タグ
  • cluster.open-cluster-management.io
1.1.2.2.6. HTTP リクエストの例
1.1.2.2.6.1. 要求の body
{
  "apiVersion" : "cluster.open-cluster-management.io/v1",
  "kind" : "ManagedCluster",
  "metadata" : {
    "labels" : {
      "vendor" : "OpenShift"
    },
    "name" : "cluster1"
  },
  "spec": {
    "hubAcceptsClient": true,
    "managedClusterClientConfigs": [
      {
        "caBundle": "test",
        "url": "https://test.com"
      }
    ]
  },
  "status" : { }
}

1.1.2.3. 単一クラスターのクエリー

GET /cluster.open-cluster-management.io/v1/managedclusters/{cluster_name}
1.1.2.3.1. 説明

1 つのクラスターに対してクエリーを実行して詳細を確認します。

1.1.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

cluster_name
必須

問い合わせるクラスターの名前。

string

1.1.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.1.2.3.4. タグ
  • cluster.open-cluster-management.io

1.1.2.4. クラスターの削除

DELETE /cluster.open-cluster-management.io/v1/managedclusters/{cluster_name}
DELETE /hive.openshift.io/v1/{cluster_name}/clusterdeployments/{cluster_name}
1.1.2.4.1. 説明

単一クラスターを削除します。

1.1.2.4.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

cluster_name
必須

削除するクラスターの名前。

string

1.1.2.4.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.1.2.4.4. タグ
  • cluster.open-cluster-management.io

1.1.3. 定義

1.1.3.1. クラスター

名前説明スキーマ

apiVersion
必須

ManagedCluster のバージョン管理されたスキーマ。

string

kind
必須

REST リソースを表す文字列の値

string

metadata
必須

ManagedCluster のメタデータ。

object

spec
必須

ManagedCluster の仕様。

spec

spec

名前説明スキーマ

hubAcceptsClient
必須

ハブがマネージドクラスター上の klusterlet エージェントとの接続を確立できるかどうかを指定します。デフォルト値は false で、ハブクラスターに RBAC ルールが設定されている場合にのみ true に変更できます。これにより、managedclusters/accept の仮想サブリソースを更新できます。

bool

managedClusterClientConfigs
任意

マネージドクラスターの apiserver アドレスを一覧表示します。

managedClusterClientConfigs array

leaseDurationSeconds
任意

マネージドクラスター上の klusterlet エージェントのリース更新時間間隔を指定します。デフォルトでは、klusterlet エージェントはそのリースを 60 秒ごとに更新します。

integer (int32)

taints
任意

スケジューリング中にマネージドクラスターが 1 つ以上のマネージドクラスターセットに割り当てられないようにします。

Taint array

managedClusterClientConfigs

名前説明スキーマ

URL
必須

 

string

CABundle
任意

Pattern:

"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$"

string (バイト)

Taint

名前説明スキーマ

key
必須

クラスターに適用される Taint キー。

string

value
任意

テイントキーに対応する Taint 値。

string

effect
任意

Taint を許容しない配置に対する Taint の影響。有効な値は NoSelectPreferNoSelect、および NoSelectIfNew です。

string

1.2. Clustersets API (v1beta2)

1.2.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の ClusterSet リソースについて説明します。Clusterset リソースには、create、query、delete、update の 4 つのリクエストを使用できます。ManagedClusterSet は、ManagedClusters のグループを定義します。ManagedClusterSet を参照する ManagedCluster に cluster.open-cluster-management.io/clusterset という名前のラベルを追加することで、ManagedCluster を特定の ManagedClusterSet に割り当てることができます。managedclustersets/join の仮想サブリソースに対する create 権限を許可する RBAC ルールがある場合にのみ、ManagedCluster でこのラベルを追加または削除できます。このラベルを更新するには、ソースとターゲットの両方の ManagedClusterSets でこの権限が必要です。

1.2.1.1. バージョン情報

Version: 2.8.0

1.2.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.2.1.3. タグ

  • cluster.open-cluster-management.io: Clustersets を作成して管理します。

1.2.2. パス

1.2.2.1. 全 clusterset のクエリー

GET /cluster.open-cluster-management.io/v1beta2/managedclustersets
1.2.2.1.1. 説明

Clustersets に対してクエリーを実行して詳細を確認します。

1.2.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

1.2.2.1.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.2.2.1.4. 消費
  • clusterset/yaml
1.2.2.1.5. タグ
  • cluster.open-cluster-management.io

1.2.2.2. clusterset の作成

POST /cluster.open-cluster-management.io/v1beta2/managedclustersets
1.2.2.2.1. 説明

Clusterset を作成します。

1.2.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

Body

body
必須

作成する clusterset を記述するパラメーター

Clusterset

1.2.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.2.2.2.4. 消費
  • clusterset/yaml
1.2.2.2.5. タグ
  • cluster.open-cluster-management.io
1.2.2.2.6. HTTP リクエストの例
1.2.2.2.6.1. 要求の body
{
  "apiVersion": "cluster.open-cluster-management.io/v1beta2",
  "kind": "ManagedClusterSet",
  "metadata": {
    "name": "clusterset1"
  },
  "spec": {
    "clusterSelector": {
      "selectorType": "ExclusiveClusterSetLabel"
    }
  },
  "status": {}
}

1.2.2.3. 単一 clusterset のクエリー

GET /cluster.open-cluster-management.io/v1beta2/managedclustersets/{clusterset_name}
1.2.2.3.1. 説明

単一の clusterset に対してクエリーを実行して詳細を確認します。

1.2.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

clusterset_name
必須

問い合わせる clusterset の名前。

string

1.2.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.2.2.3.4. タグ
  • cluster.open-cluster-management.io

1.2.2.4. clusterset の削除

DELETE /cluster.open-cluster-management.io/v1beta2/managedclustersets/{clusterset_name}
1.2.2.4.1. 説明

単一 clusterset を削除します。

1.2.2.4.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

clusterset_name
必須

削除する clusterset の名前。

string

1.2.2.4.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.2.2.4.4. タグ
  • cluster.open-cluster-management.io

1.2.3. 定義

1.2.3.1. Clusterset

名前スキーマ

apiVersion
必須

string

kind
必須

string

metadata
必須

object

1.3. Clustersetbindings API (v1beta2)

1.3.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の ClusterSetBinding リソースについて説明します。ClusterSetBinding リソースには、create、query、delete、update の 4 つのリクエストを使用できます。ManagedClusterSetBinding は、ManagedClusterSet を特定の namespace に投影します。managedclustersets/bind の仮想サブリソースでの create を許可する RBAC ルールがある場合は、namespace で ManagedClusterSetBinding を作成し、ManagedClusterSet にバインドできます。

1.3.1.1. バージョン情報

Version: 2.8.0

1.3.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.3.1.3. タグ

  • cluster.open-cluster-management.io: clustersetbinding を作成して管理します。

1.3.2. パス

1.3.2.1. 全 clustersetbinding のクエリー

GET /cluster.open-cluster-management.io/v1beta2/namespaces/{namespace}/managedclustersetbindings
1.3.2.1.1. 説明

clustersetbinding に対してクエリーを実行して詳細を確認します。

1.3.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

1.3.2.1.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.3.2.1.4. 消費
  • clustersetbinding/yaml
1.3.2.1.5. タグ
  • cluster.open-cluster-management.io

1.3.2.2. clustersetbinding の作成

POST /cluster.open-cluster-management.io/v1beta2/namespaces/{namespace}/managedclustersetbindings
1.3.2.2.1. 説明

clustersetbinding を作成します。

1.3.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成する clustersetbinding を記述するパラメーター

Clustersetbinding

1.3.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.3.2.2.4. 消費
  • clustersetbinding/yaml
1.3.2.2.5. タグ
  • cluster.open-cluster-management.io
1.3.2.2.6. HTTP リクエストの例
1.3.2.2.6.1. 要求の body
{
  "apiVersion" : "cluster.open-cluster-management.io/v1beta2",
  "kind" : "ManagedClusterSetBinding",
  "metadata" : {
    "name" : "clusterset1",
    "namespace" : "ns1"
  },
 "spec": {
    "clusterSet": "clusterset1"
  },
  "status" : { }
}

1.3.2.3. 単一 clustersetbinding のクエリー

GET /cluster.open-cluster-management.io/v1beta2/namespaces/{namespace}/managedclustersetbindings/{clustersetbinding_name}
1.3.2.3.1. 説明

単一の clustersetbinding に対してクエリーを実行して詳細を確認します。

1.3.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

パス

clustersetbinding_name
必須

問い合わせる clustersetbinding の名前

string

1.3.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.3.2.3.4. タグ
  • cluster.open-cluster-management.io

1.3.2.4. clustersetbinding の削除

DELETE /cluster.open-cluster-management.io/v1beta2/managedclustersetbindings/{clustersetbinding_name}
1.3.2.4.1. 説明

単一 clustersetbinding を削除します。

1.3.2.4.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

パス

clustersetbinding_name
必須

削除する clustersetbinding の名前

string

1.3.2.4.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.3.2.4.4. タグ
  • cluster.open-cluster-management.io

1.3.3. 定義

1.3.3.1. Clustersetbinding

名前説明スキーマ

apiVersion
必須

ManagedCluster のバージョン管理されたスキーマ。

string

kind
必須

REST リソースを表す文字列の値

string

metadata
必須

ManagedClusterSetBinding のメタデータ。

object

spec
必須

ManagedClusterSetBinding の仕様。

spec

spec

名前説明スキーマ

clusterSet
必須

バインドする ManagedClusterSet の名前。ManagedClusterSetBinding のインスタンス名と一致する必要があり、作成後に変更することはできません。

string

1.4. Clusterview API (v1alpha1)

1.4.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の clusterview リソースについて説明します。clusterview リソースには、アクセス可能なマネージドクラスターおよびマネージドクラスターセットのリストを表示できる CLI コマンドが含まれます。使用できる要求は、list、get、および watch の 3 つです。

1.4.1.1. バージョン情報

Version: 2.8.0

1.4.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.4.1.3. タグ

  • clusterview.open-cluster-management.io: お使いの ID がアクセスできるマネージドクラスターのリストを表示します。

1.4.2. パス

1.4.2.1. マネージドクラスターの取得

GET /managedclusters.clusterview.open-cluster-management.io
1.4.2.1.1. 説明

アクセス可能なマネージドクラスターのリストを表示します。

1.4.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

1.4.2.1.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.4.2.1.4. 消費
  • managedcluster/yaml
1.4.2.1.5. タグ
  • clusterview.open-cluster-management.io

1.4.2.2. マネージドクラスターのリスト表示

LIST /managedclusters.clusterview.open-cluster-management.io
1.4.2.2.1. 説明

アクセス可能なマネージドクラスターのリストを表示します。

1.4.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

Body

body
任意

マネージドクラスターをリスト表示するユーザー ID の名前

string

1.4.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.4.2.2.4. 消費
  • managedcluster/yaml
1.4.2.2.5. タグ
  • clusterview.open-cluster-management.io
1.4.2.2.6. HTTP リクエストの例
1.4.2.2.6.1. 要求の body
{
  "apiVersion" : "clusterview.open-cluster-management.io/v1alpha1",
  "kind" : "ClusterView",
  "metadata" : {
    "name" : "<user_ID>"
  },
  "spec": { },
  "status" : { }
}

1.4.2.3. マネージドクラスターセットの監視

WATCH /managedclusters.clusterview.open-cluster-management.io
1.4.2.3.1. 説明

アクセス可能なマネージドクラスターを確認します。

1.4.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

clusterview_name
任意

監視するユーザー ID の名前

string

1.4.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.4.2.4. マネージドクラスターセットのリスト表示

GET /managedclustersets.clusterview.open-cluster-management.io
1.4.2.4.1. 説明

アクセス可能なマネージドクラスターをリスト表示します。

1.4.2.4.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

clusterview_name
任意

監視するユーザー ID の名前

string

1.4.2.4.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.4.2.5. マネージドクラスターセットのリスト表示

LIST /managedclustersets.clusterview.open-cluster-management.io
1.4.2.5.1. 説明

アクセス可能なマネージドクラスターをリスト表示します。

1.4.2.5.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

clusterview_name
任意

監視するユーザー ID の名前

string

1.4.2.5.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.4.2.6. マネージドクラスターセットの監視

WATCH /managedclustersets.clusterview.open-cluster-management.io
1.4.2.6.1. 説明

アクセス可能なマネージドクラスターを確認します。

1.4.2.6.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

clusterview_name
任意

監視するユーザー ID の名前

string

1.4.2.6.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.5. Channels API

1.5.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の Channel リソースについて説明します。Channel リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.5.1.1. バージョン情報

Version: 2.8.0

1.5.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.5.1.3. タグ

  • channels.apps.open-cluster-management.io: deployable を作成して管理します。

1.5.2. パス

1.5.2.1. チャネルの作成

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.5.2.1.1. 説明

チャネルを作成します。

1.5.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成する deployable を記述するパラメーター

Channel

1.5.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.5.2.1.4. 消費
  • application/yaml
1.5.2.1.5. タグ
  • channels.apps.open-cluster-management.io
1.5.2.1.6. HTTP リクエストの例
1.5.2.1.6.1. 要求の body
{
  "apiVersion": "apps.open-cluster-management.io/v1",
  "kind": "Channel",
  "metadata": {
    "name": "sample-channel",
    "namespace": "default"
  },
  "spec": {
    "configMapRef": {
      "kind": "configmap",
      "name": "info-resource-filter-configmap"
    },
    "pathname": "https://charts.helm.sh/stable",
    "type": "HelmRepo"
  }
}

1.5.2.2. ターゲット namespace の全チャネルのクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels
1.5.2.2.1. 説明

チャネルに対してクエリーを実行して詳細を確認します。

1.5.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

1.5.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.5.2.2.4. 消費
  • application/yaml
1.5.2.2.5. タグ
  • channels.apps.open-cluster-management.io

1.5.2.3. namespace の単一チャネルのクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.5.2.3.1. 説明

単一のチャネルに対してクエリーを実行して詳細を確認します。

1.5.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

channel_name
必須

問い合わせる deployable の名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.5.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.5.2.3.4. タグ
  • channels.apps.open-cluster-management.io

1.5.2.4. Channel の削除

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/channels/{channel_name}
1.5.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

channel_name
必須

削除する Channel の名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.5.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.5.2.4.3. タグ
  • channels.apps.open-cluster-management.io

1.5.3. 定義

1.5.3.1. Channel

Nameスキーマ

apiVersion
必須

string

kind
必須

string

metadata
必須

object

spec
必須

spec

spec

名前説明スキーマ

configMapRef
任意

ObjectReference には参照先のオブジェクトを調査または変更するのに十分な情報が含まれます。

configMapRef

gates
任意

ChannelGate はチャネルにプロモートする基準を定義します。

gates

pathname
必須

 

string

secretRef
任意

ObjectReference には参照先のオブジェクトを調査または変更するのに十分な情報が含まれます。

secretRef

sourceNamespaces
任意

 

enum (Namespace、HelmRepo、ObjectBucket、Git、namespace、helmrepo、objectbucket、github) array

configMapRef

Name説明スキーマ

apiVersion
任意

参照先の API バージョン。

string

fieldPath
任意

オブジェクト全体ではなく一部を参照する場合に、この文字列には、desiredState.manifest.containers[2] など、有効な JSON/Go フィールドアクセスステートメントを含める必要があります。たとえば、オブジェクトの参照先が Pod 内のコンテナーの場合には、spec.containers{name} などの値に設定されます (name はイベントをトリガーしたコンテナー名に置き換えます)。またはコンテナー名が指定されていない場合には、spec.containers[2] の値に設定されます (この Pod 内でインデックス が 2 のコンテナー)。この構文が選択された唯一の理由は、オブジェクトの一部の参照を明確に定義するためです。TODO: この設計は最終版ではないため、このフィールドは今後変更になる場合があります。

string

kind
任意

参照先の種類。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/kubernetes-objects/

name
任意

参照先の名前。詳細: Names

string

namespace
任意

参照先の namespace。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

string

resourceVersion
任意

この参照が作成される特定の resourceVersion (ある場合)。詳細: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

string

uid
任意

gates

Name説明スキーマ

annotations
任意

k8s の典型的なアノテーション

annotations

labelSelector
任意

ラベルセレクターとは、一連のリソースに対するラベルクエリー機能です。matchLabels と matchExpressions の結果は AND を使用して結合されます。ラベルセレクターが空の場合は、全オブジェクトをマッチします。ラベルセレクターが null の場合は、どのオブジェクトもマッチしません。

labelSelector

name
任意

 

string

annotations

Nameスキーマ

key
任意

string

value
任意

string

labelSelector

Name説明スキーマ

matchExpressions
任意

matchExpressions はラベルセレクターの要件のリストです。要件は AND で結合されます。

matchExpressions array

matchLabels
任意

matchLabels は、{key,value} ペアのマップです。MatchLabels マップの 1 つの {key,value} は matchExpressions の要素と同じで、キーフィールドには key、演算子には In、値配列には value のみが含まれます。要件は AND で結合されます。

string、string map

matchExpressions

Name説明スキーマ

key
必須

key は、セレクターの適用先のラベルキーです。

string

operator
必須

operator はキーと値のセットの関係を表します。有効な演算子は In、NotIn、Exists、および DoesNotExist です。

string

values
任意

values は文字列値の配列です。operator が In または NotIn の場合には、values 配列を空白にできません。operator が Exists または DoesNotExist の場合には、values 配列は空白でなければなりません。この配列は、ストラテジーに基づいたマージパッチの適用中に置き換えられます。

string array

secretRef

Name説明スキーマ

apiVersion
任意

参照先の API バージョン。

string

fieldPath
任意

オブジェクト全体ではなく一部を参照する場合に、この文字列には、desiredState.manifest.containers[2] など、有効な JSON/Go フィールドアクセスステートメントを含める必要があります。たとえば、オブジェクトの参照先が Pod 内のコンテナーの場合には、spec.containers{name} などの値に設定されます (name はイベントをトリガーしたコンテナー名に置き換えます)。またはコンテナー名が指定されていない場合には、spec.containers[2] の値に設定されます (この Pod 内でインデックス が 2 のコンテナー)。この構文が選択された唯一の理由は、オブジェクトの一部の参照を明確に定義するためです。TODO: この設計は最終版ではないため、このフィールドは今後変更になる場合があります。

string

kind
任意

参照先の種類。詳細: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds

string

name
任意

参照先の名前。詳細: Names

string

namespace
任意

参照先の namespace。詳細: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/

string

resourceVersion
任意

この参照が作成される特定の resourceVersion (ある場合)。詳細: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

string

uid
任意

参照先の UID。詳細: UIDs

string

1.6. Subscriptions API

1.6.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の Subscription リソースについて説明します。Subscription リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.6.1.1. バージョン情報

Version: 2.8.0

1.6.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.6.1.3. タグ

  • subscriptions.apps.open-cluster-management.io: サブスクリプションを作成して管理します。

1.6.2. パス

1.6.2.1. サブスクリプションの作成

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions
1.6.2.1.1. 説明

サブスクリプションを作成します。

1.6.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成するサブスクリプションを記述するパラメーター

Subscription

1.6.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.6.2.1.4. 消費
  • subscription/yaml
1.6.2.1.5. タグ
  • subscriptions.apps.open-cluster-management.io
1.6.2.1.6. HTTP リクエストの例
1.6.2.1.6.1. 要求の body
{
  "apiVersion" : "apps.open-cluster-management.io/v1",
  "kind" : "Subscription",
  "metadata" : {
    "name" : "sample_subscription",
    "namespace" : "default",
    "labels" : {
      "app" : "sample_subscription-app"
    },
    "annotations" : {
      "apps.open-cluster-management.io/git-path" : "apps/sample/",
      "apps.open-cluster-management.io/git-branch" : "sample_branch"
    }
  },
  "spec" : {
    "channel" : "channel_namespace/sample_channel",
    "packageOverrides" : [ {
      "packageName" : "my-sample-application",
      "packageAlias" : "the-sample-app",
      "packageOverrides" : [ {
        "path" : "spec",
        "value" : {
          "persistence" : {
            "enabled" : false,
            "useDynamicProvisioning" : false
          },
          "license" : "accept",
          "tls" : {
            "hostname" : "my-mcm-cluster.icp"
          },
          "sso" : {
            "registrationImage" : {
              "pullSecret" : "hub-repo-docker-secret"
            }
          }
        }
      } ]
    } ],
    "placement" : {
      "placementRef" : {
        "kind" : "PlacementRule",
        "name" : "demo-clusters"
      }
    }
  }
}

1.6.2.2. 全サブスクリプションのクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions
1.6.2.2.1. 説明

サブスクリプションにクエリーを行い、詳細を確認します。

1.6.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

1.6.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.6.2.2.4. 消費
  • subscription/yaml
1.6.2.2.5. タグ
  • subscriptions.apps.open-cluster-management.io

1.6.2.3. 単一サブスクリプションのクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions/{subscription_name}
1.6.2.3.1. 説明

1 つのサブスクリプションにクエリーを行い、詳細を確認します。

1.6.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

パス

subscription_name
必須

問い合わせるサブスクリプションの名前

string

1.6.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.6.2.3.4. タグ
  • subscriptions.apps.open-cluster-management.io

1.6.2.4. サブスクリプションの削除

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/subscriptions/{subscription_name}
1.6.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

パス

subscription_name
必須

削除するサブスクリプションの名前

string

1.6.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.6.2.4.3. タグ
  • subscriptions.apps.open-cluster-management.io

1.6.3. 定義

1.6.3.1. サブスクリプション

Nameスキーマ

apiVersion
必須

string

kind
必須

string

metadata
必須

metadata

spec
必須

spec

status
任意

status

metadata

Nameスキーマ

annotations
任意

object

labels
任意

object

name
任意

string

namespace
任意

string

spec

名前スキーマ

channel
必須

string

name
任意

string

overrides
任意

overrides array

packageFilter
任意

packageFilter

packageOverrides
任意

packageOverrides array

placement
任意

placement

timewindow
任意

timewindow

overrides

Nameスキーマ

clusterName
必須

string

clusterOverrides
必須

object array

packageFilter

Name説明スキーマ

annotations
任意

 

string、string map

filterRef
任意

 

filterRef

labelSelector
任意

 

labelSelector

version
任意

Pattern : "()((\\.[0-9])(\\.)|(\\.[0-9])?(\\.[xX]))$"

string

filterRef

Nameスキーマ

name
任意

string

labelSelector

Nameスキーマ

matchExpressions
任意

matchExpressions array

matchLabels
任意

string、string map

matchExpressions

Nameスキーマ

key
必須

string

operator
必須

string

values
任意

string array

packageOverrides

Nameスキーマ

packageAlias
任意

string

packageName
必須

string

packageOverrides
任意

object array

placement

Nameスキーマ

clusterSelector
任意

clusterSelector

clusters
任意

clusters array

local
任意

boolean

placementRef
任意

placementRef

clusterSelector

Nameスキーマ

matchExpressions
任意

matchExpressions array

matchLabels
任意

string、string map

matchExpressions

Nameスキーマ

key
必須

string

operator
必須

string

values
任意

string array

clusters

Nameスキーマ

name
必須

string

placementRef

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

resourceVersion
任意

string

uid
任意

string

timewindow

Nameスキーマ

daysofweek
任意

string array

hours
任意

hours array

location
任意

string

windowtype
任意

列挙 (active、blocked、Active、Blocked)

hours

Nameスキーマ

end
任意

string

start
任意

string

status

Nameスキーマ

lastUpdateTime
任意

string (date-time)

message
任意

string

phase
任意

string

reason
任意

string

statuses
任意

object

1.7. PlacementRules API (非推奨)

1.7.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の PlacementRule リソースについて説明します。PlacementRule リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.7.1.1. バージョン情報

Version: 2.8.0

1.7.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.7.1.3. タグ

  • placementrules.apps.open-cluster-management.io: 配置ルールを作成して管理します。

1.7.2. パス

1.7.2.1. 配置ルールの作成

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules
1.7.2.1.1. 説明

配置ルールを作成します。

1.7.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成する配置ルールを記述するパラメーター

PlacementRule

1.7.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.7.2.1.4. 消費
  • application/yaml
1.7.2.1.5. タグ
  • placementrules.apps.open-cluster-management.io
1.7.2.1.6. HTTP リクエストの例
1.7.2.1.6.1. 要求の body
{
  "apiVersion" : "apps.open-cluster-management.io/v1",
  "kind" : "PlacementRule",
  "metadata" : {
    "name" : "towhichcluster",
    "namespace" : "ns-sub-1"
  },
  "spec" : {
    "clusterConditions" : [ {
      "type": "ManagedClusterConditionAvailable",
      "status": "True"
    } ],
    "clusterSelector" : { }
  }
}

1.7.2.2. 全配置ルールのクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules
1.7.2.2.1. 説明

配置ルールに対してクエリーを実行して詳細を確認します。

1.7.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

1.7.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.7.2.2.4. 消費
  • application/yaml
1.7.2.2.5. タグ
  • placementrules.apps.open-cluster-management.io

1.7.2.3. 単一の placementrule のクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules/{placementrule_name}
1.7.2.3.1. 説明

1 つの配置ルールに対してクエリーを実行して詳細を確認します。

1.7.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

パス

placementrule_name
必須

問い合わせる placementrule の名前

string

1.7.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.7.2.3.4. タグ
  • placementrules.apps.open-cluster-management.io

1.7.2.4. placementrule の削除

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/placementrules/{placementrule_name}
1.7.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

パス

placementrule_name
必須

削除する placementrule の名前

string

1.7.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.7.2.4.3. タグ
  • placementrules.apps.open-cluster-management.io

1.7.3. 定義

1.7.3.1. Placementrule

Nameスキーマ

apiVersion
必須

string

kind
必須

string

metadata
必須

object

spec
必須

spec

spec

名前スキーマ

clusterConditions
任意

clusterConditions array

clusterReplicas
任意

integer

clusterSelector
任意

clusterSelector

clusters
任意

clusters array

policies
任意

policies array

resourceHint
任意

resourceHint

schedulerName
任意

string

clusterConditions

Nameスキーマ

status
任意

string

type
任意

string

clusterSelector

Nameスキーマ

matchExpressions
任意

matchExpressions array

matchLabels
任意

string、string map

matchExpressions

Nameスキーマ

key
任意

string

Operator
任意

string

values
任意

string array

clusters

Nameスキーマ

name
任意

string

policies

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

resourceVersion
任意

string

uid
任意

string

resourceHint

Nameスキーマ

order
任意

string

type
任意

string

1.8. Applications API

1.8.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の Application リソースについて説明します。Application リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.8.1.1. バージョン情報

Version: 2.8.0

1.8.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.8.1.3. タグ

  • applications.app.k8s.io: アプリケーションを作成して管理します。

1.8.2. パス

1.8.2.1. アプリケーションの作成

POST /app.k8s.io/v1beta1/namespaces/{namespace}/applications
1.8.2.1.1. 説明

アプリケーションを作成します。

1.8.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成するアプリケーションを記述するパラメーター

アプリケーション

1.8.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.8.2.1.4. 消費
  • application/yaml
1.8.2.1.5. タグ
  • applications.app.k8s.io
1.8.2.1.6. HTTP リクエストの例
1.8.2.1.6.1. 要求の body
{
  "apiVersion" : "app.k8s.io/v1beta1",
  "kind" : "Application",
  "metadata" : {
    "labels" : {
      "app" : "nginx-app-details"
    },
    "name" : "nginx-app-3",
    "namespace" : "ns-sub-1"
  },
  "spec" : {
    "componentKinds" : [ {
      "group" : "apps.open-cluster-management.io",
      "kind" : "Subscription"
    } ]
  },
  "selector" : {
    "matchLabels" : {
      "app" : "nginx-app-details"
    }
  },
  "status" : { }
}

1.8.2.2. 全アプリケーションのクエリー

GET /app.k8s.io/v1beta1/namespaces/{namespace}/applications
1.8.2.2.1. 説明

アプリケーションにクエリーを行い、詳細を確認します。

1.8.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

1.8.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.8.2.2.4. 消費
  • application/yaml
1.8.2.2.5. タグ
  • applications.app.k8s.io

1.8.2.3. 単一アプリケーションのクエリー

GET /app.k8s.io/v1beta1/namespaces/{namespace}/applications/{application_name}
1.8.2.3.1. 説明

1 つのアプリケーションに対してクエリーを行い、詳細を確認します。

1.8.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

application_name
必須

問い合わせるアプリケーションの名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.8.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.8.2.3.4. タグ
  • applications.app.k8s.io

1.8.2.4. アプリケーションの削除

DELETE /app.k8s.io/v1beta1/namespaces/{namespace}/applications/{application_name}
1.8.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

application_name
必須

削除するアプリケーションの名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.8.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.8.2.4.3. タグ
  • applications.app.k8s.io

1.8.3. 定義

1.8.3.1. アプリケーション

Nameスキーマ

apiVersion
必須

string

kind
必須

string

metadata
必須

object

spec
必須

spec

spec

名前スキーマ

assemblyPhase
任意

string

componentKinds
任意

object array

descriptor
任意

記述子

info
任意

info array

selector
任意

object

記述子

Nameスキーマ

description
任意

string

icons
任意

icons array

keywords
任意

string array

links
任意

links array

maintainers
任意

maintainers array

notes
任意

string

owners
任意

owners array

type
任意

string

version
任意

string

icons

Nameスキーマ

size
任意

string

src
必須

string

type
任意

string

Nameスキーマ

description
任意

string

url
任意

string

maintainers

Nameスキーマ

email
任意

string

name
任意

string

url
任意

string

owners

Nameスキーマ

email
任意

string

name
任意

string

url
任意

string

info

Nameスキーマ

name
任意

string

type
任意

string

value
任意

string

valueFrom
任意

valueFrom

valueFrom

Nameスキーマ

configMapKeyRef
任意

configMapKeyRef

ingressRef
任意

ingressRef

secretKeyRef
任意

secretKeyRef

serviceRef
任意

serviceRef

type
任意

string

configMapKeyRef

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

key
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

resourceVersion
任意

string

uid
任意

string

ingressRef

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

host
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

path
任意

string

resourceVersion
任意

string

uid
任意

string

secretKeyRef

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

key
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

resourceVersion
任意

string

uid
任意

string

serviceRef

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

path
任意

string

ポート
任意

integer (int32)

resourceVersion
任意

string

uid
任意

string

1.9. Helm API

1.9.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の HelmRelease リソースについて説明します。HelmRelease リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.9.1.1. バージョン情報

Version: 2.8.0

1.9.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.9.1.3. タグ

  • helmreleases.apps.open-cluster-management.io: helmreleases を作成して管理します。

1.9.2. パス

1.9.2.1. helmrelease の作成

POST /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases
1.9.2.1.1. 説明

helmrelease を作成します。

1.9.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成する helmrelease を記述するパラメーター

HelmRelease

1.9.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.9.2.1.4. 消費
  • application/yaml
1.9.2.1.5. タグ
  • helmreleases.apps.open-cluster-management.io
1.9.2.1.6. HTTP リクエストの例
1.9.2.1.6.1. 要求の body
{
  "apiVersion" : "apps.open-cluster-management.io/v1",
  "kind" : "HelmRelease",
  "metadata" : {
    "name" : "nginx-ingress",
    "namespace" : "default"
  },
  "repo" : {
    "chartName" : "nginx-ingress",
    "source" : {
      "helmRepo" : {
        "urls" : [ "https://kubernetes-charts.storage.googleapis.com/nginx-ingress-1.26.0.tgz" ]
      },
      "type" : "helmrepo"
    },
    "version" : "1.26.0"
  },
  "spec" : {
    "defaultBackend" : {
      "replicaCount" : 3
    }
  }
}

1.9.2.2. 全 helmrelease のクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases
1.9.2.2.1. 説明

helmrelease に対してクエリーを実行して詳細を確認します。

1.9.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

1.9.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.9.2.2.4. 消費
  • application/yaml
1.9.2.2.5. タグ
  • helmreleases.apps.open-cluster-management.io

1.9.2.3. 単一の helmrelease のクエリー

GET /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases/{helmrelease_name}
1.9.2.3.1. 説明

1 つの helmrelease に対してクエリーを実行して詳細を確認します。

1.9.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

helmrelease_name
必須

問い合わせる helmrelease の名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.9.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.9.2.3.4. タグ
  • helmreleases.apps.open-cluster-management.io

1.9.2.4. helmrelease の削除

DELETE /apps.open-cluster-management.io/v1/namespaces/{namespace}/helmreleases/{helmrelease_name}
1.9.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

helmrelease_name
必須

削除する helmrelease の名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.9.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.9.2.4.3. タグ
  • helmreleases.apps.open-cluster-management.io

1.9.3. 定義

1.9.3.1. HelmRelease

Nameスキーマ

apiVersion
必須

string

kind
必須

string

metadata
必須

object

repo
必須

repo

spec
必須

object

status
必須

status

repo

Nameスキーマ

chartName
任意

string

configMapRef
任意

configMapRef

secretRef
任意

secretRef

source
任意

比較元

version
任意

string

configMapRef

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

resourceVersion
任意

string

uid
任意

string

secretRef

Nameスキーマ

apiVersion
任意

string

fieldPath
任意

string

kind
任意

string

name
任意

string

namespace
任意

string

resourceVersion
任意

string

uid
任意

string

source

Nameスキーマ

github
任意

github

helmRepo
任意

helmRepo

type
任意

string

github

Nameスキーマ

branch
任意

string

chartPath
任意

string

urls
任意

string array

helmRepo

Nameスキーマ

urls
任意

string array

status

Nameスキーマ

conditions
必須

conditions array

deployedRelease
任意

deployedRelease

conditions

Nameスキーマ

lastTransitionTime
任意

string (date-time)

message
任意

string

reason
任意

string

status
必須

string

type
必須

string

deployedRelease

Nameスキーマ

manifest
任意

string

name
任意

string

1.10. Policy API

1.10.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の Policy リソースについて説明します。Policy リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.10.1.1. バージョン情報

Version: 2.8.0

1.10.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.10.1.3. タグ

  • policy.open-cluster-management.io/v1: ポリシーを作成して管理します。

1.10.2. パス

1.10.2.1. ポリシーの作成

POST /policy.open-cluster-management.io/v1/v1alpha1/namespaces/{namespace}/policies/{policy_name}
1.10.2.1.1. 説明

ポリシーを作成します。

1.10.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成するポリシーを記述するパラメーター

ポリシー

1.10.2.1.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.10.2.1.4. 消費
  • application/json
1.10.2.1.5. タグ
  • policy.open-cluster-management.io
1.10.2.1.6. HTTP リクエストの例
1.10.2.1.6.1. 要求の body
{
  "apiVersion": "policy.open-cluster-management.io/v1",
  "kind": "Policy",
  "metadata": {
    "name": "test-policy-swagger",
    "description": "Example body for Policy API Swagger docs"
  },
  "spec": {
    "remediationAction": "enforce",
    "namespaces": {
      "include": [
        "default"
      ],
      "exclude": [
        "kube*"
      ]
    },
    "policy-templates": {
    "kind": "ConfigurationPolicy",
    "apiVersion": "policy.open-cluster-management.io/v1",
    "complianceType": "musthave",
    "metadataComplianceType": "musthave",
    "metadata": {
      "namespace": null,
      "name": "test-role"
    },
    "selector": {
      "matchLabels": {
        "cloud": "IBM"
      }
    },
    "spec" : {
      "object-templates": {
        "complianceType": "musthave",
        "metadataComplianceType": "musthave",
        "objectDefinition": {
          "apiVersion": "rbac.authorization.k8s.io/v1",
          "kind": "Role",
          "metadata": {
            "name": "role-policy",
          },
          "rules": [
            {
              "apiGroups": [
                "extensions",
                "apps"
              ],
              "resources": [
                "deployments"
              ],
              "verbs": [
                "get",
                "list",
                "watch",
                "delete"
              ]
            },
            {
              "apiGroups": [
                "core"
              ],
              "resources": [
                "pods"
              ],
              "verbs": [
                "create",
                "update",
                "patch"
              ]
            },
            {
              "apiGroups": [
                "core"
              ],
              "resources": [
                "secrets"
              ],
              "verbs": [
                "get",
                "watch",
                "list",
                "create",
                "delete",
                "update",
                "patch"
              ],
            },
          ],
        },
      },
    },
  },

1.10.2.2. 全ポリシーのクエリー

GET /policy.open-cluster-management.io/v1/namespaces/{namespace}/policies/{policy_name}
1.10.2.2.1. 説明

ポリシーに対してクエリーを実行して詳細を確認します。

1.10.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

ポリシーを適用する namespace (例: default)

string

1.10.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.10.2.2.4. 消費
  • application/json
1.10.2.2.5. タグ
  • policy.open-cluster-management.io

1.10.2.3. 単一ポリシーのクエリー

GET /policy.open-cluster-management.io/v1/namespaces/{namespace}/policies/{policy_name}
1.10.2.3.1. 説明

1 つのポリシーに対してクエリーを実行して詳細を確認します。

1.10.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

policy_name
必須

問い合わせるポリシーの名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.10.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.10.2.3.4. タグ
  • policy.open-cluster-management.io

1.10.2.4. ポリシーの削除

DELETE /policy.open-cluster-management.io/v1/namespaces/{namespace}/policies/{policy_name}
1.10.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

policy_name
必須

削除するポリシーの名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.10.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.10.2.4.3. タグ
  • policy.open-cluster-management.io

1.10.3. 定義

1.10.3.1. Policy

Name説明スキーマ

apiVersion
必須

Policy のバージョンスキーマ

string

kind
必須

REST リソースを表す文字列の値

string

metadata
必須

ポリシーを定義するルールを記述します。

オブジェクト

spec

名前説明スキーマ

remediationAction
任意

リソースで定義されているように違反をどのように処理するかを表す値

string

namespaceSelector
必須

ポリシーが適用される namespace を表す値

string

policy-templates

Name説明スキーマ

apiVersion
必須

Policy のバージョンスキーマ

string

kind
任意

REST リソースを表す文字列の値

string

metadata
必須

ポリシーを定義するルールを記述します。

オブジェクト

complianceType

マネージドクラスターに評価または適用する必要のあるロールおよび他の Kubernetes オブジェクトの予想される動作をリスト表示するのに使用されます。

string

metadataComplianceType
任意

ユーザーがオブジェクトのラベルおよびアノテーションを他のフィールドとは異なる方法で処理する方法を提供します。パラメーター値は、デフォルトで ComplianceType パラメーターと同じ値になります。

string

clusterConditions
任意

ラベルを定義するセクション

string

rules
任意

 

string

clusterConditions

Name説明スキーマ

matchLabels
任意

ポリシーを namespace に適用するのに必要なラベル

object

cloud
任意

ポリシーをクラウドプロバイダーに適用するのに必要なラベル

string

rules

Name説明スキーマ

apiGroups
必須

このルールが適用される API のリスト

string

resources
必須

リソースタイプのリスト

object

verbs
必須

動詞のリスト

string

1.11. Observability API

1.11.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の MultiClusterObservability リソースについて説明します。MultiClusterObservability リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.11.1.1. バージョン情報

Version: 2.8.0

1.11.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.11.1.3. タグ

  • observability.open-cluster-management.io: multiclusterobservabilities を作成して管理します。

1.11.2. パス

1.11.2.1. multiclusterobservability リソースの作成

POST /apis/observability.open-cluster-management.io/v1beta2/multiclusterobservabilities
1.11.2.1.1. 説明

MultiClusterObservability リソースを作成します。

1.11.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

Body

body
必須

作成する MultiClusterObservability リソースを記述するパラメーター

MultiClusterObservability

1.11.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.11.2.1.4. 消費
  • application/yaml
1.11.2.1.5. タグ
  • observability.apps.open-cluster-management.io
1.11.2.1.6. HTTP リクエストの例
1.11.2.1.6.1. 要求の body
{
  "apiVersion": "observability.open-cluster-management.io/v1beta2",
  "kind": "MultiClusterObservability",
  "metadata": {
    "name": "example"
  },
  "spec": {
    "observabilityAddonSpec": {}
    "storageConfig": {
      "metricObjectStorage": {
        "name": "thanos-object-storage",
        "key": "thanos.yaml"
      "writeStorage": {
        - "key": " ",
          "name" : " "
        - "key": " ",
          "name" : " "
         }
       }
   }
}

1.11.2.2. すべての multiclusterobservability のクエリー

GET /apis/observability.open-cluster-management.io/v1beta2/multiclusterobservabilities
1.11.2.2.1. 説明

MultiClusterObservability リソースに対してクエリーを実行して詳細を確認します。

1.11.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

1.11.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.11.2.2.4. 消費
  • application/yaml
1.11.2.2.5. タグ
  • observability.apps.open-cluster-management.io

1.11.2.3. 単一の multiclusterobservability のクエリー

GET /apis/observability.open-cluster-management.io/v1beta2/multiclusterobservabilities/{multiclusterobservability_name}
1.11.2.3.1. 説明

単一の MultiClusterObservability リソースに対してクエリーを実行して詳細を確認します。

1.11.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

multiclusterobservability_name
必須

問い合わせる multiclusterobservability の名前

string

1.11.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.11.2.3.4. タグ
  • observability.apps.open-cluster-management.io

1.11.2.4. multiclusterobservability リソースの削除

DELETE /apis/observability.open-cluster-management.io/v1beta2/multiclusterobservabilities/{multiclusterobservability_name}
1.11.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

multiclusterobservability_name
必須

削除する multiclusterobservability の名前

string

1.11.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.11.2.4.3. タグ
  • observability.apps.open-cluster-management.io

1.11.3. 定義

1.11.3.1. MultiClusterObservability

Name説明スキーマ

apiVersion
必須

MultiClusterObservability のバージョンスキーマ

string

kind
必須

REST リソース (MultiClusterObservability) を表す文字列の値

string

metadata
必須

ポリシーを定義するルールを記述します。

オブジェクト

spec

名前説明スキーマ

enableDownsampling
任意

downsample を有効または無効にします。デフォルト値は true です。downsample データがない場合は、クエリーを利用できません。

boolean

imagePullPolicy
任意

MultiClusterObservability イメージのプルポリシー。デフォルト値は Always です。

corev1.PullPolicy

imagePullSecret
任意

MultiClusterObservability イメージのプルシークレット。デフォルト値は multiclusterhub-operator-pull-secret です。

string

nodeSelector
任意

ノードセレクターの仕様

map[string]string

observabilityAddonSpec
必須

可観測性アドオンがインストール済みの全マネージドクラスターのグローバル設定

observabilityAddonSpec

storageConfig
必須

可観測性が使用するストレージ設定を指定します。

StorageConfig

tolerations
任意

すべてのコンポーネントがテイントを容認する機能を提供します。

[]corev1.Toleration

advanced
任意

可観測性の詳細設定

advanced

resources
任意

MultiClusterObservability で必要なコンピュートリソース

corev1.ResourceRequirements

replicas
任意

MultiClusterObservability のレプリカ

整数

storageConfig

Name説明スキーマ

alertmanagerStorageSize
任意

alertmanager ステートフルセットに適用されるストレージの量。デフォルト値は 1Gi です。

string

compactStorageSize
任意

thanos のコンパクトなステートフルセットに適用されるストレージの量。デフォルト値は 100Gi です。

string

metricObjectStorage
必須

メトリックのシークレットを設定するオブジェクトストア

metricObjectStorage

receiveStorageSize
任意

thanos 受信ステートフルセットに適用されるストレージの量。デフォルト値は 100Gi です。

string

ruleStorageSize
任意

thanos ルールのステートフルセットに適用されるストレージの量。デフォルト値は 1Gi です。

string

storageClass
任意

storageClass ステートフルセットを指定します。このストレージは、オペレーティングシステムでストレージを作成するように metricObjectStorage が設定されている場合に、オブジェクトストレージに使用します。デフォルト値は gp2 です。

string

storeStorageSize
任意

thanos ストアステートフルセットに適用されるストレージの量。デフォルト値は 10Gi です。

string

writeStorage
任意

エンドポイントアクセス情報のリスト。

[ ]WriteStorage

writeStorage

Name説明スキーマ

name
必須

エンドポイントアクセス情報を持つシークレットの名前。

string

key
必須

選択するシークレットのキー。

string

metricObjectStorage

Name説明スキーマ

key
必須

選択するシークレットのキー。有効な秘密鍵でなければなりません。Thanos のドキュメント を参照してください。

string

name
必須

metricObjectStorage の名前。詳細は、Kubernetes Names を参照してください。

string

observabilityAddonSpec

Name説明スキーマ

enableMetrics
任意

可観測性アドオンがメトリックをハブクラスターに送信するかどうかを指定します。デフォルト値は true です。

boolean

interval
任意

可観測性アドオンがメトリックをハブクラスターに送信する間隔。デフォルト値は 300 秒 (300s) です。

integer

resources
任意

メトリックコレクターリソース要件のリソースデフォルトの CPU 要求は 100m で、メモリー要求は 100Mi です。

corev1.ResourceRequirements

advanced

Name説明スキーマ

retentionConfig
任意

可観測性によって使用されるデータ保持設定を指定します。

RetentionConfig

rbacQueryProxy
任意

rbac-query-proxy デプロイメントのレプリカおよびリソースを指定します。

CommonSpec

grafana
任意

grafana デプロイメントのレプリカおよびリソースを指定します。

CommonSpec

alertmanager
任意

alertmanager ステートフルセットのレプリカおよびリソースを指定します。

CommonSpec

observatoriumAPI
任意

observatorium-api デプロイメントのレプリカおよびリソースを指定します。

CommonSpec

queryFrontend
任意

query-frontend デプロイメントのレプリカおよびリソースを指定します。

CommonSpec

query
任意

クエリーデプロイメントのレプリカおよびリソースを指定します。

CommonSpec

receive
任意

受信ステートフルセットのレプリカおよびリソースを指定します。

CommonSpec

rule
任意

ルールのステートフルセットのレプリカおよびリソースを指定します。

CommonSpec

store
任意

ストアステートフルセットのレプリカおよびリソースを指定します。

CommonSpec

CompactSpec
任意

コンパクトなステートフルセットのリソースを指定します。

compact

storeMemcached
任意

store-memcached のレプリカ、リソースなどを指定します。

storeMemcached

queryFrontendMemcached
任意

query-frontend-memcached のレプリカ、リソースなどを指定します。

CacheConfig

retentionConfig

Name説明スキーマ

blockDuration
任意

時系列データベース (TSDB) ブロックを停止する時間。デフォルト値は 2h です。

string

cleanupInterval
任意

部分的にアップロードされたブロックが消去される頻度および、--wait が有効な削除マークの付いたブロックが消去される頻度。デフォルト値は 5m です。

string

deleteDelay
任意

削除対象のブロックがバケットから削除されるまでの期間。デフォルト値は 48h です。

string

retentionInLocal
任意

ローカルストレージからの未加工のサンプルを保持する時間。デフォルト値は 24h です。

string

retentionResolutionRaw
任意

バスケットで未加工の解像度サンプルを保持する時間。デフォルト値は 30 日 (30d) です。

string

retentionResolution5m
任意

バスケットに解像度 1 (5 分) のサンプルを保持する時間。デフォルト値は 180 日 (180d) です。

string

retentionResolution1h
任意

バスケットに解像度 2 (1 時間) のサンプルを保持する時間。デフォルト値は 0 日 (0d) です。

string

CompactSpec

Name説明スキーマ

resources
任意

thanos compact に必要なリソースを計算します。

corev1.ResourceRequirements

serviceAccountAnnotations
任意

アノテーションは、コンパクトサービスアカウントに保存されている非構造化キーバリューマップです。

map[string]string

storeMemcached

Name説明スキーマ

resources
任意

MultiCLusterObservability で必要なコンピュートリソース

corev1.ResourceRequirements

replicas
任意

MultiClusterObservability のレプリカ

integer

memoryLimitMb
任意

メガバイト単位の Memcached のメモリー制限

integer

maxItemSize
任意

Memcached の最大項目サイズ。デフォルト値は 1m, min:1k, max:1024m です。

string

connectionLimit
任意

Memcached の同時接続の最大数。デフォルト値:

整数

status

Name説明スキーマ

status
任意

ステータスには、MultiClusterObservability のさまざまな条件のステータスが含まれます。

metav1.Condition

CommonSpec

Name説明スキーマ

resources
任意

コンポーネントに必要なリソースを計算します。

corev1.ResourceRequirements

replicas
任意

コンポーネントのレプリカ。

整数

QuerySpec

Name

説明

スキーマ

CommonSpec
任意

クエリーデプロイメントのレプリカおよびリソースを指定します。

CommonSpec

serviceAccountAnnotations
任意

アノテーションは、クエリーサービスアカウントとともに保存される非構造化キー値マップです。

map[string]string

ReceiveSpec

Name

説明

スキーマ

CommonSpec
任意

クエリーデプロイメントのレプリカおよびリソースを指定します。

CommonSpec

serviceAccountAnnotations
任意

アノテーションは、クエリーサービスアカウントとともに保存される非構造化キー値マップです。

map[string]string

StoreSpec

Name

説明

スキーマ

CommonSpec
任意

クエリーデプロイメントのレプリカおよびリソースを指定します。

CommonSpec

serviceAccountAnnotations
任意

アノテーションは、クエリーサービスアカウントとともに保存される非構造化キー値マップです。

map[string]string

RuleSpec

Name

説明

スキーマ

CommonSpec
任意

クエリーデプロイメントのレプリカおよびリソースを指定します。

CommonSpec

evalInterval
任意

ルールの評価間隔を指定します。

string

serviceAccountAnnotations
任意

アノテーションは、クエリーサービスアカウントとともに保存される非構造化キー値マップです。

map[string]string

1.12. 検索クエリー API

検索クエリー API は Kubernetes API ではないため、Red Hat OpenShift Container Platform API Explorer では表示されません。検索クエリー API の機能を理解するには、本書の続きもご確認ください。

1.12.1. 概要

検索クエリー API をルートで公開し、API を使用して検索クエリーを解決できます。API は GraphQL エンドポイントです。curl や Postman などの任意のクライアントを使用できます。

1.12.1.1. バージョン情報

Version: 2.8.0

1.12.1.2. URI スキーム

BasePath : /searchapi/graphql
Schemes : HTTPS

1.12.1.3. API アクセスの設定

以下のコマンドを使用して、クラスターの外部から Search API にアクセスするためのルートを作成します。

oc create route passthrough search-api --service=search-search-api -n open-cluster-management

重要: 環境を保護するには、ルートを設定する必要があります。詳細は、OpenShift Container Platform ドキュメントの ルート設定 を参照してください。

1.12.2. スキーマ設計

input SearchFilter {
  property: String!
  values: [String]!
}
input SearchInput {
  keywords: [String]
  filters: [SearchFilter]
  limit: Int
  relatedKinds: [String]
}
type SearchResult {
count: Int
items: [Map]
related: [SearchRelatedResult]
}
type SearchRelatedResult {
kind: String!
count: Int
items: [Map]
}

! を使用したパラメーターは、フィールドが必要であることを示します。

1.12.2.1. クエリー入力の説明表

説明プロパティー

SearchFilter

結果をフィルタリングするキーと値を定義します。プロパティーに多くの値を指定すると、API は値を "OR" 操作として解釈します。多くのフィルターを指定すると、結果はすべてのフィルターに一致し、API は AND 操作として解釈します。

string

SearchInput

リソースの一覧を表示するには、主要な用語を入力します。多くのキーワードを指定すると、API はそれを AND 操作として解釈します。

String

limit

クエリーを入力した後に返される結果の最大数を決定します。デフォルト値は 10,000 です。-1 の値は、制限が削除されることを意味します。

Integer

1.12.2.2. スキーマの例

{
  "query": "type SearchResult {count: Intitems: [Map]related: [SearchRelatedResult]} type SearchRelatedResult {kind: String!count: Intitems: [Map]}",
  "variables": {
    "input": [
      {
        "keywords": [],
        "filters": [
          {
            "property": "kind",
            "values": [
              "Deployment"
            ]
          }
        ],
        "limit": 10
      }
    ]
  }
}

1.12.3. 汎用スキーマ

type Query {
  search(input: [SearchInput]): [SearchResult]
  searchComplete(property: String!, query: SearchInput, limit: Int): [String]
  searchSchema: Map
  messages: [Message]
}

1.12.4. サポートされているクエリー

JSON 形式でサポートされているクエリータイプを確認するには、このまま読み進めてください。

1.12.4.1. デプロイメントの検索

クエリー:

query mySearch($input: [SearchInput]) {
    search(input: $input) {
    		items
        }
}

変数:

{"input":[
    {
        "keywords":[],
        "filters":[
            {"property":"kind","values":["Deployment"]}],
        "limit":10
    }
]}

1.12.4.2. Pod の検索

クエリー:

query mySearch($input: [SearchInput]) {
    search(input: $input) {
    		items
        }
}

変数:

{"input":[
    {
        "keywords":[],
        "filters":[
            {"property":"kind","values":["Pod"]}],
        "limit":10
    }
]}

1.13. MultiClusterHub API

1.13.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の MultiClusterHub リソースについて説明します。MultiClusterHub リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.13.1.1. バージョン情報

Version: 2.8.0

1.13.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.13.1.3. タグ

  • multiclusterhubs.operator.open-cluster-management.io: マルチクラスターハブ演算子を作成して管理します。

1.13.2. パス

1.13.2.1. MultiClusterHub リソースの作成

POST /operator.open-cluster-management.io/v1beta1/namespaces/{namespace}/mch
1.13.2.1.1. 説明

MultiClusterHub リソースを作成し、multicluster hub のインスタンスの設定を定義します。

1.13.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成する multicluster hub を記述するパラメーター

定義

1.13.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.13.2.1.4. 消費
  • multiclusterhubs/yaml
1.13.2.1.5. タグ
  • multiclusterhubs.operator.open-cluster-management.io
1.13.2.1.6. HTTP リクエストの例
1.13.2.1.6.1. 要求の body
{
  "apiVersion": "apiextensions.k8s.io/v1",
  "kind": "CustomResourceDefinition",
  "metadata": {
    "name": "multiclusterhubs.operator.open-cluster-management.io"
    },
  "spec": {
    "group": "operator.open-cluster-management.io",
    "names": {
      "kind": "MultiClusterHub",
      "listKind": "MultiClusterHubList",
      "plural": "multiclusterhubs",
      "shortNames": [
          "mch"
	  ],
     "singular": "multiclusterhub"
     },
    "scope": "Namespaced",
    "versions": [
        {
	    "additionalPrinterColumns": [
                {
		   "description": "The overall status of the multicluster hub.",
                   "jsonPath": ".status.phase",
                   "name": "Status",
                   "type": "string"
		   },
               {
	           "jsonPath": ".metadata.creationTimestamp",
                   "name": "Age",
                   "type": "date"
		   }
            ],
            "name": "v1",
            "schema": {
                "openAPIV3Schema": {
                    "description": "MultiClusterHub defines the configuration for an instance of
          the multiCluster hub.",
        "properties": {
            "apiVersion": {
                "description": "APIVersion defines the versioned schema of this representation
              of an object. Servers should convert recognized schemas to the latest
              internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
                "type": "string"
            },
            "kind": {
                "description": "Kind is a string value representing the REST resource this
              object represents. Servers may infer this from the endpoint the client
              submits requests to. Cannot be updated. The value is in CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
                "type": "string"
            },
            "metadata": {
                "type": "object"
            },
            "spec": {
                "description": "MultiClusterHubSpec defines the desired state of MultiClusterHub.",
                "properties": {
                    "availabilityConfig": {
                        "description": "Specifies deployment replication for improved availability.
                  Options are: Basic and High (default).",
                        "type": "string"
                },
                "customCAConfigmap": {
                    "description": "Provide the customized OpenShift default ingress CA certificate
                  to {product-title-short}.",
                  }
                    "type": "string"
                },
        "disableHubSelfManagement": {
                    "description": "Disable automatic import of the hub cluster as a managed
                  cluster.",
                    "type": "boolean"
                },
        "disableUpdateClusterImageSets": {
                    "description": "Disable automatic update of ClusterImageSets.",
                    "type": "boolean"
                },
                "hive": {
                    "description": "(Deprecated) Overrides for the default HiveConfig specification.",
                    "properties": {
        "additionalCertificateAuthorities": {
        "description": "(Deprecated) AdditionalCertificateAuthorities is
                      a list of references to secrets in the 'hive' namespace that
                      contain an additional Certificate Authority to use when communicating
                      with target clusters. These certificate authorities are
                      used in addition to any self-signed CA generated by each cluster
                      on installation.",
                           "items": {
                    "description": "LocalObjectReference contains the information
                        to let you locate the referenced object inside the same namespace.",
                    "properties": {
                    "name": {
                        "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
                        "type": "string"
                     }
		             },
                    "type": "object"
                      },
                           "type": "array"
                    },
                       "backup": {
                    "description": "(Deprecated) Backup specifies configuration for backup
                      integration. If absent, backup integration is disabled.",
                    "properties": {
                    "minBackupPeriodSeconds": {
                    "description": "(Deprecated) MinBackupPeriodSeconds specifies
                          that a minimum of MinBackupPeriodSeconds occurs in between
                          each backup. This is used to rate limit backups. This potentially
                          batches together multiple changes into one backup. No backups
                          are lost for changes that happen during the interval
                          that is queued up, and results in a backup once
                          the interval has been completed.",
                    "type": "integer"
                        },
                    "velero": {
                    "description": "(Deprecated) Velero specifies configuration for the Velero backup integration.",
		    "properties": {
			"enabled": {
			    "description": "(Deprecated) Enabled dictates if the Velero backup integration is enabled. If not specified, the default is disabled.",
			    "type": "boolean"
			}
		   },
		    "type": "object"
				        }
				  },
				        "type": "object"
				     },
		    "externalDNS": {
		    "description": "(Deprecated) ExternalDNS specifies configuration for external-dns if it is to be deployed by Hive. If absent, external-dns is not deployed.",
		    "properties": {
		    "aws": {
		    "description": "(Deprecated) AWS contains AWS-specific settings for external DNS.",
		    "properties": {
		        "credentials": {
			    "description": "(Deprecated) Credentials reference a secret that is used to authenticate with AWS Route53. It needs permission to manage entries in each of the managed domains for this cluster. Secret should have AWS keys named 'aws_access_key_id' and 'aws_secret_access_key'.",
			    "properties": {
				"name": {
																		            "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
																		                             "type": "string"
						    }
					},
			    "type": "object"
			}
		},
		   "type": "object"
					},
		   "gcp": {
		   "description": "(Deprecated) GCP contains Google Cloud Platform specific settings for external DNS.",
		   "properties": {
		       "credentials": {
			   "description": "(Deprecated) Credentials reference a secret that is used to authenticate with GCP DNS. It needs permission to manage entries in each of the managed domains for this cluster. Secret should have a key names 'osServiceAccount.json'. The credentials must specify the project to use.",
			   "properties": {
			       "name": {
		   "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
				   "type": "string"
							}
						},
			   "type": "object"
			}
		},
		"type": "object"
					}
				},
				      "type": "object"
					},
		"failedProvisionConfig": {
		"description": "(Deprecated) FailedProvisionConfig is used to configure settings related to handling provision failures.",
		"properties": {
		"skipGatherLogs": {
		"description": "(Deprecated) SkipGatherLogs disables functionality that attempts to gather full logs from the cluster if an installation fails for any reason. The logs are stored in a persistent volume for up to seven days.",
	        "type": "boolean"
				   }
				},
				  "type": "object"
				  },
		"globalPullSecret": {
		"description": "(Deprecated) GlobalPullSecret is used to specify a pull secret that is used globally by all of the cluster deployments. For each cluster deployment, the contents of GlobalPullSecret are merged with the specific pull secret for a cluster deployment(if specified), with precedence given to the contents of the pull secret for the cluster deployment.",
		"properties": {
		"name": {
		"description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
		"type": "string"
			                }
				},
				  "type": "object"
							},
		"maintenanceMode": {
	        "description": "(Deprecated) MaintenanceMode can be set to true to disable the Hive controllers in situations where you need to ensure nothing is running that adds or act upon finalizers on Hive types. This should rarely be needed. Sets replicas to zero for the 'hive-controllers' deployment to accomplish this.",
				  "type": "boolean"
							}
						},
			  "required": [
				         "failedProvisionConfig"
						     ],
			  "type": "object"
						 },
		"imagePullSecret": {
		    "description": "Override pull secret for accessing MultiClusterHub operand and endpoint images.",
		    "type": "string"
					},
		"ingress": {
		    "description": "Configuration options for ingress management.",
		    "properties": {
			"sslCiphers": {
	"description": "List of SSL ciphers enabled for management ingress. Defaults to full list of supported ciphers.",
			    "items": {
		    "type": "string"
					},
			    "type": "array"
						}
					},
			       "type": "object"
						},
			   "nodeSelector": {
		   "additionalProperties": {
				   "type": "string"
						},
			       "description": "Set the node selectors..",
			       "type": "object"
			},
			   "overrides": {
			       "description": "Developer overrides.",
			       "properties": {
		   "imagePullPolicy": {
		   "description": "Pull policy of the multicluster hub images.",
			               "type": "string"
							}
						},
			      "type": "object"
									},
		   "separateCertificateManagement": {
				     "description": "(Deprecated) Install cert-manager into its own namespace.",
				     "type": "boolean"
						    }
					   },
			   "type": "object"
		       },
		       "status": {
			 "description": "MulticlusterHubStatus defines the observed state of MultiClusterHub.",
			 "properties": {
			     "components": {
		      "additionalProperties": {
		      "description": "StatusCondition contains condition information.",
				      "properties": {
		      "lastTransitionTime": {
		      "description": "LastTransitionTime is the last time the condition changed from one status to another.",
		      "format": "date-time",
		      "type": "string"
					},
		      "message": {
		      "description": "Message is a human-readable message indicating\ndetails about the last status change.",
		      "type": "string"
						},
				          "reason": {
		      "description": "Reason is a (brief) reason for the last status change of the condition.",
		      "type": "string"
						},
					  "status": {
		      "description": "Status is the status of the condition. One of True, False, Unknown.",
		      "type": "string"
					},
					  "type": {
		      "description": "Type is the type of the cluster condition.",
		      "type": "string"
					}
				},
				     "type": "object"
						      },
				  "description": "Components []ComponentCondition `json:\"manifests,omitempty\"`",
				  "type": "object"
							},
			      "conditions": {
				  "description": "Conditions contain the different condition statuses for the MultiClusterHub.",
				  "items": {
		      "description": "StatusCondition contains condition information.",
				      "properties": {
		      "lastTransitionTime": {
		      "description": "LastTransitionTime is the last time the condition changed from one status to another.",
		      "format": "date-time",
		      "type": "string"
					},
		      "lastUpdateTime": {
		      "description": "The last time this condition was updated.",
		      "format": "date-time",
		      "type": "string"
					},
		      "message": {
		      "description": "Message is a human-readable message indicating details about the last status change.",
		      "type": "string"
						},
				          "reason": {
		      "description": "Reason is a (brief) reason for the last status change of the condition.",
		      "type": "string"
					},
					  "status": {
		      "description": "Status is the status of the condition. One of True, False, Unknown.",
		      "type": "string"
						},
					  "type": {
		      "description": "Type is the type of the cluster condition.",
		      "type": "string"
					}
				},
				     "type": "object"
						      },
				 "type": "array"
					},
			     "currentVersion": {
				 "description": "CurrentVersion indicates the current version..",
				 "type": "string"
						},
			     "desiredVersion": {
				 "description": "DesiredVersion indicates the desired version.",
				 "type": "string"
						 },
			     "phase": {
				 "description": "Represents the running phase of the MultiClusterHub",
				 "type": "string"
							}
						},
	                 "type": "object"
					   }
				   },
                "type": "object"
			        }
		         },
        "served": true,
        "storage": true,
        "subresources": {
	    "status": {}
	    }
	}
    ]
  }
}

1.13.2.2. 全 MultiClusterHubs のクエリー

GET /operator.open-cluster-management.io/v1beta1/namespaces/{namespace}/operator
1.13.2.2.1. 説明

multicluster hub 演算子に対してクエリーを実行して詳細を確認します。

1.13.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

1.13.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.13.2.2.4. 消費
  • operator/yaml
1.13.2.2.5. タグ
  • multiclusterhubs.operator.open-cluster-management.io

1.13.2.3. MultiClusterHub 演算子のクエリー

GET /operator.open-cluster-management.io/v1beta1/namespaces/{namespace}/operator/{multiclusterhub_name}
1.13.2.3.1. 説明

単一の multicluster hub 演算子に対してクエリーを実行して詳細を確認します。

1.13.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

application_name
必須

問い合わせるアプリケーションの名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.13.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.13.2.3.4. タグ
  • multiclusterhubs.operator.open-cluster-management.io

1.13.2.4. MultiClusterHub 演算子の削除

DELETE /operator.open-cluster-management.io/v1beta1/namespaces/{namespace}/operator/{multiclusterhub_name}
1.13.2.4.1. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

application_name
必須

削除する multicluster hub 演算子の名前

string

パス

namespace
必須

使用する namespace (例: default)

string

1.13.2.4.2. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.13.2.4.3. タグ
  • multiclusterhubs.operator.open-cluster-management.io

1.13.3. 定義

1.13.3.1. Multicluster hub operator

Name説明スキーマ

apiVersion
必須

MultiClusterHub のバージョンスキーマ。

string

kind
必須

REST リソースを表す文字列の値

string

metadata
必須

リソースを定義するルールを記述します。

object

spec
必須

リソース仕様

spec

spec

availabilityConfig
任意
デプロイメントレプリケーションを指定して可用性を向上させます。デフォルト値は High です。string

customCAConfigmap
任意

カスタマイズされた OpenShift デフォルト Ingress CA 証明書を Red Hat Advanced Cluster Management に提供します。

string

disableHubSelfManagement
任意

マネージドクラスターとしてハブクラスターの自動インポートを無効にします。

boolean

disableUpdateClusterImageSets
任意

ClusterImageSets の自動更新を無効にします。

boolean

Hive
任意

(非推奨) デフォルトの HiveConfig 仕様を上書きするオブジェクト。

hive

imagePullSecret
任意

MultiClusterHub オペランドおよびエンドポイントイメージにアクセスするためのプルシークレットを上書きします。

string

Ingress
任意

Ingress 管理の設定オプション。

ingress

nodeSelector
任意

ノードセレクターを設定します。

string

separateCertificateManagement
任意

(非推奨) cert-manager を独自の namespace にインストールします。

ブール値

hive

additionalCertificateAuthorities
任意
(非推奨) ターゲットクラスターとの通信時に使用する追加の認証局が含まれる hive namespace のシークレットへの参照リスト。インストール時に各クラスターが生成する自己署名の CA のほかに、この認証局が使用されます。object

Backup
任意

(非推奨) バックアップ統合の設定を指定します。存在しない場合、バックアップ統合は無効になります。

backup

externalDNS
任意

(非推奨) Hive でデプロイする場合は external-dns の設定を指定します。存在しない場合、external-dns はデプロイされません。

object

failedProvisionConfig
必須

(非推奨) プロビジョニングの失敗の処理に関連する設定に使用します。

failedProvisionConfig

globalPullSecret
任意

(非推奨) 全クラスターデプロイメントがグローバルで使用するプルシークレットを指定するのに使用します。クラスターデプロイメントごとに、globalPullSecret の内容はクラスターデプロイメントの特定のプルシークレットにマージされます (指定されている場合)。これはクラスターデプロイメントのプルシークレットの内容よりも優先されます。

object

maintenanceMode
任意

(非推奨) True に設定して、Hiver タイプのファイナライザーに対して追加したり、実行したりするような操作が行われないようにする必要がある場合など、Hive コントローラーを無効にできます。このような状況はほぼ発生しないはずです。hive-controllers デプロイメントの場合にはレプリカを 0 に設定してこれを実行します。

ブール値

ingress

sslCiphers
任意
管理 Ingress 向けに有効になっている SSL 暗号のリスト。デフォルトは、対応している暗号の全リストです。string

backup

minBackupPeriodSeconds
任意
(非推奨) 次のバックアップが発生するまでの最小の MinBackupPeriodSeconds を指定します。これは、レート制限バックアップに使用します。これにより、1 つのバックアップに複数の変更がまとめられる可能性があります。この期間に加えられた変更がキューに格納され、この期間が終了したらバックアップが行われるので、バックアップは失われません。integer

velero
任意

(非推奨) Velero は Velero バックアップ統合の設定を指定します。

オブジェクト

failedProvisionConfig

skipGatherLogs
任意
(非推奨) インストールに失敗した場合に、クラスターから全ログの収集を試行する機能を無効にします。ログは最長 7 日間永続ボリュームに保存されます。ブール値

status

components
任意
ステータス設定のコンポーネント。object

conditions
任意

multicluster hub のさまざまな条件が含まれます。

conditions

desiredVersion
任意

必要なバージョンを指定します。

string

phase
任意

MultiClusterHub リソースのアクティブなフェーズを表します。このパラメーターに使用される値は、PendingRunningInstallingUpdatingUninstalling です。

string

conditions

lastTransitionTime
任意
状態が別のステータスに最後に変わった時刻string

lastUpdateTime
任意

この状態が最後に更新された時刻。

string

message
必須

メッセージは人間が判読できるメッセージで、最後にステータスが変更されたときの情報を指定します。

string

reason
必須

状態のステータスが変更された理由の簡単な説明

string

status
必須

状態のテータス。

string

type
必須

クラスターの状態のタイプ

string

StatusConditions

kind
必須
このステータスを表すリソースの kindstring

available
必須

このコンポーネントが適切に実行されているかどうかを示します。

boolean

lastTransitionTime
任意

状態が別のステータスに最後に変わった時刻

metav1.time

lastUpdateTime
任意

この状態が最後に更新された時刻。

metav1.time

message
必須

メッセージは人間が判読できるメッセージで、最後にステータスが変更されたときの情報を指定します。

string

reason
任意

状態のステータスが変更された理由の簡単な説明

string

status
任意

状態のテータス。

string

type
任意

クラスターの状態のタイプ

string

1.14. Placement API (v1beta1)

1.14.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の Placement リソースについて説明します。Placement リソースには、create、query、delete、update の 4 つのリクエストを使用できます。Placement は、placement namespace にバインドされている ManagedClusterSets から一連の ManagedClusters を選択するルールを定義します。ラベル cluster.open-cluster-management.io/placement={placement name} を持つ PlacementDecisions のスライスが作成され、この配置によって選択される ManagedClusters が表されます。

1.14.1.1. バージョン情報

Version: 2.8.0

1.14.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.14.1.3. タグ

  • cluster.open-cluster-management.io: Placement を作成して管理します。

1.14.2. パス

1.14.2.1. 全 Placement のクエリー

GET /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placement
1.14.2.1.1. 説明

Placement に対してクエリーを実行して詳細を確認します。

1.14.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

1.14.2.1.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.14.2.1.4. 消費
  • placement/yaml
1.14.2.1.5. タグ
  • cluster.open-cluster-management.io

1.14.2.2. Placement の作成

POST /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placements
1.14.2.2.1. 説明

Placement を作成します。

1.14.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

Body

body
必須

作成する配置バインディングを記述するパラメーター。

Placement

1.14.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.14.2.2.4. 消費
  • placement/yaml
1.14.2.2.5. タグ
  • cluster.open-cluster-management.io
1.14.2.2.6. HTTP リクエストの例
1.14.2.2.6.1. 要求の body
{
  "apiVersion" : "cluster.open-cluster-management.io/v1beta1",
  "kind" : "Placement",
  "metadata" : {
    "name" : "placement1",
    "namespace": "ns1"
  },
  "spec": {
    "predicates": [
      {
        "requiredClusterSelector": {
          "labelSelector": {
            "matchLabels": {
              "vendor": "OpenShift"
            }
          }
        }
      }
    ]
  },
  "status" : { }
}

1.14.2.3. 単一の Placement のクエリー

GET /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placements/{placement_name}
1.14.2.3.1. 説明

1 つの Placement に対してクエリーを実行して詳細を確認します。

1.14.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

placement_name
必須

問い合わせる Placement の名前

string

1.14.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.14.2.3.4. タグ
  • cluster.open-cluster-management.io

1.14.2.4. Placement の削除

DELETE /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placements/{placement_name}
1.14.2.4.1. 説明

単一の Placement を削除します。

1.14.2.4.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

placement_name
必須

削除する Placement の名前

string

1.14.2.4.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.14.2.4.4. タグ
  • cluster.open-cluster-management.io

1.14.3. 定義

1.14.3.1. Placement

名前説明スキーマ

apiVersion
必須

Placement のバージョン管理されたスキーマ。

string

kind
必須

REST リソースを表す文字列の値

string

metadata
必須

Placement のメタデータ。

object

spec
必須

Placement の仕様。

spec

spec

名前説明スキーマ

ClusterSets
任意

ManagedClusters の選択元となる ManagedClusterSets のサブセット。ManagedClusterSet が空の場合、ManagedClusters は Placement namespace にバインドされている ManagedClusterSets から選択されます。ManagedClusterSetManagedClusters が含まれている場合、ManagedClusters はこのサブセットの交差部分から選択されます。選択された ManagedClusterSets は placement namespace にバインドされます。

string array

numberOfClusters
任意

選択する ManagedClusters の数。

integer (int32)

predicates
任意

ManagedClusters を選択するクラスター述語のサブセット。条件ロジックは OR です。

clusterPredicate アレイ

prioritizerPolicy
任意

プライオリタイザーのポリシー。

prioritizerPolicy

tolerations
任意

特定の Taint を持つマネージドクラスターが、一致する許容範囲を持つプレースメントによって選択されることを許可するが、必須ではない値。

toleration array

clusterPredicate

名前説明スキーマ

requiredClusterSelector
任意

ラベルおよびクラスター要求のある ManagedClusters を選択するクラスターセレクター。

clusterSelector

clusterSelector

名前説明スキーマ

labelSelector
任意

ラベル別の ManagedClusters のセレクター。

object

claimSelector
任意

要求別の ManagedClusters のセレクター。

clusterClaimSelector

clusterClaimSelector

名前説明スキーマ

matchExpressions
任意

クラスター要求セレクター要件のサブセット。条件ロジックは AND です。

< object > array

prioritizerPolicy

Name説明スキーマ

mode
任意

ExactAdditive、または "" のいずれか。"" のデフォルト値は Additive です。

string

configurations
任意

プライオリタイザーの設定。

prioritizerConfig array

prioritizerConfig

Name説明スキーマ

scoreCoordinate
必須

プライオリタイザーおよびスコアソースの設定。

scoreCoordinate

weight
任意

プライオリタイザースコアの重み。値は [-10,10] の範囲内である必要があります。

int32

scoreCoordinate

Name説明スキーマ

type
必須

プライオリタイザースコアのタイプ。有効な値は BuiltIn または AddOn です。

string

builtIn
任意

次のオプションからの BuiltIn プライオリタイザーの名前: 1) バランス: クラスター間の決定のバランスをとります。2) 安定: 既存の決定が安定していることを確認します。3) ResourceAllocatableCPU & ResourceAllocatableMemory: 割り当て可能なリソースに基づいてクラスターを分類します。4) 分散: ワークロードをトポロジーに均等に分散します。

string

addOn
任意

type が AddOn の場合、AddOn はリソース名とスコア名を定義します。

オブジェクト

容認

Name説明スキーマ

key
任意

Toleration が適用される Taint キー。空は、すべての Taint キーに一致することを意味します。

string

Operator
任意

キーと値の関係。有効な Operator は Exists および Equal です。デフォルト値は Equal です。

string

value
任意

Toleration に一致する Taint 値。

string

effect
任意

一致する Taint 効果。空は、すべての Taint 効果に一致することを意味します。指定した場合、許可される値は NoSelectPreferNoSelect、および NoSelectIfNew です。

string

tolerationSeconds
任意

Taint が許容される時間の長さ。その後、Taint は許容されません。デフォルト値は nil です。これは、Taint が許容される期間に時間制限がないことを示します。

int64

1.15. PlacementDecisions API (v1beta1)

1.15.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の PlacementDecision リソースについて説明します。PlacementDecision リソースには、create、query、delete、update の 4 つのリクエストを使用できます。PlacementDecision は、プレースメントからの決定を示します。PlacementDecision は、ラベル cluster.open-cluster-management.io/placement={placement name} を使用して特定の配置を参照します。

1.15.1.1. バージョン情報

Version: 2.8.0

1.15.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.15.1.3. タグ

  • cluster.open-cluster-management.io: PlacementDecision を作成して管理します。

1.15.2. パス

1.15.2.1. 全 PlacementDecision のクエリー

GET /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placementdecisions
1.15.2.1.1. 説明

PlacementDecisions に対してクエリーを実行して詳細を確認します。

1.15.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

1.15.2.1.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.15.2.1.4. 消費
  • placementdecision/yaml
1.15.2.1.5. タグ
  • cluster.open-cluster-management.io

1.15.2.2. PlacementDecision の作成

POST /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placementdecisions
1.15.2.2.1. 説明

PlacementDecisions を作成します。

1.15.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

Body

body
必須

作成する PlacementDecision を記述するパラメーター

PlacementDecision

1.15.2.2.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.15.2.2.4. 消費
  • placementdecision/yaml
1.15.2.2.5. タグ
  • cluster.open-cluster-management.io
1.15.2.2.6. HTTP リクエストの例
1.15.2.2.6.1. 要求の body
{
  "apiVersion" : "cluster.open-cluster-management.io/v1beta1",
  "kind" : "PlacementDecision",
  "metadata" : {
    "labels" : {
      "cluster.open-cluster-management.io/placement" : "placement1"
    },
    "name" : "placement1-decision1",
    "namespace": "ns1"
  },
  "status" : { }
}

1.15.2.3. 単一の PlacementDecision のクエリー

GET /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placementdecisions/{placementdecision_name}
1.15.2.3.1. 説明

1 つの PlacementDecisions に対してクエリーを実行して詳細を確認します。

1.15.2.3.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

placementdecision_name
必須

問い合わせる PlacementDecision の名前

string

1.15.2.3.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.15.2.3.4. タグ
  • cluster.open-cluster-management.io

1.15.2.4. PlacementDecision の削除

DELETE /cluster.open-cluster-management.io/v1beta1/namespaces/{namespace}/placementdecisions/{placementdecision_name}
1.15.2.4.1. 説明

単一の PlacementDecision を削除します。

1.15.2.4.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

placementdecision_name
必須

削除する PlacementDecision の名前

string

1.15.2.4.3. レスポンス
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.15.2.4.4. タグ
  • cluster.open-cluster-management.io

1.15.3. 定義

1.15.3.1. PlacementDecision

名前説明スキーマ

apiVersion
必須

PlacementDecision のバージョン管理されたスキーマ。

string

kind
必須

REST リソースを表す文字列の値

string

metadata
必須

PlacementDecision のメタデータ。

object

status
任意

PlacementDecision の現在のステータス。

PlacementStatus

PlacementStatus

Name説明スキーマ

Decisions
必須

プレースメントに応じた決定のスライス。

ClusterDecision array

ClusterDecision

Name説明スキーマ

clusterName
必須

ManagedCluster の名前。

string

reason
必須

ManagedCluster が選択されている理由。

string

1.16. DiscoveryConfig API

1.16.1. 概要

このドキュメントでは、Red Hat Advanced Cluster Management for Kubernetes の DiscoveryConfig リソースについて説明します。DiscoveryConfig リソースには、create、query、delete、update の 4 つの要求を使用できます。

1.16.1.1. バージョン情報

Version: 2.8.0

1.16.1.2. URI スキーム

ベースパス: /kubernetes/apis
スキーム: HTTPS

1.16.1.3. タグ

  • discoveryconfigs.discovery.open-cluster-management.io: DiscoveryConfigs を作成して管理します。

1.16.2. パス

1.16.2.1. DiscoveryConfig の作成

POST /app.k8s.io/v1/namespaces/{namespace}/discoveryconfigs
1.16.2.1.1. 説明

DiscoveryConfig を作成します。

1.16.2.1.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセストークンに置き換えます。

string

パス

namespace
必須

使用する namespace (例: default)

string

Body

body
必須

作成する DiscoveryConfig を記述するパラメーター。

DiscoveryConfig

1.16.2.1.3. 応答
HTTP コード説明スキーマ

200

成功

コンテンツなし

403

アクセス禁止

コンテンツなし

404

リソースが見つからない

コンテンツなし

500

内部サービスエラー

コンテンツなし

503

サービスが利用できない

コンテンツなし

1.16.2.1.4. 消費
  • discoveryconfigs/yaml
1.16.2.1.5. タグ
  • discoveryconfigs.discovery.open-cluster-management.io
1.16.2.1.5.1. 要求の body
{
  "apiVersion": "apiextensions.k8s.io/v1",
  "kind": "CustomResourceDefinition",
  "metadata": {
    "annotations": {
      "controller-gen.kubebuilder.io/version": "v0.4.1",
    },
    "creationTimestamp": null,
    "name": "discoveryconfigs.discovery.open-cluster-management.io",
  },
  "spec": {
    "group": "discovery.open-cluster-management.io",
    "names": {
      "kind": "DiscoveryConfig",
      "listKind": "DiscoveryConfigList",
      "plural": "discoveryconfigs",
      "singular": "discoveryconfig"
    },
    "scope": "Namespaced",
    "versions": [
      {
        "name": "v1",
        "schema": {
          "openAPIV3Schema": {
            "description": "DiscoveryConfig is the Schema for the discoveryconfigs API",
            "properties": {
              "apiVersion": {
                "description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
                "type": "string"
              },
              "kind": {
                "description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
                "type": "string"
              },
              "metadata": {
                "type": "object"
              },
              "spec": {
                "description": "DiscoveryConfigSpec defines the desired state of DiscoveryConfig",
                "properties": {
                  "credential": {
                    "description": "Credential is the secret containing credentials to connect to the OCM api on behalf of a user",
                    "type": "string"
                  },
                  "filters": {
                    "description": "Sets restrictions on what kind of clusters to discover",
                    "properties": {
                      "lastActive": {
                        "description": "LastActive is the last active in days of clusters to discover, determined by activity timestamp",
                        "type": "integer"
                      },
                      "openShiftVersions": {
                        "description": "OpenShiftVersions is the list of release versions of OpenShift of the form \"<Major>.<Minor>\"",
                        "items": {
                          "description": "Semver represents a partial semver string with the major and minor version in the form \"<Major>.<Minor>\". For example: \"4.5\"",
                          "pattern": "^(?:0|[1-9]\\d*)\\.(?:0|[1-9]\\d*)$",
                          "type": "string"
                        },
                        "type": "array"
                      }
                    },
                    "type": "object"
                  }
                },
                "required": [
                  "credential"
                ],
                "type": "object"
              },
              "status": {
                "description": "DiscoveryConfigStatus defines the observed state of DiscoveryConfig",
                "type": "object"
              }
            },
            "type": "object"
          }
        },
        "served": true,
        "storage": true,
        "subresources": {
          "status": {}
        }
      }
    ]
  },
  "status": {
    "acceptedNames": {
      "kind": "",
      "plural": ""
    },
    "conditions": [],
    "storedVersions": []
  }
}

1.16.2.2. すべての DiscoveryConfigs のクエリー

GET /operator.open-cluster-management.io/v1/namespaces/{namespace}/operator
1.16.2.2.1. 説明

discovery config 演算子に対してクエリーを実行して詳細を確認します。

1.16.2.2.2. パラメーター
名前説明スキーマ

Header

COOKIE
必須

Authorization: Bearer {ACCESS_TOKEN}。ACCESS_TOKEN はユーザーのアクセ