This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.19.13. 単一のマネージドクラスターをインストールするためのカスタムリソースの作成
この手順では、単一のマネージドクラスターを手動で作成してデプロイする方法を説明します。複数のクラスター (数百など) を作成する場合は、複数のマネージドクラスターの ZTP カスタムリソースの作成で説明されている SiteConfig メソッドを使用します。
前提条件
- Assisted Installer サービスを有効にします。
ネットワーク接続を確認します。
- ハブ内のコンテナーは、ターゲットのベアメタルホストの Baseboard Management Controller (BMC) アドレスに到達できる必要があります。
マネージドクラスターは、ハブの API
hostnameおよび*.appホスト名を解決し、到達できる必要があります。ハブの API および*.appホスト名の例:console-openshift-console.apps.hub-cluster.internal.domain.com api.hub-cluster.internal.domain.com
console-openshift-console.apps.hub-cluster.internal.domain.com api.hub-cluster.internal.domain.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow ハブは、マネージドクラスターの API および
*.appホスト名を解決して到達できる必要があります。以下は、マネージドクラスターの API および*.appホスト名の例です。console-openshift-console.apps.sno-managed-cluster-1.internal.domain.com api.sno-managed-cluster-1.internal.domain.com
console-openshift-console.apps.sno-managed-cluster-1.internal.domain.com api.sno-managed-cluster-1.internal.domain.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow - ターゲットのベアメタルホストから IP 到達可能な DNS サーバー。
以下のハードウェアの最小要件を備えた、マネージドクラスターのターゲットベアメタルホスト:
- 4 CPU または 8 vCPU
- 32 GiB RAM
- ルートファイルシステムの 120 GiB ディスク
非接続環境で作業する場合は、リリースイメージをミラーリングする必要があります。以下のコマンドを使用して、リリースイメージをミラーリングします。
oc adm release mirror -a <pull_secret.json> --from=quay.io/openshift-release-dev/ocp-release:{{ mirror_version_spoke_release }} --to={{ provisioner_cluster_registry }}/ocp4 --to-release-image={{ provisioner_cluster_registry }}/ocp4:{{ mirror_version_spoke_release }}oc adm release mirror -a <pull_secret.json> --from=quay.io/openshift-release-dev/ocp-release:{{ mirror_version_spoke_release }} --to={{ provisioner_cluster_registry }}/ocp4 --to-release-image={{ provisioner_cluster_registry }}/ocp4:{{ mirror_version_spoke_release }}Copy to Clipboard Copied! Toggle word wrap Toggle overflow スポーククラスター ISO を生成するために使用される ISO および
rootfsを HTTP サーバーにミラーリングし、そこからイメージをプルできるように設定を設定している。イメージは、
ClusterImageSetのバージョンと一致する必要があります。4.9.0 バージョンをデプロイするには、rootfsおよび ISO を 4.9.0 に設定する必要があります。
手順
デプロイが必要な特定のクラスターバージョンごとに
ClusterImageSetを作成します。ClusterImageSetのフォーマットは以下のとおりです。Copy to Clipboard Copied! Toggle word wrap Toggle overflow マネージドクラスターの
namespace定義を作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow BMC Secretカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Image Pull Secretカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- OpenShift Container Platform プルシークレット。base-64 でエンコードされている必要があります。
AgentClusterInstallカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ベアメタルホストに OpenShift Container Platform をインストールするために使用される ClusterImageSet カスタムリソースの名前。
- 2
- クラスターノード間の通信に使用される CIDR 表記の IPv4 または IPv6 アドレスのブロック。
- 3
- ターゲットのベアメタルホストの外部通信に使用される CIDR 表記の IPv4 または IPv6 アドレスのブロック。DU 単一ノードクラスターをプロビジョニングするときに API および Ingress VIP アドレスを決定するためにも使用されます。
- 4
- クラスターサービスの内部通信に使用される CIDR 表記の IPv4 または IPv6 アドレスのブロック。
- 5
- プレーンテキストとして入力されました。インストールが完了したら、公開鍵を使用してノードに SSH で接続できます。
注記この時点で、マネージドクラスターの静的 IP を設定する場合は、マネージドクラスターの静的 IP アドレスを設定する方法については、本書の手順を参照してください。
ClusterDeploymentカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- マネージドクラスターのベースドメイン。
KlusterletAddonConfigカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
trueに設定すると KlusterletAddonConfig が有効になり、falseに設定すると KlusterletAddonConfig が無効になります。searchCollectorを無効にした状態に維持します。
ManagedClusterカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow InfraEnvカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow BareMetalHostカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプションで、アノテーションとして
bmac.agent-install.openshift.io/hostname: <host-name>を追加して、マネージドクラスターのホスト名を設定できます。アノテーションを追加しない場合、ホスト名はデフォルトで DHCP サーバーまたはローカルホストのホスト名になります。- カスタムリソースを作成したら、生成されたカスタムリソースのディレクトリー全体を、カスタムリソースを保存するために作成した Git リポジトリーにプッシュします。
次のステップ
追加のクラスターをプロビジョニングするには、それぞれのクラスターについてこの手順を繰り返します。
19.13.1. マネージドクラスターの静的 IP アドレスの設定 リンクのコピーリンクがクリップボードにコピーされました!
オプションで、AgentClusterInstall カスタムリソースの作成後に、マネージドクラスターの静的 IP アドレスを設定できます。
ClusterDeployment カスタムリソースを作成する前に、このカスタムリソースを作成する必要があります。
前提条件
-
AgentClusterInstallカスタムリソースをデプロイして設定します。
手順
NMStateConfigカスタムリソースを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
BareMetalHostカスタムリソースを作成するときは、その MAC アドレスの 1 つがNMStateConfigターゲットのベアメタルホストの MAC アドレスと一致することを確認してください。 InfraEnvカスタムリソースの作成時に、InfraEnvカスタムリソースのNMStateConfigカスタムリソースからラベル を参照します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 一致するラベルを設定します。ラベルは、エージェントの起動時に適用されます。
19.13.2. クラスターをプロビジョニングする自動検出イメージ ISO プロセス リンクのコピーリンクがクリップボードにコピーされました!
カスタムリソースを作成すると、以下のアクションが自動的に行われます。
- Discovery イメージの ISO ファイルが生成され、ターゲットマシンで起動します。
- ターゲットマシンで ISO ファイルが正常に起動すると、ターゲットマシンのハードウェア情報を報告します。
- すべてのホストの検出後に、OpenShift Container Platform がインストールされます。
-
OpenShift Container Platform のインストールが完了すると、ハブは
klusterletサービスをターゲットクラスターにインストールします。 - 要求されたアドオンサービスがターゲットクラスターにインストールされている。
Discovery イメージの ISO プロセスは、マネージドクラスターのハブに Agent カスタムリソースが作成されると終了します。
19.13.3. マネージドクラスターステータスの確認 リンクのコピーリンクがクリップボードにコピーされました!
クラスターのステータスをチェックして、クラスターのプロビジョニングが正常に行われたことを確認します。
前提条件
-
すべてのカスタムリソースが設定およびプロビジョニングされ、プロビジョニングされ、マネージドクラスターのハブで
Agentカスタムリソースが作成されます。
手順
マネージドクラスターのステータスを確認します。
oc get managedcluster
$ oc get managedclusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow Trueはマネージドクラスターの準備が整っていることを示します。エージェントのステータスを確認します。
oc get agent -n <cluster_name>
$ oc get agent -n <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow describeコマンドを使用して、エージェントの条件に関する詳細な説明を指定します。認識できるステータスには、BackendError、InputError、ValidationsFailing、InstallationFailed、およびAgentIsConnectedが含まれます。これらのステータスは、AgentおよびAgentClusterInstallカスタムリソースに関連します。oc describe agent -n <cluster_name>
$ oc describe agent -n <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターのプロビジョニングのステータスを確認します。
oc get agentclusterinstall -n <cluster_name>
$ oc get agentclusterinstall -n <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow describeコマンドを使用して、クラスターのプロビジョニングステータスの詳細な説明を指定します。oc describe agentclusterinstall -n <cluster_name>
$ oc describe agentclusterinstall -n <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow マネージドクラスターのアドオンサービスのステータスを確認します。
oc get managedclusteraddon -n <cluster_name>
$ oc get managedclusteraddon -n <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow マネージドクラスターの
kubeconfigファイルの認証情報を取得します。oc get secret -n <cluster_name> <cluster_name>-admin-kubeconfig -o jsonpath={.data.kubeconfig} | base64 -d > <directory>/<cluster_name>-kubeconfig$ oc get secret -n <cluster_name> <cluster_name>-admin-kubeconfig -o jsonpath={.data.kubeconfig} | base64 -d > <directory>/<cluster_name>-kubeconfigCopy to Clipboard Copied! Toggle word wrap Toggle overflow
19.13.4. 非接続環境でのマネージドクラスターの設定 リンクのコピーリンクがクリップボードにコピーされました!
前述の手順を完了したら、以下の手順に従って非接続環境でマネージドクラスターを設定します。
前提条件
- Red Hat Advanced Cluster Management (RHACM) 2.3 の非接続インストール。
-
rootfsおよびisoイメージを HTTPD サーバーでホストします。
手順
ミラーレジストリー設定を含む
ConfigMapを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、以下のように
AgentServiceConfigカスタムリソースのmirrorRegistryRefが更新されます。出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 非接続インストールでは、オフラインネットワーク経由で到達可能な NTP クロックをデプロイする必要があります。これは、chrony をサーバーとして機能するように設定する、
/etc/chrony.confファイルを編集し、以下の許可された IPv6 範囲を追加します。Allow NTP client access from local network.
# Allow NTP client access from local network. #allow 192.168.0.0/16 local stratum 10 bindcmdaddress :: allow 2620:52:0:1310::/64Copy to Clipboard Copied! Toggle word wrap Toggle overflow
19.13.5. 非接続環境での IPv6 アドレスの設定 リンクのコピーリンクがクリップボードにコピーされました!
オプションとして、AgentClusterInstall カスタムリソースを作成する場合、マネージドクラスターの IPv6 アドレスを設定できます。
手順
AgentClusterInstallカスタムリソースで、IPv6 アドレスのclusterNetworkおよびserviceNetworkの IP アドレスを変更します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
定義した IPv6 アドレスを使用して、
NMStateConfigカスタムリソースを更新します。
19.13.6. マネージドクラスターのトラブルシューティング リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、マネージドクラスターで発生する可能性のあるインストール問題を診断します。
手順
マネージドクラスターのステータスを確認します。
oc get managedcluster
$ oc get managedclusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE SNO-cluster true True True 2d19h
NAME HUB ACCEPTED MANAGED CLUSTER URLS JOINED AVAILABLE AGE SNO-cluster true True True 2d19hCopy to Clipboard Copied! Toggle word wrap Toggle overflow AVAILABLE列のステータスがTrueの場合、マネージドクラスターはハブによって管理されます。AVAILABLE列のステータスがUnknownの場合、マネージドクラスターはハブによって管理されていません。その他の情報を取得するには、以下の手順を使用します。AgentClusterInstallインストールのステータスを確認します。oc get clusterdeployment -n <cluster_name>
$ oc get clusterdeployment -n <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME PLATFORM REGION CLUSTERTYPE INSTALLED INFRAID VERSION POWERSTATE AGE Sno0026 agent-baremetal false Initialized 2d14h
NAME PLATFORM REGION CLUSTERTYPE INSTALLED INFRAID VERSION POWERSTATE AGE Sno0026 agent-baremetal false Initialized 2d14hCopy to Clipboard Copied! Toggle word wrap Toggle overflow INSTALLED列のステータスがfalseの場合、インストールは失敗していました。インストールが失敗した場合は、以下のコマンドを実行して
AgentClusterInstallリソースのステータスを確認します。oc describe agentclusterinstall -n <cluster_name> <cluster_name>
$ oc describe agentclusterinstall -n <cluster_name> <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow エラーを解決し、クラスターをリセットします。
クラスターのマネージドクラスターリソースを削除します。
oc delete managedcluster <cluster_name>
$ oc delete managedcluster <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow クラスターの namespace を削除します。
oc delete namespace <cluster_name>
$ oc delete namespace <cluster_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow これにより、このクラスター用に作成された namespace スコープのカスタムリソースがすべて削除されます。続行する前に、
ManagedClusterCR の削除が完了するのを待つ必要があります。- マネージドクラスターのカスタムリソースを再作成します。