1.8.15. ClusterClaims
ClusterClaim は、マネージドクラスター上のカスタムリソース定義 (CRD) です。ClusterClaim は、マネージドクラスターが要求する情報の一部を表します。ClusterClaim を使用して、ターゲットクラスター上のリソースの Placement を決定できます。
次の例は、YAML ファイルで指定された ClusterClaim を示しています。
apiVersion: cluster.open-cluster-management.io/v1alpha1
kind: ClusterClaim
metadata:
name: id.openshift.io
spec:
value: 95f91f25-d7a2-4fc3-9237-2ef633d8451c
次の表は、multicluster engine Operator が管理するクラスターの定義済み ClusterClaim のリストを示しています。
| 要求名 | 予約 | 変更可能 | 説明 |
|---|---|---|---|
|
| true | false | アップストリームの提案で定義された ClusterID |
|
| true | true | Kubernetes バージョン |
|
| true | false | マネージドクラスターが実行されているプラットフォーム (AWS、GCE、Equinix Metal など) |
|
| true | false | 製品名 (OpenShift、Anthos、EKS、GKE など) |
|
| false | false | OpenShift Container Platform クラスターでのみ利用できる OpenShift Container Platform 外部 ID |
|
| false | true | OpenShift Container Platform クラスターでのみ利用できる管理コンソールの URL |
|
| false | true | OpenShift Container Platform クラスターでのみ利用できる OpenShift Container Platform バージョン |
マネージドクラスターで以前の要求が削除されるか、更新されると、自動的に復元またはロールバックされます。
マネージドクラスターがハブクラスターに参加すると、マネージドクラスター上に作成された次の 2 種類の ClusterClaim リソースが、ハブクラスター上の ManagedCluster リソースのステータスと同期されます。open-cluster-management.io/spoke-only ラベルを持つ ClusterClaim リソースは同期されません。
- multicluster engine Operator が管理する
ClusterClaimリソース -
接尾辞が
id.k8s.io、またはopen-cluster-management.ioまたはopenshift.ioのラベルが含まれます。これらのClusterClaimリソースは、ハブクラスターのManagedClusterステータスに同期されます。 - 管理する
ClusterClaimリソース -
open-cluster-management.ioまたはopenshift.ioの接尾辞なし。デフォルトでは、最大 20 個のClusterClaimリソースがハブクラスターのManagedClusterステータスに同期されます。管理する同期対象のClusterClaimリソースの数を変更するには、KlusterletConfigAPI を設定します。以下の手順を実行します。
ClusterClaim リソースを管理している場合は、同期される ClusterClaim リソースの数を変更するように KlusterletConfig API を設定します。以下の手順を実行します。
KlusterletConfigを作成し、clusterClaimConfiguration.maxCustomClusterClaimsを任意の値に設定します。最大値は100です。以下の例を参照してください。kind: KlusterletConfig apiVersion: config.open-cluster-management.io/v1alpha1 metadata: name: klusterlet-cluster-claim-config spec: clusterClaimConfiguration: maxCustomClusterClaims: 30ManagedClusterリソース内のKlusterletConfigを参照するためのアノテーションを追加します。以下のコマンドを実行します。oc annotate managedcluster <cluster-name> agent.open-cluster-management.io/klusterlet-config="klusterlet-cluster-claim-config"アノテーションを追加すると、
ManagedClusterリソースは次の例のようになります。apiVersion: cluster.open-cluster-management.io/v1 kind: ManagedCluster metadata: annotations: agent.open-cluster-management.io/klusterlet-config: klusterlet-cluster-claim-config name: cluster1 spec: hubAcceptsClient: true leaseDurationSeconds: 60
1.8.15.1. カスタム ClusterClaims の作成 リンクのコピーリンクがクリップボードにコピーされました!
カスタム名を持つ ClusterClaim リソースをマネージドクラスターに作成すると、リソースを識別しやすくなります。カスタムの ClusterClaim リソースは、ハブクラスター上の ManagedCluster リソースのステータスと同期されます。以下のコンテンツでは、カスタマイズされた ClusterClaim リソースの定義例を示しています。
apiVersion: cluster.open-cluster-management.io/v1alpha1
kind: ClusterClaim
metadata:
name: <custom_claim_name>
spec:
value: <custom_claim_value>
spec.value フィールドの長さは 1024 以下である必要があります。ClusterClaim リソースを作成するには clusterclaims.cluster.open-cluster-management.io リソースの create 権限が必要です。