※本記事は OpenShift Virtualization アドベントカレンダーの 23 日目の記事です。
こんにちは、OpenShift のプリセールスを担当している山川です。
OpenShift は、Installer-Provisioned Infrastructure (IPI) / User-Provisioned Infrastructure (UPI) / Assisted Installer / Agent-based Installer の 4 つのインストール方法を用意しています。 OpenShift Virtualization の構築の需要が多いオンプレミスのベアメタル環境だと、どの方法でもインストール可能となっています。
また、既存の 4 つのインストール方法に加え、最近発表された閉域環境向けの registry-less installer が利用可能となっておりますので、本記事ではこのインストール方法を試してみたいと思います。なお、本インストールは 2025年12月時点では Technical Preview となっているため、本番環境へは General Availability となってから適用ください。
従来の OpenShift では、閉域環境で構成する際、OpenShift の構築や更新に必要なソフトウェアを置いておくための Mirror Registry を設置し OpenShift が参照できる必要がありましたが、この方式では Mirror Registry が不要となっている点も特徴的です。
第2章 接続クラスターの非接続クラスターへの変換 | 非接続環境 | OpenShift Container Platform | 4.20 | Red Hat Documentation
なお、インストール方法についての細かな違いは下記の記事をご参照ください。 www.redhat.com
OpenShift をインストールしたい環境からインターネットへ出れる場合は、GUI ベースでインストール可能な Assisted Installer を利用いただくと、非常に簡易な手順でインストールが可能です。 Assisted Installer による OpenShift Virtualization のインストールを試してみたい方は、下記のブログシリーズをご参照ください。
ISO ファイルのダウンロード
まずは、Red Hat Hybrid Cloud Console から ISO ファイルをダウンロードします。 OpenShift > Cluster List > Cluster Type > Datacenter 画面より、Create cluster ボタンを押します。
I'm installing on a disconnected/air-gapped/secured environment の上に記載のボタンをオンにすると、ISO ファイルのダウンロード画面に移ることができます。 なお、私が ISO ファイルをダウンロードした時点では、ファイルの大きさが 43.5GB となっておりました。 ダウンロードに時間がかかるため、余裕をもってダウンロードを開始してください。

また、Red Hat Hybrid Cloud Console から インストール時に利用する Pull secret をダウンロードしておきます。
https://console.redhat.com/openshift/install/pull-secret

DNS レコードの登録
DNS に関しては、下記の 2 つのレコードを登録しておく必要がございます。 事前に、<cluster_name>、<base_domain>、IP アドレスを決めた上で設定をお願いします。
| 項目 | 内容 | 本記事での設定値 |
|---|---|---|
| Kubernetes API | api.<cluster_name>. <base_domain> | api.ocp.lab.local |
| アプリケーションIngressトラフィック | *.apps.<cluster_name>. <base_domain> | *.apps.ocp.lab.local |
OpenShift Node の起動
ダウンロードした ISO からブートしNode を起動すると、Rendezvous IP の入力欄が出てきます。 Rendezvous IP で指定した Node が Bootstrap Node としての役割を持つこととなります。 Bootstrap Node にする予定の Node に関しては、This is the rendezvous node を選択します。

今回の環境では、DHCP により自動でアサインされた 172.16.11.157 が rendezvous node の IP アドレスとなりました。

その他の Node に関しては、選択した rendezvous node の IP アドレスを入力します。

続いて、rendezvous node 上に立ち上がったインストール用のコンソール http://172.16.11.157:3001 にアクセスします。 rendezvous node のコンソールには、下記のようにアクセス先が出力されています。

OpenShift インストールのための事前設定
http://172.16.11.157:3001 にアクセスすると、OpenShift の設定画面が表示されますので、画面に従って必要項目を入力していきます。 今回は、Control Plane と Worker Node を兼ねた 3 ノード構成を目指します。

環境に合わせて、OpenShift Virtualization の運用に必要な Operator を選択します。 現在は、下記の 7 つの Operator を選択可能です。 なお、初期インストールの後に Operator Hubから 7 つの Operator がインストール可能となっています。
- OpenShift Virtualization
- Migration Toolkit for Virtualization
- NMState
- Node Health Check
- Node Maintenance
- Fence Agents Remediation
- Kube Descheduler

利用する Node を起動し、Rendezvous IP が適切に設定できていたら、自動的に Node が登録されてきます。 役割として Control Plane を指定した Node については、9 vCPU、17.15 GiB RAM 以上としなければ先に進むことはできませんので注意ください。

なお、NIC の Mac アドレスをベースとした Hostname が自動的に設定されています。 この画面の Hostname をクリックすると下記のようなポップアップが表示され、任意の Hostname をつけることが可能です。

全ての Node が Ready となっていたら、Storage と Network の設定画面に移ります。 特に重要な Network の設定項目である API IP と Ingress IP に関しては、DNS に登録したレコードと同様の IP アドレスの登録をお願いします。

続いて、チェックボックスにチェックを入れ、OpenShift と通信するために必要なクレデンシャル (kubeconfig、kubeadmin-password) を 2 つダウンロードします。 kubeconfig は、OpenShift に対してコマンドを実行可能とするために利用します。また、kubeadmin-password は、OpenShift コンソールにログインする際に利用するパスワードが記載されています。

最後に、全ての設定内容を確認し、完了したらインストールを開始します。

OpenShift インストール
設定が全て完了しましたら、自動でインストールが実行されていますのでしばらく待機となります。

インストールが完了に近づくと、下記のような画面が表示されます。 少し待つと、画面に記載されている URL から OpenShift コンソールに接続可能となります。

OpenShift コンソールへのログイン
kubeadmin-password のパスワードをコピーし、コンソールにログインします。

ログイン後の画面で全てのステータスがグリーンになったら OpenShift のセットアップが全て完了となります。

まとめ
本手順を用いると、Mirror Registry がなく、インターネットへ接続できない環境内に ISO ファイルを持ち込むことで OpenShift の構成が可能となります。 簡単に試すことができるので、ぜひチャレンジしてみてください!