6.4. ホストデバイスを使用した追加インターフェースの設定
ホストデバイスプラグインは、既存のネットワークデバイスを Pod に直接接続します。
以下のコードは、ダミーモジュールを使用してダミーデバイスを作成し、仮想デバイスをサポートし、ダミーデバイス name
を exampledevice0
に割り当てます。
$ modprobe dummy $ lsmod | grep dummy $ ip link add exampledevice0 type dummy
手順
ダミーネットワークデバイスを Pod に接続するには、Pod をデバイスがあるノードに割り当てられるようホストにラベルを付けます。
$ oc label nodes <your-worker-node-name> exampledevice=true $ oc get nodes --show-labels
この設定を参照するために、カスタムリソースの
hostdevice-example.yaml
という YAML ファイルを作成します。apiVersion: "k8s.cni.cncf.io/v1" kind: NetworkAttachmentDefinition metadata: name: hostdevice-example spec: config: '{ "cniVersion": "0.3.0", "type": "host-device", "device": "exampledevice0" }'
以下のコマンドを実行して
hostdevice-example
CR を作成します。$ oc create -f hostdevice-example.yaml
アノテーションでこの名前を参照する Pod の YAML ファイルを作成します。Pod をエイリアスを作成したマシンに割り当てるために
nodeSelector
を組み込みます。apiVersion: v1 kind: Pod metadata: name: hostdevicesamplepod annotations: k8s.v1.cni.cncf.io/networks: hostdevice-example spec: containers: - name: hostdevicesamplepod command: ["/bin/bash", "-c", "sleep 2000000000000"] image: centos/tools nodeSelector: exampledevice: "true"
以下のコマンドを実行して
hostdevicesamplepod
Pod を作成します。$ oc create -f hostdevicesamplepod.yaml
作成した追加インターフェースを表示します。
$ oc exec hostdevicesamplepod -- ip a
SR-IOV 複数ネットワークサポートはテクノロジープレビュー機能です。テクノロジープレビュー機能は Red Hat の実稼働環境でのサービスレベルアグリーメント (SLA) ではサポートされていないため、Red Hat では実稼働環境での使用を推奨していません。Red Hat は実稼働環境でこれらを使用することを推奨していません。これらの機能は、近々発表予定の製品機能をリリースに先駆けてご提供することにより、お客様は機能性をテストし、開発プロセス中にフィードバックをお寄せいただくことができます。
Red Hat のテクノロジープレビュー機能のサポート範囲についての詳細は、https://access.redhat.com/ja/support/offerings/techpreview/ を参照してください。