単一ノードへのインストール
シングルノードへの OpenShift Container Platform のインストール
概要
第1章 単一ノードへのインストールの準備 リンクのコピーリンクがクリップボードにコピーされました!
1.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- OpenShift Container Platform のインストールおよび更新 プロセスの詳細を確認している。
- クラスターインストール方法の選択およびそのユーザー向けの準備 を確認している。
1.2. 単一ノードでの OpenShift について リンクのコピーリンクがクリップボードにコピーされました!
標準のインストール方法で単一ノードクラスターを作成できます。単一ノード上の OpenShift Container Platform は、特別な Ignition 設定 ISO の作成を必要とする特殊なインストールです。プライマリーユースケースは、断続的な接続、ポータブルクラウド、および 5G ラジオアクセスネットワーク (RAN) などのエッジコンピューティングのワークロード向けです。単一ノードでのインストールに関する主なトレードオフは、高可用性がないことです。
単一ノードの OpenShift での OpenShiftSDN の使用はサポートされていません。OVN-Kubernetes は、単一ノードの OpenShift デプロイメントのデフォルトのネットワークプラグインです。
1.3. 単一ノードに OpenShift をインストールするための要件 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールすると、高可用性および大規模なクラスターの一部の要件が軽減されます。ただし、以下の要件を満たす必要があります。
- 管理ホスト: ISO を準備して USB ブートドライブを作成し、インストールを監視するためのコンピューターが必要です。
-
サポートされているプラットフォーム: 単一ノードへの OpenShift Container Platform のインストールは、ベアメタルおよび 認定されたサードパーティーのハイパーバイザー でサポートされています。いずれの場合も、
install-config.yaml
設定ファイルでplatform.none: {}
パラメーターを指定する必要があります。 実稼働環境グレードサーバー: OpenShift Container Platform を単一ノードにインストールし、OpenShift Container Platform サービスと実稼働のワークロードを実行するのに十分なリソースを持つサーバーが必要です。
Expand 表1.1 最小リソース要件 Profile コンピュート メモリー ストレージ 最低限
仮想 CPU 8 個
16 GB のメモリー
120 GB
注記通常、1 つの仮想 CPU は 1 つの物理コアに相当します。ただし、同時マルチスレッディング (SMT) またはハイパースレッディングを有効にすると、各 CPU スレッドは仮想 CPU としてカウントされます。
インストールプロセス中に Operator を追加すると、最小リソース要件が増加する可能性があります。
仮想メディアを使用して起動する場合は、サーバーには Baseboard Management Controller (BMC) が必要です。
ネットワーク: サーバーは、ルーティング可能なネットワークに接続されていない場合は、インターネットまたはローカルレジストリーにアクセスできるようにする必要があります。サーバーには、Kubernetes API、Ingress ルート、およびクラスターノードドメイン名の DHCP 予約または静的 IP アドレスが必要です。DNS が、以下の完全修飾ドメイン名 (FQDN) のそれぞれに IP アドレスを解決できるように設定する必要があります。
Expand 表1.2 必要な DNS レコード 使用法 FQDN 説明 Kubernetes API
api.<cluster_name>.<base_domain>
DNS A/AAAA または CNAME レコードを追加します。このレコードは、クラスター外のクライアントで解決できる必要があります。
内部 API
api-int.<cluster_name>.<base_domain>
ISO を手動で作成する場合は、DNS A/AAAA または CNAME レコードを追加します。このレコードは、クラスター内のノードにより解決可能である必要があります。
Ingress ルート
*.apps.<cluster_name>.<base_domain>
ノードをターゲットにするワイルドカード DNS A/AAAA または CNAME レコードを追加します。このレコードは、クラスター外のクライアントで解決できる必要があります。
永続的な IP アドレスがない場合、
apiserver
とetcd
の間の通信で失敗する可能性があります。
第2章 単一ノードでの OpenShift のインストール リンクのコピーリンクがクリップボードにコピーされました!
Web ベースの Assisted Installer または coreos-installer
ツールを使用して検出 ISO イメージを生成することで、シングルノードの OpenShift をインストールできます。この検出 ISO イメージにより、Red Hat Enterprise Linux CoreOS (RHCOS) のシステム設定がターゲットのインストールディスクに書き込まれます。そのため、ニーズに合わせてシングルクラスターノードを実行できます。
テスト、トラブルシューティング、トレーニング、または小規模プロジェクトために、リソースが少ない環境や隔離環境でクラスターを実行する場合は、シングルノード OpenShift の使用を検討してください。
2.1. Assisted Installer を使用した単一ノード OpenShift のインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、Web ベースのアシステッドインストーラーウィザードのガイドに従い、インストールを管理します。
2.1.1. アシステッドインストーラーを使用したディスカバリー ISO の生成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、Assisted Installer が生成できる検出 ISO が必要です。
手順
- 管理ホストでブラウザーを開き、Red Hat OpenShift Cluster Manager に移動します。
- Create New Cluster をクリックして新規クラスターを作成します。
- Cluster name フィールドにクラスターの名前を入力します。
Base domain フィールドにベースドメインを入力します。以下に例を示します。
example.com
example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow すべての DNS レコードはこのベースドメインのサブドメインである必要があり、クラスター名が含まれる必要があります。以下に例を示します。
<cluster_name>.example.com
<cluster_name>.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記クラスターのインストール後にベースドメインまたはクラスター名を変更することはできません。
- Install single node OpenShift (SNO) を選択し、ウィザードの残りの手順を完了します。検出 ISO をダウンロードします。
Assisted Installer ウィザードの残りの手順を完了します。
重要仮想メディアを使用してインストールする場合は、検出 ISO の URL を必ずメモしておいてください。
このプロセス中に OpenShift Virtualization を有効にする場合は、仮想マシン用に 50 GiB 以上の 2 つ目のローカルストレージデバイスが必要です。
2.1.2. Assisted Installer を使用した単一ノード OpenShift のインストール リンクのコピーリンクがクリップボードにコピーされました!
Assisted Installer を使用して、単一ノードクラスターをインストールします。
前提条件
- サーバーの BIOS 設定のブートドライブの順序が、デフォルトでターゲットインストールディスクからサーバーを起動するように設定されていることを確認する。
手順
- 検出 ISO イメージをターゲットホストに接続します。
- 検出 ISO イメージからサーバーを起動します。検出 ISO イメージは、システム設定をターゲットのインストールディスクに書き込み、サーバーの再起動を自動的にトリガーします。
- 管理ホストで、ブラウザーに戻ります。ホストが、検出されたホストのリストに表示されるまで待ちます。必要に応じて、Assisted Clusters ページを再読み込みし、クラスター名を選択します。
- インストールウィザードの手順を完了します。使用可能なサブネットからのサブネットを含む、ネットワークの詳細を追加します。必要に応じて SSH 公開鍵を追加します。
- インストールの進捗を監視します。クラスターイベントを確認します。インストールプロセスがサーバーのハードディスクへのオペレーティングシステムイメージの書き込みを完了すると、サーバーが再起動します。
オプション: 検出 ISO イメージを削除します。
サーバーが自動的に数回再起動し、コントロールプレーンがデプロイされます。
2.2. 単一ノードの OpenShift を手動でインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、最初にインストール ISO を生成してから、ISO からサーバーを起動します。openshift-install
インストールプログラムを使用して、インストールを監視できます。
2.2.1. coreos-installer によるインストール ISO の生成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、インストール ISO が必要です。これは、以下の手順で生成できます。
前提条件
-
podman
をインストールします。
手順
OpenShift Container Platform バージョンを設定します。
export OCP_VERSION=<ocp_version>
$ export OCP_VERSION=<ocp_version>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<ocp_version>
を現在のバージョン (latest-4.12
など) に置き換えます。
ホストアーキテクチャーを設定します。
export ARCH=<architecture>
$ export ARCH=<architecture>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<architecture>
をターゲットホストアーキテクチャー (aarch64
やx86_64
など) に置き換えます。
OpenShift Container Platform クライアント (
oc
) をダウンロードし、次のコマンドを入力して使用できるようにします。curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-client-linux.tar.gz -o oc.tar.gz
$ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-client-linux.tar.gz -o oc.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow tar zxf oc.tar.gz
$ tar zxf oc.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow chmod +x oc
$ chmod +x oc
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Container Platform インストーラーをダウンロードし、以下のコマンドを入力して使用できるようにします。
curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-install-linux.tar.gz -o openshift-install-linux.tar.gz
$ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-install-linux.tar.gz -o openshift-install-linux.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow tar zxvf openshift-install-linux.tar.gz
$ tar zxvf openshift-install-linux.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow chmod +x openshift-install
$ chmod +x openshift-install
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、RHCOS ISO URL を取得します。
export ISO_URL=$(./openshift-install coreos print-stream-json | grep location | grep $ARCH | grep iso | cut -d\" -f4)
$ export ISO_URL=$(./openshift-install coreos print-stream-json | grep location | grep $ARCH | grep iso | cut -d\" -f4)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow RHCOS ISO をダウンロードします。
curl -L $ISO_URL -o rhcos-live.iso
$ curl -L $ISO_URL -o rhcos-live.iso
Copy to Clipboard Copied! Toggle word wrap Toggle overflow install-config.yaml
ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- クラスタードメイン名を追加します。
- 2
- 64 ビット ARM アーキテクチャーの場合はアーキテクチャーを
arm64
に、64 ビット x86 アーキテクチャーの場合はamd64
に設定します。これは、ターゲットホストアーキテクチャーに明示的に設定する必要があります。 - 3
compute
レプリカを0
に設定します。これにより、コントロールプレーンノードがスケジュール可能になります。- 4
controlPlane
レプリカを1
に設定します。この設定は、以前のcompute
設定と組み合わせて、クラスターが単一ノードで実行されるようにします。- 5
メタデータ
名をクラスター名に設定します。- 6
networking
の詳細を設定します。OVN-Kubernetes は、単一ノードクラスターで許可されている唯一のネットワークプラグインタイプです。- 7
- 単一ノードの OpenShift クラスターのサブネットと一致するように
cidr
値を設定します。 - 8
- インストールディスクドライブへのパスを設定します (例:
/dev/disk/by-id/wwn-0x64cd98f04fde100024684cf3034da5c2)
。 - 9
- Red Hat OpenShift Cluster Manager からプルシークレット をコピーし、その内容をこの設定に追加します。
- 10
- インストール後にクラスターにログインできるように、管理ホストから公開 SSH 鍵を追加します。
以下のコマンドを実行して、OpenShift Container Platform アセットを生成します。
mkdir ocp
$ mkdir ocp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cp install-config.yaml ocp
$ cp install-config.yaml ocp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ./openshift-install --dir=ocp create single-node-ignition-config
$ ./openshift-install --dir=ocp create single-node-ignition-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、Ignition データを RHCOS ISO に埋め込みます。
alias coreos-installer='podman run --privileged --pull always --rm \ -v /dev:/dev -v /run/udev:/run/udev -v $PWD:/data \ -w /data quay.io/coreos/coreos-installer:release'
$ alias coreos-installer='podman run --privileged --pull always --rm \ -v /dev:/dev -v /run/udev:/run/udev -v $PWD:/data \ -w /data quay.io/coreos/coreos-installer:release'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow coreos-installer iso ignition embed -fi ocp/bootstrap-in-place-for-live-iso.ign rhcos-live.iso
$ coreos-installer iso ignition embed -fi ocp/bootstrap-in-place-for-live-iso.ign rhcos-live.iso
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.2.2. openshift-install を使用したクラスターのインストールの監視 リンクのコピーリンクがクリップボードにコピーされました!
openshift-install
を使用して、単一ノードクラスターのインストールの進行状況を監視します。
前提条件
- サーバーの BIOS 設定のブートドライブの順序が、デフォルトでターゲットインストールディスクからサーバーを起動するように設定されていることを確認する。
手順
- 検出 ISO イメージをターゲットホストに接続します。
- 検出 ISO イメージからサーバーを起動します。検出 ISO イメージは、システム設定をターゲットのインストールディスクに書き込み、サーバーの再起動を自動的にトリガーします。
管理ホストで、次のコマンドを実行してインストールを監視します。
./openshift-install --dir=ocp wait-for install-complete
$ ./openshift-install --dir=ocp wait-for install-complete
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コントロールプレーンのデプロイ中にサーバーが数回再起動します。
検証
インストールが完了したら、次のコマンドを実行して環境を確認します。
export KUBECONFIG=ocp/auth/kubeconfig
$ export KUBECONFIG=ocp/auth/kubeconfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get nodes
$ oc get nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
NAME STATUS ROLES AGE VERSION control-plane.example.com Ready master,worker 10m v1.25.0
NAME STATUS ROLES AGE VERSION control-plane.example.com Ready master,worker 10m v1.25.0
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.3. USB ドライブに起動可能な ISO イメージを作成する リンクのコピーリンクがクリップボードにコピーされました!
ISO イメージを含む起動可能な USB ドライブを使用して、ソフトウェアをインストールできます。USB ドライブを使用してサーバーを起動すると、ソフトウェアをインストールするサーバーの準備が整います。
手順
- 管理ホストで、USB ドライブを USB ポートに挿入します。
起動可能な USB ドライブを作成します。以下に例を示します。
dd if=<path_to_iso> of=<path_to_usb> status=progress
# dd if=<path_to_iso> of=<path_to_usb> status=progress
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ここでは、以下のようになります。
- <path_to_iso>
-
rhcos-live.iso
など、ダウンロードした ISO ファイルへの相対パスです。 - <path_to_usb>
-
/dev/sdb
など、接続された USB ドライブの場所です。
ISO が USB ドライブにコピーされたら、USB ドライブを使用してサーバーにソフトウェアをインストールできます。
2.4. Redfish API を使用した HTTP ホスト ISO イメージからの起動 リンクのコピーリンクがクリップボードにコピーされました!
Redfish Baseboard Management Controller (BMC) API を使用してインストールした ISO を使用して、ネットワーク内のホストをプロビジョニングできます。
前提条件
- インストール Red Hat Enterprise Linux CoreOS (RHCOS) ISO をダウンロードしている。
手順
- ネットワークでアクセス可能な HTTP サーバーに ISO ファイルをコピーします。
ホストされている ISO ファイルからホストを起動します。以下に例を示します。
次のコマンドを実行して、redfish API を呼び出し、ホストされている ISO を
VirtualMedia
ブートメディアとして設定します。curl -k -u <bmc_username>:<bmc_password> -d '{"Image":"<hosted_iso_file>", "Inserted": true}' -H "Content-Type: application/json" -X POST <host_bmc_address>/redfish/v1/Managers/iDRAC.Embedded.1/VirtualMedia/CD/Actions/VirtualMedia.InsertMedia
$ curl -k -u <bmc_username>:<bmc_password> -d '{"Image":"<hosted_iso_file>", "Inserted": true}' -H "Content-Type: application/json" -X POST <host_bmc_address>/redfish/v1/Managers/iDRAC.Embedded.1/VirtualMedia/CD/Actions/VirtualMedia.InsertMedia
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 詳細は以下のようになります。
- <bmc_username>:<bmc_password>
- ターゲットホスト BMC のユーザー名とパスワードです。
- <hosted_iso_file>
-
ホストされたインストール ISO の URL です (例:
http://webserver.example.com/rhcos-live-minimal.iso
)。ISO は、ターゲットホストマシンからアクセスできる必要があります。 - <host_bmc_address>
- ターゲットホストマシンの BMC IP アドレスです。
次のコマンドを実行して、
VirtualMedia
デバイスから起動するようにホストを設定します。curl -k -u <bmc_username>:<bmc_password> -X PATCH -H 'Content-Type: application/json' -d '{"Boot": {"BootSourceOverrideTarget": "Cd", "BootSourceOverrideMode": "UEFI", "BootSourceOverrideEnabled": "Once"}}' <host_bmc_address>/redfish/v1/Systems/System.Embedded.1
$ curl -k -u <bmc_username>:<bmc_password> -X PATCH -H 'Content-Type: application/json' -d '{"Boot": {"BootSourceOverrideTarget": "Cd", "BootSourceOverrideMode": "UEFI", "BootSourceOverrideEnabled": "Once"}}' <host_bmc_address>/redfish/v1/Systems/System.Embedded.1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ホストを再起動します。
curl -k -u <bmc_username>:<bmc_password> -d '{"ResetType": "ForceRestart"}' -H 'Content-type: application/json' -X POST <host_bmc_address>/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset
$ curl -k -u <bmc_username>:<bmc_password> -d '{"ResetType": "ForceRestart"}' -H 'Content-type: application/json' -X POST <host_bmc_address>/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: ホストの電源がオフになっている場合は、
{"ResetType": "On"}
スイッチを使用して起動できます。以下のコマンドを実行します。curl -k -u <bmc_username>:<bmc_password> -d '{"ResetType": "On"}' -H 'Content-type: application/json' -X POST <host_bmc_address>/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset
$ curl -k -u <bmc_username>:<bmc_password> -d '{"ResetType": "On"}' -H 'Content-type: application/json' -X POST <host_bmc_address>/redfish/v1/Systems/System.Embedded.1/Actions/ComputerSystem.Reset
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5. リモートサーバーアクセス用のカスタムライブ RHCOS ISO の作成 リンクのコピーリンクがクリップボードにコピーされました!
場合によっては、外部ディスクドライブをサーバーに接続できませんが、サーバーにリモートアクセスしてノードをプロビジョニングする必要があります。サーバーへの SSH アクセスを有効にすることが推奨されます。起動後にサーバーにアクセスできるように、SSHd を有効にし、事前定義された認証情報を使用してライブ RHCOS ISO を作成できます。
前提条件
-
butane
ユーティリティーをインストールした。
手順
-
coreos-installer
イメージの mirror ページからcoreos-installer
バイナリーをダウンロードします。 - mirror.openshift.com から最新のライブ RHCOS ISO をダウンロードします。
butane
ユーティリティーが Ignition ファイルの作成に使用するembedded.yaml
ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
core
ユーザーには sudo 権限があります。
butane
ユーティリティーを実行し、以下のコマンドを使用して Ignition ファイルを作成します。butane -pr embedded.yaml -o embedded.ign
$ butane -pr embedded.yaml -o embedded.ign
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Ignition ファイルが作成されたら、
coreos-installer
ユーティリティーを使用して、rhcos-sshd-4.12.0-x86_64-live.x86_64.iso
という名前の新しいライブ RHCOS ISO に設定を含めることができます。coreos-installer iso ignition embed -i embedded.ign rhcos-4.12.0-x86_64-live.x86_64.iso -o rhcos-sshd-4.12.0-x86_64-live.x86_64.iso
$ coreos-installer iso ignition embed -i embedded.ign rhcos-4.12.0-x86_64-live.x86_64.iso -o rhcos-sshd-4.12.0-x86_64-live.x86_64.iso
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、カスタムライブ ISO を使用してサーバーを起動できることを確認します。
coreos-installer iso ignition show rhcos-sshd-4.12.0-x86_64-live.x86_64.iso
# coreos-installer iso ignition show rhcos-sshd-4.12.0-x86_64-live.x86_64.iso
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Legal Notice
リンクのコピーリンクがクリップボードにコピーされました!
Copyright © 2025 Red Hat
OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
Modified versions must remove all Red Hat trademarks.
Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.
Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.