Menu Close
3.2.8. マシン設定マニフェストでのカスタムファームウェアブロブの読み込み
/usr/lib
内のファームウェアブロブのデフォルトの場所は読み取り専用であるため、検索パスを更新して、カスタムファームウェアブロブを特定できます。これにより、Blob が RHCOS によって管理されない場合に、マシン設定マニフェストでローカルファームウェア Blob を読み込むことができます。
手順
root が所有する、ローカルストレージ
に書き込み可能なように、検索パスを更新する Butane 設定ファイル 98-worker-firmware-blob.bu
を作成します。以下の例では、カスタム Blob ファイルをローカルワークステーションから/var/lib/firmware
の下にあるノードに配置しています。注記Butane の詳細は、「Butane を使用したマシン設定の作成」を参照してください。
カスタムファームウェア Blob の Butane 設定ファイル
variant: openshift version: 4.9.0 metadata: labels: machineconfiguration.openshift.io/role: worker name: 98-worker-firmware-blob storage: files: - path: /var/lib/firmware/<package_name> 1 contents: local: <package_name> 2 mode: 0644 3 openshift: kernel_arguments: - 'firmware_class.path=/var/lib/firmware' 4
- 1
- ファームウェアパッケージのコピー先となるノードのパスを設定します。
- 2
- Butane を実行しているシステムのローカルファイルディレクトリーから読み込むコンテンツを含むファイルを指定します。ローカルファイルのパスは
files-dir
ディレクトリーに相対的です。これは、以下の手順の Butane で--files-dir
オプションを使用して指定する必要があります。 - 3
- RHCOS ノードのファイルのパーミッションを設定します。
0644
パーミッションを設定することが推奨されます。 - 4
firmware_class.path
パラメーターは、ローカルワークステーションからノードのルートファイルシステムにコピーされたカスタムファームウェアブロブを検索するカーネルの検索パスをカスタマイズします。この例では、/var/lib/firmware
をカスタマイズされたパスとして使用します。
Butane を実行して、98
-worker-firmware-blob.yaml という名前のローカルワークステーションでファームウェアブロブのコピーを使用する
ファームウェアブロブには、ノードに配信される設定が含まれます。次の例では、MachineConfig
オブジェクトファイルを生成します。--files-dir
オプションを使用して、ローカルファイルまたはファイルが配置されているワークステーション上のディレクトリーを指定します。$ butane 98-worker-firmware-blob.bu -o 98-worker-firmware-blob.yaml --files-dir <directory_including_package_name>
以下の 2 つの方法のいずれかで、設定をノードに適用します。
-
クラスターがまだ起動していない場合は、マニフェストファイルを生成した後に、
MachineConfig
オブジェクトファイルを<installation_directory>/openshift
ディレクトリーに追加してから、クラスターの作成を続行します。 クラスターがすでに実行中の場合は、ファイルを適用します。
$ oc apply -f 98-worker-firmware-blob.yaml
MachineConfig
オブジェクト YAML ファイルは、マシンの設定を終了するために作成されます。
-
クラスターがまだ起動していない場合は、マニフェストファイルを生成した後に、
-
将来的に
MachineConfig
オブジェクトを更新する必要がある場合に備えて、Butane 設定を保存します。