17.4.2. シングルノード OpenShift のイメージベースのデプロイについて
openshift-install プログラムを使用すると、設定 ISO を手動で生成できます。設定 ISO をプリインストールされたホストにアタッチして、デプロイを完了します。
17.4.2.1. openshift-install プログラムを使用したシングルノード OpenShift クラスターのデプロイ リンクのコピーリンクがクリップボードにコピーされました!
openshift-install プログラムを使用して、イメージベースのインストールでプリインストールしたホストを設定およびデプロイできます。サイト固有の詳細情報を使用してターゲットホストを設定するには、次のリソースを作成する必要があります。
-
install-config.yamlインストールマニフェスト -
image-based-config.yamlマニフェスト
openshift-install プログラムは、これらのリソースを使用して設定 ISO を生成します。この設定 ISO をプリインストールされたターゲットホストにアタッチして、デプロイを完了します。
image-based-config.yaml マニフェストの仕様の詳細は、「image-based-config.yaml マニフェストのリファレンス仕様」を参照してください。
前提条件
- イメージベースのインストールを使用して、シングルノード OpenShift をホストにプリインストールした。
-
最新バージョンの
openshift-installプログラムをダウンロードした。 - プルリクエストを認証するためのプルシークレットを作成した。詳細は、「イメージプルシークレットの使用」を参照してください。
手順
次のコマンドを実行して作業ディレクトリーを作成します。
$ mkdir ibi-config-iso-workdir1 - 1
ibi-config-iso-workdirは、作業ディレクトリーの名前に置き換えます。
インストールマニフェストを作成します。
install-configマニフェストを定義する YAML ファイルを作成します。install-config.yamlファイルの例apiVersion: v1 metadata: name: sno-cluster-name baseDomain: host.example.com compute: - architecture: amd64 hyperthreading: Enabled name: worker replicas: 0 controlPlane: architecture: amd64 hyperthreading: Enabled name: master replicas: 1 networking: machineNetwork:1 - cidr: 192.168.200.0/24 #- cidr: fd01::/64 platform: none: {} fips: false cpuPartitioningMode: "AllNodes" pullSecret: '{"auths":{"<your_pull_secret>"}}}' sshKey: 'ssh-rsa <your_ssh_pub_key>'- 1
- デュアルスタックネットワークの場合、リスト形式を使用して IPv4 と IPv6 の両方の CIDR を指定できます。リストの最初の CIDR はプライマリーアドレスファミリーであり、シードクラスターのプライマリーアドレスファミリーと一致する必要があります。
重要クラスターをデプロイするのにプロキシー設定が必要な場合は、次の手順を実行する必要があります。
- プロキシー設定を備えたシードクラスターからシードイメージを作成します。2 つのプロキシー設定が同じである必要はありません。
-
インストールマニフェストの
machineNetworkフィールドを設定します。
- ファイルを作業ディレクトリーに保存します。
オプション: 次のコマンドを実行して、作業ディレクトリーに設定テンプレートを作成します。
$ openshift-install image-based create config-template --dir ibi-config-iso-workdir/出力例
INFO Config-Template created in: ibi-config-iso-workdirこのコマンドにより、作業ディレクトリーに
image-based-config.yaml設定テンプレートが作成されます。# # Note: This is a sample ImageBasedConfig file showing # which fields are available to aid you in creating your # own image-based-config.yaml file. # apiVersion: v1beta1 kind: ImageBasedConfig metadata: name: example-image-based-config additionalNTPSources: - 0.rhel.pool.ntp.org - 1.rhel.pool.ntp.org hostname: change-to-hostname releaseRegistry: quay.io # networkConfig contains the network configuration for the host in NMState format. # See https://nmstate.io/examples.html for examples. networkConfig: interfaces: - name: eth0 type: ethernet state: up mac-address: 00:00:00:00:00:00 ipv4: enabled: true address: - ip: 192.168.122.2 prefix-length: 23 dhcp: false設定ファイルを編集します。
image-based-config.yamlファイルの例# # Note: This is a sample ImageBasedConfig file showing # which fields are available to aid you in creating your # own image-based-config.yaml file. # apiVersion: v1beta1 kind: ImageBasedConfig metadata: name: sno-cluster-name additionalNTPSources: - 0.rhel.pool.ntp.org - 1.rhel.pool.ntp.org hostname: host.example.com releaseRegistry: quay.io # networkConfig contains the network configuration for the host in NMState format. # See https://nmstate.io/examples.html for examples. networkConfig: interfaces: - name: ens1f0 type: ethernet state: up ipv4: enabled: true dhcp: false auto-dns: false address: - ip: 192.168.200.25 prefix-length: 24 ipv6: enabled: false dns-resolver: config: server: - 192.168.15.47 - 192.168.15.48 routes: config: - destination: 0.0.0.0/0 metric: 150 next-hop-address: 192.168.200.254 next-hop-interface: ens1f0次のコマンドを実行して、作業ディレクトリーに設定 ISO を作成します。
$ openshift-install image-based create config-image --dir ibi-config-iso-workdir/出力例
INFO Adding NMConnection file <ens1f0.nmconnection> INFO Consuming Install Config from target directory INFO Consuming Image-based Config ISO configuration from target directory INFO Config-Image created in: ibi-config-iso-workdir/auth作業ディレクトリーで出力を確認します。
出力例
ibi-config-iso-workdir/ ├── auth │ ├── kubeadmin-password │ └── kubeconfig └── imagebasedconfig.iso-
任意の方法を使用して
imagebasedconfig.isoをプリインストールされたホストにアタッチします。ホストを再起動して設定プロセスを完了し、クラスターをデプロイします。
検証
ホストで設定プロセスが完了したら、クラスターにアクセスしてそのステータスを確認します。
次のコマンドを実行して、
kubeconfig環境変数を kubeconfig ファイルにエクスポートします。$ export KUBECONFIG=ibi-config-iso-workdir/auth/kubeconfig次のコマンドを実行して、クラスターが応答していることを確認します。
$ oc get nodes出力例
NAME STATUS ROLES AGE VERSION node/sno-cluster-name.host.example.com Ready control-plane,master 5h15m v1.33.4
17.4.2.1.1. image-based-config.yaml マニフェストのリファレンス仕様 リンクのコピーリンクがクリップボードにコピーされました!
以下では、image-based-config.yaml マニフェストの仕様を説明します。
openshift-install プログラムは、image-based-config.yaml マニフェストを使用して、シングルノード OpenShift のイメージベースのデプロイ用にサイト固有の設定 ISO を作成します。
| 仕様 | 型 | 説明 |
|---|---|---|
|
|
| シングルノード OpenShift クラスターのノードの名前を定義します。 |
| 仕様 | 型 | 説明 |
|---|---|---|
|
|
| ホストのネットワーク設定を指定します。次に例を示します。
静的ネットワークが必要な場合は、ライブインストール ISO を作成するホストに 重要 インターフェイスの名前は、オペレーティングシステムに表示される実際の NIC 名と同じである必要があります。 |
|
|
| 全クラスターホストの NTP ソースのリストを指定します。これらの NTP ソースは、クラスター内の既存の NTP ソースに追加されます。NTP ソースのホスト名または IP アドレスを使用できます。 |
|
|
| シードクラスターのリリースイメージに使用したコンテナーイメージレジストリーを指定します。 |
|
|
| シングルノード OpenShift ノードのカスタムノードラベルを指定します。次に例を示します。
|