9.3. 汎用デバイスプラグインの設定
MicroShift の汎用デバイスプラグインは、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
Generic Device Plugin (GDP)は、MicroShift ではデフォルトで無効になっています。GDP を使用するには、これを有効にして、Kubernetes アプリケーションがアクセスできるホストデバイスを指定する必要があります。GDP を有効にするには、MicroShift config.yaml ファイルを変更するか、設定スニペットファイルを作成する必要があります。たとえば、/etc/microshift/config.d/10-gdp.yaml です。
前提条件
- MicroShift をインストールしている。
-
/etc/microshiftディレクトリーにカスタムのconfig.yamlファイルを作成している。 -
OpenShift CLI (
oc) がインストールされている。 -
MicroShift ホストで
sudo権限がある。 -
MicroShift ノードに公開する特定のホストデバイスを特定している。たとえば、
/dev/video0、/dev/ttyUSB*、USB Vendor/Product ID などです。
手順
-
sudo権限を使用して CLI から、テキストエディターで/etc/microshift/config.yamlを開きます。 -
genericDevicePluginセクションを見つけます。存在しない場合は追加します。 statusパラメーターをEnabledに設定し、公開する必要のあるデバイスを定義します。各デバイス定義には、1 つ以上のグループが必要です。各グループは、glob パターンを含むファイルベースのデバイスに対して、Vendor/Product ID を使用する USB デバイスのパスを使用してデバイスを指定できます。同じデバイスグループ内の混在させることはできません。パスと USB をデフォルト値を持つ GDP フィールド
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要-
microshift show-configパラメーターの出力には、config.yamlで明示的に設定していない場合でも、シリアルデバイスの事前設定されたデフォルトパスが含まれる場合があります。これらのパスは、Generic Device プラグインが特定のユーザー設定なしで有効になっている場合にデフォルトの検出設定を表します。 -
一貫性と正確なデバイスターゲットについては、特に同様のデバイスを処理する場合は、
/dev/ttyUSB*などの幅広い glob パターンの代わりに、/dev/serial/by-id/や特定の USB ベンダー、製品、または Serial ID などの安定したデバイスパスを使用することを検討してください。 -
デバイスグループの
countパラメーターにより、単一デバイスまたはグロブで一致するデバイスのセットを同時に、異なる Pod に複数回割り当てることができます。省略されている場合、countはデフォルトで1に設定されます。
-
-
config.yamlファイルを保存します。 MicroShift サービスを再起動して、変更を適用します。
sudo systemctl restart microshift
$ sudo systemctl restart microshiftCopy to Clipboard Copied! Toggle word wrap Toggle overflow MicroShift が再起動するまでしばらく、GDP がそのデバイスを Kubelet に登録できるようにします。
検証
次のコマンドを実行して、ノードで使用可能なデバイスを確認できます。
oc describe node <microshift_node_name> | grep "device.microshift.io"
$ oc describe node <microshift_node_name> | grep "device.microshift.io"1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- < ;microshift_node_name> は、ノード名に置き換えます。
設定に応じて、デバイスが MicroShift ノード内で検出およびスケジュール可能であることを示す出力。
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow