13.2. 単一ノードでの OpenShift のインストール
Web ベースの Assisted Installer と、Assisted Installer を使用して生成した検出 ISO を使用して、単一ノードの OpenShift をインストールできます。また、coreos-installer を使用してインストール ISO を生成することにより、単一ノードの OpenShift をインストールすることもできます。
13.2.1. Assisted Installer を使用した単一ノード OpenShift のインストール リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、Web ベースのアシステッドインストーラーウィザードのガイドに従い、インストールを管理します。
13.2.1.1. アシステッドインストーラーを使用したディスカバリー ISO の生成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、Assisted Installer が生成できる検出 ISO が必要です。
手順
- 管理ホストでブラウザーを開き、Red Hat OpenShift Cluster Manager に移動します。
- Create Cluster をクリックして新規クラスターを作成します。
- Cluster name フィールドにクラスターの名前を入力します。
Base domain フィールドにベースドメインを入力します。以下に例を示します。
example.com
example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow すべての DNS レコードはこのベースドメインのサブドメインである必要があり、クラスター名が含まれる必要があります。以下に例を示します。
<cluster-name>.example.com
<cluster-name>.example.comCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記クラスターのインストール後にベースドメインまたはクラスター名を変更することはできません。
- Install single node OpenShift (SNO) を選択し、ウィザードの残りの手順を完了します。検出 ISO をダウンロードします。
- 仮想メディアを使用してインストールするための検出 ISO URL を書き留めておきます。
このプロセス中に OpenShift Virtualization を有効にする場合は、仮想マシン用に 50 GiB 以上の 2 つ目のローカルストレージデバイスが必要です。
13.2.1.2. Assisted Installer を使用した単一ノード OpenShift のインストール リンクのコピーリンクがクリップボードにコピーされました!
Assisted Installer を使用して、単一ノードクラスターをインストールします。
手順
- RHCOS 検出 ISO をターゲットホストにアタッチします。
- サーバーの BIOS 設定で起動ドライブの順序を設定して、アタッチされた検出 ISO から起動し、サーバーを再起動します。
- 管理ホストで、ブラウザーに戻ります。ホストが、検出されたホストのリストに表示されるまで待ちます。必要に応じて、Assisted Clusters ページを再読み込みし、クラスター名を選択します。
- インストールウィザードの手順を完了します。使用可能なサブネットからのサブネットを含む、ネットワークの詳細を追加します。必要に応じて SSH 公開鍵を追加します。
- インストールの進捗を監視します。クラスターイベントを確認します。インストールプロセスがサーバーのハードディスクへのオペレーティングシステムイメージの書き込みを完了すると、サーバーが再起動します。
検出 ISO を削除し、インストールドライブから起動するようにサーバーをリセットします。
サーバーが自動的に数回再起動し、コントロールプレーンがデプロイされます。
13.2.2. 単一ノードの OpenShift を手動でインストールする リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、最初にインストール ISO を生成してから、ISO からサーバーを起動します。openshift-install インストールプログラムを使用して、インストールを監視できます。
13.2.2.1. coreos-installer によるインストール ISO の生成 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform を単一ノードにインストールするには、インストール ISO が必要です。これは、以下の手順で生成できます。
前提条件
-
podmanをインストールします。
手順
OpenShift Container Platform バージョンを設定します。
OCP_VERSION=<ocp_version>
$ OCP_VERSION=<ocp_version>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<ocp_version>を現在のバージョン (latest-4.12など) に置き換えます。
ホストアーキテクチャーを設定します。
ARCH=<architecture>
$ 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.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow tar zxf oc.tar.gz
$ tar zxf oc.tar.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow chmod +x oc
$ chmod +x ocCopy 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.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow tar zxvf openshift-install-linux.tar.gz
$ tar zxvf openshift-install-linux.tar.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow chmod +x openshift-install
$ chmod +x openshift-installCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを実行して、RHCOS ISO URL を取得します。
ISO_URL=$(./openshift-install coreos print-stream-json | grep location | grep $ARCH | grep iso | cut -d\" -f4)
$ 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.isoCopy 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 ocpCopy to Clipboard Copied! Toggle word wrap Toggle overflow cp install-config.yaml ocp
$ cp install-config.yaml ocpCopy 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-configCopy 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.isoCopy to Clipboard Copied! Toggle word wrap Toggle overflow
13.2.2.2. openshift-install を使用したクラスターのインストールの監視 リンクのコピーリンクがクリップボードにコピーされました!
openshift-install を使用して、単一ノードクラスターのインストールの進行状況を監視します。
手順
- 変更した RHCOS インストール ISO をターゲットホストにアタッチします。
- サーバーの BIOS 設定で起動ドライブの順序を設定して、アタッチされた検出 ISO から起動し、サーバーを再起動します。
管理ホストで、次のコマンドを実行してインストールを監視します。
./openshift-install --dir=ocp wait-for install-complete
$ ./openshift-install --dir=ocp wait-for install-completeCopy to Clipboard Copied! Toggle word wrap Toggle overflow コントロールプレーンのデプロイ中にサーバーが数回再起動します。
検証
インストールが完了したら、次のコマンドを実行して環境を確認します。
export KUBECONFIG=ocp/auth/kubeconfig
$ export KUBECONFIG=ocp/auth/kubeconfigCopy to Clipboard Copied! Toggle word wrap Toggle overflow oc get nodes
$ oc get nodesCopy 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.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.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=progressCopy to Clipboard Copied! Toggle word wrap Toggle overflow ここでは、以下のようになります。
- <path_to_iso>
-
rhcos-live.isoなど、ダウンロードした ISO ファイルへの相対パスです。 - <path_to_usb>
-
/dev/sdbなど、接続された USB ドライブの場所です。
ISO が USB ドライブにコピーされたら、USB ドライブを使用してサーバーにソフトウェアをインストールできます。
13.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.InsertMediaCopy 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.1Copy 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.ResetCopy 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.ResetCopy to Clipboard Copied! Toggle word wrap Toggle overflow
13.2.5. リモートサーバーアクセス用のカスタムライブ RHCOS ISO の作成 リンクのコピーリンクがクリップボードにコピーされました!
場合によっては、外部ディスクドライブをサーバーに接続することはできませんが、サーバーにリモートアクセスしてノードをプロビジョニングする必要があります。サーバーへの SSH アクセスを有効にすることを推奨します。起動後にサーバーにアクセスできるように、SSHd を有効にし、事前定義された認証情報を使用してライブ RHCOS ISO を作成できます。
前提条件
-
butaneユーティリティーをインストールしました。
手順
-
coreos-installerイメージ ミラー ページから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.ignCopy 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.isoCopy 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.isoCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow