2.3. OCI にクラスターをインストールするための設定ファイルの作成
Agent-based Installer を使用して起動可能な ISO イメージを生成できるように、install-config.yaml
設定ファイルと agent-config.yaml
設定ファイルを作成する必要があります。エージェントベースのインストールは、Assisted Discovery Agent と Assisted Service を含む起動可能な ISO で構成されます。これらのコンポーネントは、クラスターのインストールを実行するために両方とも必要ですが、後者のコンポーネントはいずれか 1 つのホストでのみ実行されます。
後の段階では、Oracle ドキュメントの手順に従って、生成されたエージェント ISO イメージを Oracle のデフォルトの Object Storage バケットにアップロードする必要があります。これは、OpenShift Container Platform クラスターを Oracle® Cloud Infrastructure (OCI) に統合するための最初の手順です。
Agent-based Installer を使用して、ゼロタッチプロビジョニング (ZTP) カスタムリソースを生成または受け入れることもできます。
前提条件
- OpenShift Container Platform のインストールおよび更新プロセスの詳細を確認している。
- クラスターインストール方法の選択およびそのユーザー向けの準備を確認している。
- 「Agent-based Installer を使用したインストールの準備」ドキュメントを確認した。
- Red Hat Hybrid Cloud Console から Agent-based Installer とコマンドラインインターフェイス (CLI) をダウンロードしている。
- 管理者権限で OpenShift Container Platform にログインしている。
手順
非接続環境の場合は、Red Hat OpenShift のミラーレジストリーをローカルコンテナーイメージレジストリーにミラーリングします。
重要openshift-install
バイナリーのバージョンが、Red Hat Quay などの共有レジストリーではなく、ローカルイメージコンテナーレジストリーに関連していることを確認してください。$ ./openshift-install version
共有レジストリーバイナリーの出力例
./openshift-install 4.16.0 built from commit ae7977b7d1ca908674a0d45c5c243c766fa4b2ca release image registry.ci.openshift.org/origin/release:4.16ocp-release@sha256:0da6316466d60a3a4535d5fed3589feb0391989982fba59d47d4c729912d6363 release architecture amd64
組織のニーズに合わせて
install-config.yaml
設定ファイルを設定します。外部プラットフォームの設定を示す
install-config.yaml
設定ファイルの例# install-config.yaml apiVersion: v1 baseDomain: <base_domain> 1 networking: clusterNetwork: - cidr: 10.128.0.0/14 hostPrefix: 23 network type: OVNKubernetes machineNetwork: - cidr: <ip_address_from_cidr> 2 serviceNetwork: - 172.30.0.0/16 compute: - architecture: amd64 3 hyperthreading: Enabled name: worker replicas: 0 controlPlane: architecture: amd64 4 hyperthreading: Enabled name: master replicas: 3 platform: external: platformName: oci 5 cloudControllerManager: External sshKey: <public_ssh_key> 6 pullSecret: '<pull_secret>' 7 # ...
- 1
- クラウドプロバイダーのベースドメイン。
- 2
- ネットワーク上で機能するリソースおよびコンポーネントに対して CIDR が割り当てる仮想クラウドネットワーク (VCN) の IP アドレス。
- 3 4
- インフラストラクチャーに応じて、
x86_64
またはamd64
を選択できます。 - 5
- OpenShift Container Platform が OCI と統合できるように、
OCI
を外部プラットフォームとして設定します。 - 6
- SSH 公開鍵を指定します。
- 7
- OpenShift Container Platform コンポーネントおよびサービス (Quay.io など) のコンテナーイメージをダウンロードするときに認証するために必要なプルシークレット。Red Hat Hybrid Cloud Console の Install OpenShift Container Platform 4 を参照してください。
ローカルシステム上に
openshift
という名前のディレクトリーを作成します。重要install-config.yaml
およびagent-config.yaml
設定ファイルをopenshift
ディレクトリーに移動しないでください。-
Oracle ドキュメントの "Configuration Files" セクションの手順を完了して、Oracle Cloud Controller Manager (CCM) および Oracle Container Storage Interface (CSI) マニフェストをアーカイブファイルとしてダウンロードし、アーカイブファイルを
openshift
ディレクトリーに保存します。OpenShift Container Platform が外部 OCI プラットフォームに接続できるように、クラスターのインストール中に Oracle CCM をデプロイするために Oracle CCM マニフェストが必要です。OpenShift Container Platform が OCI から必要なオブジェクトを要求できるように、クラスターのインストール中に Oracle CSI ドライバーをデプロイするために Oracle CSI カスタムマニフェストが必要です。 Oracle ドキュメントの "Configuration Files" セクションで提供されているカスタムマニフェストファイルにアクセスします。
-
oci-ccm.yml
設定ファイルで定義されているoci-cloud-controller-manager
シークレットを、組織のリージョン、コンパートメント OCID、VCN OCID、およびロードバランサーのサブネット OCID と一致するように変更します。
-
OpenShift Container Platform CLI で次のコマンドを入力し、Agent-based Installer を使用して、rootfs イメージを除いた最小限の ISO イメージを生成します。後のプロセスでこのイメージを使用して、クラスターのすべてのノードを起動できます。
$ ./openshift-install agent create image --log-level debug
このコマンドは次の操作も実行します。
-
サブディレクトリー
./<installation_directory>/auth directory:
を作成し、そのサブディレクトリーにkubeadmin-password
ファイルとkubeconfig
ファイルを配置します。 -
agent-config.yaml
設定ファイルで指定した IP アドレスに基づいて、rendezvousIP
ファイルを作成します。 オプション:
agent-config.yaml
およびinstall-config.yaml
設定ファイルに加えた変更は、すべてゼロタッチプロビジョニング (ZTP) カスタムリソースにインポートされます。重要Agent-based Installer は Red Hat Enterprise Linux CoreOS (RHCOS) を使用します。後述のリスト項目で説明する rootfs イメージは、オペレーティングシステムの起動、復旧、修復に必要です。
-
サブディレクトリー
組織の要件に合わせて
agent-config.yaml
設定ファイルを設定します。IPv4 形式のネットワークの値を設定する
agent-config.yaml
設定ファイルの例apiVersion: v1alpha1 metadata: name: <cluster_name> 1 namespace: <cluster_namespace> 2 rendezvousIP: <ip_address_from_CIDR> 3 bootArtifactsBaseURL: <server_URL> 4 # ...
- 1
- DNS レコードに指定したクラスター名。
- 2
- OpenShift Container Platform 上のクラスターの namespace。
- 3
- ネットワーク IP アドレス形式として IPv4 を使用する場合は、
rendezvousIP
パラメーターを、VCN の Classless Inter-Domain Routing (CIDR) 方式によってネットワークに割り当てられる IPv4 アドレスに必ず設定してください。また、ISO を使用して起動したインスタンスのプールの少なくとも 1 つのインスタンスが、rendezvousIP
に設定した IP アドレス値と一致することを確認してください。 - 4
- rootfs イメージをアップロードするサーバーの URL。
次のどちらかの更新を、
agent-config.yaml
設定ファイルに適用します。非接続ネットワークの場合: コマンドを実行して最小限の ISO イメージを生成すると、Agent-based Installer によって rootfs イメージがローカルシステムの
./<installation_directory>/boot-artifacts
ディレクトリーに保存されます。任意の Hypertext Transfer Protocol デーモン (httpd
) などの優先 Web サーバーを使用して、agent-config.yaml
設定ファイルのbootArtifactsBaseURL
パラメーターに指定された場所に rootfs をアップロードします。たとえば、
bootArtifactsBaseURL
パラメーターにhttp://192.168.122.20
と指定されている場合、生成された rootfs イメージをこの場所にアップロードして、Agent-based Installer がhttp://192.168.122.20/agent.x86_64-rootfs.img
からイメージにアクセスできるようにします。Agent-based Installer は、外部プラットフォームの最小限の ISO を起動した後、http://192.168.122.20/agent.x86_64-rootfs.img
の場所から rootfs イメージをシステムメモリーにダウンロードします。注記また、Agent-based Installer は、Operator がクラスターのノードを起動するときに rootfs イメージをシステムメモリーにダウンロードするために、
bootArtifactsBaseURL
の値を最小限の ISO イメージの設定に追加します。接続されたネットワークの場合:
agent-config.yaml
設定ファイルでbootArtifactsBaseURL
パラメーターを指定する必要はありません。Agent-based Installer のデフォルトの動作で、https://rhcos.mirror.openshift.com
から rootfs URL の場所を読み取ります。Agent-based Installer は、外部プラットフォームの最小限の ISO を起動した後、デフォルトの RHCOS URL から rootfs ファイルをシステムのメモリーにダウンロードします。重要1
GB を超える完全な ISO イメージには、rootfs イメージが含まれていることに注意してください。このイメージは、通常150
MB 未満の最小 ISO イメージよりも大きくなります。