12.2. 単一ノードでの OpenShift のインストール
12.2.1. アシステッドインストーラーを使用したディスカバリー ISO の生成
OpenShift Container Platform を 1 つのノードにインストールするには、検出 ISO が必要です。この ISO は、クラスター名、ベースドメイン、Secure Shell (SSH) 公開鍵、およびプルシークレットを使用して生成されます。
手順
- 管理ノードでブラウザーを開き、Install OpenShift with the Assisted Installer に移動します。
- Create Cluster をクリックして新規クラスターを作成します。
- Cluster Name フィールドにクラスターの名前を入力します。
Base Domain フィールドにベースドメインを入力します。以下に例を示します。
example.com
すべての DNS レコードはこのベースドメインのサブドメインである必要があり、クラスター名が含まれる必要があります。クラスターのインストール後にベースドメインを変更することはできません。以下に例を示します。
<cluster-name>.example.com
- シングルノード OpenShift (SNO) のインストールを選択します。
- 単一ノードに OpenShift Container Platform をインストールする場合の制限の一部を概説している 4.10 リリースノートをお読みください。
- OpenShift Container Platform バージョンを選択します。
- オプション: プルシークレットを編集します。
- Next をクリックします。
- Generate Discovery ISO をクリックします。
- USB ドライブまたは PXE で起動するには、フルイメージファイルを選択します。仮想メディアで起動するには、最小イメージファイルを選択します。
- 管理ノードの SSH 公開鍵を 公開鍵フィールドに追加します。
- Generate Discovery ISO をクリックします。
- 検出 ISO をダウンロードします。
- 仮想メディアを使用してインストールするための検出 ISO URL を書き留めておきます。
このプロセス中に OpenShift Virtualization を有効にする場合は、仮想マシン用に 50 GiB 以上の 2 つ目のローカルストレージデバイスが必要です。
12.2.2. ディスカバリー ISO の手動生成
OpenShift Container Platform を単一ノードにインストールするには、ディスカバリー ISO が必要です。これは、以下の手順で生成できます。
手順
OpenShift Container Platform クライアント (
oc
) をダウンロードし、次のコマンドを入力して使用できるようにします。$ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/latest/openshift-client-linux.tar.gz > oc.tar.gz
$ tar zxf oc.tar.gz
$ chmod +x oc
OpenShift Container Platform バージョンを設定します。
$ OCP_VERSION=<ocp_version> 1
- 1
<ocp_version>
を現在のバージョンに置き換えます。例:latest-4.10
OpenShift Container Platform インストーラーをダウンロードし、以下のコマンドを入力して使用できるようにします。
$ curl -k https://mirror.openshift.com/pub/openshift-v4/clients/ocp/$OCP_VERSION/openshift-install-linux.tar.gz > openshift-install-linux.tar.gz
$ tar zxvf openshift-install-linux.tar.gz
$ chmod +x openshift-install
RHCOS ISO URL を取得します。
$ ISO_URL=$(./openshift-install coreos print-stream-json | grep location | grep x86_64 | grep iso | cut -d\" -f4)
RHCOS ISO をダウンロードします。
$ curl -L $ISO_URL > rhcos-live.x86_64.iso
install-config.yaml
ファイルを作成します。apiVersion: v1 baseDomain: <domain> 1 compute: - name: worker replicas: 0 2 controlPlane: name: master replicas: 1 3 metadata: name: <name> 4 networking: networkType: OVNKubernetes clusterNetwork: - cidr: <IP_address>/<prefix> 5 hostPrefix: <prefix> 6 serviceNetwork: - <IP_address>/<prefix> 7 platform: none: {} bootstrapInPlace: installationDisk: <path_to_install_drive> 8 pullSecret: '<pull_secret>' 9 sshKey: | <ssh_key> 10
- 1
- クラスタードメイン名を追加します。
- 2
compute
レプリカを0
に設定します。これにより、コントロールプレーンノードがスケジュール可能になります。- 3
controlPlane
レプリカを1
に設定します。この設定は、以前のcompute
設定と組み合わせて、クラスターが単一ノードで実行されるようにします。- 4
メタデータ
名をクラスター名に設定します。- 5
clusterNetwork
CIDR を設定します。- 6
cluster Network
ホスト接頭辞を設定します。Pod は、このプールから IP アドレスを取得します。- 7
serviceNetwork
CIDR を設定します。サービスは、このプールから IP アドレスを取得します。- 8
- インストールディスクドライブへのパスを設定します。
- 9
- Red Hat OpenShift Cluster Manager からプルシークレット をコピーします。手順 1 で、プルシークレットのダウンロードをクリックし、コンテンツをこの設定オプションに追加します。
- 10
- インストール後にクラスターにログインできるように、管理ホストから公開 SSH 鍵を追加します。
OpenShift Container Platform アセットの生成:
$ mkdir ocp
$ cp install-config.yaml ocp
$ ./openshift-install --dir=ocp create single-node-ignition-config
Ignition データを RHCOSISO に埋め込みます。
$ 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'
$ cp ocp/bootstrap-in-place-for-live-iso.ign iso.ign
$ coreos-installer iso ignition embed -fi iso.ign rhcos-live.x86_64.iso
12.2.3. USB メディアを使用したインストール
USB メディアを使用してインストールするには、管理ノードに検出 ISO を用いて起動可能な USB ドライブを作成します。USB ドライブを使用してサーバーを起動すると、1 つのノードインストール用のノードを準備します。
手順
- 管理ノードで、USB ドライブを USB ポートに挿入します。
起動可能な USB ドライブを作成します。
# dd if=<path-to-iso> of=<path/to/usb> status=progress
以下に例を示します。
# dd if=discovery_image_sno.iso of=/dev/sdb status=progress
ISO を USB ドライブにコピーした後に、USB ドライブを使用して OpenShift Container Platform をインストールできます。
- サーバーで、USB ドライブを USB ポートに挿入します。
- サーバーを再起動して、再起動時に BIOS 設定を入力します。
- ブートドライブの順序を変更して、最初に USB ドライブを起動できるようにします。
- BIOS 設定を保存して終了します。サーバーは、検出イメージで起動します。
12.2.4. アシステッドインストーラーによるインストールの監視
アシステッドインストーラーを使用して ISO を作成した場合は、この手順でインストールを監視します。
手順
- 管理ホストでブラウザーに戻り、ページを更新します。必要な場合は、Install OpenShift を Assisted Installer ページで再読み込みし、クラスター名を選択します。
- 手順 3 の ネットワーク に到達するまで、次へ をクリックします。
- 利用可能なサブネットからサブネットを選択します。
- Use the same host discovery SSH key をチェックしたままにします。必要に応じて SSH 公開鍵を変更できます。
- 次へをクリックして、レビューと作成の手順に進みます。
- Install cluster をクリックします。
- インストールの進捗を監視します。クラスターイベントを確認します。インストールプロセスが完了すると、サーバーのドライブへの検出イメージの書き込みが完了すると、サーバーは再起動されます。USB ドライブを削除し、BIOS をリセットして、USB ドライブではなくサーバーのローカルメディアに対して起動します。
サーバーは数回再起動し、コントロールプレーンをデプロイします。
12.2.5. インストールの手動監視
ISO を手動で作成した場合は、この手順を使用してインストールを監視します。
手順
インストールを監視します。
$ ./openshift-install --dir=ocp wait-for install-complete
コントロールプレーンのデプロイメント中に、サーバーは数回再起動します。
オプション: インストールが完了したら、環境を確認します。
$ export KUBECONFIG=ocp/auth/kubeconfig
$ oc get nodes
$ oc get clusterversion