This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.6.5. SR-IOV の設定
OpenShift Container Platform には、OpenShift Container Platform ノードで SR-IOV ハードウェアを使用する機能が含まれます。これにより、他のネットワークインターフェースに加えて SR-IOV Virtual Function (VF) インターフェースを Pod に割り当てることができます。
この機能を有効にするには、SR-IOV ネットワークデバイスプラグインおよび SR-IOV CNI プラグインという 2 つのコンポーネントが必要になります。
- SR-IOV ネットワークプラグインは、SR-IOV ネットワークの Virtual Function (VF) リソースを検出し、公開し、割り当てるための Kubernetes デバイスプラグインです。デバイスプラグインは、とりわけ物理デバイスでの制限されたリソースの使用を有効にするために Kubernetes で使用されます。デバイスプラグインは、Kubernetes スケジューラーに使い切られたリソースについて認識させ、Pod が利用可能なリソースが十分にあるワーカーノードにスケジュールされるようにします。
- SR-IOV CNI プラグインは、SR-IOV デバイスプラグインから割り当てられる VF インターフェースを Pod につなぎます。
6.5.1. サポートされるデバイス リンクのコピーリンクがクリップボードにコピーされました!
以下のネットワークインターフェースカード (NIC) モデルは OpenShift Container Platform でサポートされています。
- Intel XXV710-DA2 25G カード (ベンダー ID 0x8086 およびデバイス ID 0x158b)
- Mellanox MT27710 Family [ConnectX-4 Lx] 25G カード (ベンダー ID 0x15b3 およびデバイス ID 0x1015)
- Mellanox MT27800 Family [ConnectX-5] 100G カード (ベンダー ID 0x15b3 およびデバイス ID 0x1017)
Mellanox カードの場合、VF をホストにプロビジョニングする前に SR-IOV がファームウェアで有効にされていることを確認します。
6.5.2. SR-IOV プラグインおよび daemonset の作成 リンクのコピーリンクがクリップボードにコピーされました!
SR-IOV VF の作成は、SR-IOV デバイスプラグインおよび SR-IOV CNI では処理されません。SR-IOV VF をホストにプロビジョニングするには、これを手動で設定する必要があります。
SR-IOV ネットワークプラグインおよび SR-IOV CNI プラグインを使用するには、クラスター内の各ノード上で、両方のプラグインをデーモンモードで実行します。
以下の内容を含む
openshift-sriov
namespace の YAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、
openshift-sriov
namespace を作成します。oc create -f openshift-sriov.yaml
$ oc create -f openshift-sriov.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の内容を含む
sriov-device-plugin
サービスアカウントの YAML ファイルを作成します。apiVersion: v1 kind: ServiceAccount metadata: name: sriov-device-plugin namespace: openshift-sriov
apiVersion: v1 kind: ServiceAccount metadata: name: sriov-device-plugin namespace: openshift-sriov
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行し、
sriov-device-plugin
サービスアカウントを作成します。oc create -f sriov-device-plugin.yaml
$ oc create -f sriov-device-plugin.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の内容を含む
sriov-cni
サービスアカウントの YAML ファイルを作成します。apiVersion: v1 kind: ServiceAccount metadata: name: sriov-cni namespace: openshift-sriov
apiVersion: v1 kind: ServiceAccount metadata: name: sriov-cni namespace: openshift-sriov
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行し、
sriov-cni
サービスアカウントを作成します。oc create -f sriov-cni.yaml
$ oc create -f sriov-cni.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の内容を含む
sriov-device-plugin
DaemonSet の YAML ファイルを作成します。注記SR-IOV ネットワークデバイスプラグインデーモンは、起動時に各ホストで設定されたすべての (サポートされている NIC モデルの) SR-IOV VF を検出し、検出されたリソースを公開します。割り当てることのできる利用可能な SR-IOV VF リソースの数は、
oc describe node <node-name>
コマンドでノードを記述して確認できます。SR-IOV VF リソースのリソース名はopenshift.io/sriov
です。ノードで利用可能な SR-IOV VF がない場合、ゼロ (0) の値が表示されます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行し、
sriov-device-plugin
DaemonSet を作成します。oc create -f sriov-device-plugin.yaml
oc create -f sriov-device-plugin.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下の内容を含む
sriov-cni
DaemonSet の YAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行し、
sriov-cni
DaemonSet を作成します。oc create -f sriov-cni.yaml
$ oc create -f sriov-cni.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.5.3. SR-IOV を使用した追加インターフェースの設定 リンクのコピーリンクがクリップボードにコピーされました!
SR-IOV 設定を使用してカスタムリソース (CR) の YAML ファイルを作成します。以下の CR の
name
フィールドには、値sriov-conf
が含まれます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、
sriov-conf
CR を作成します。oc create -f sriov-conf.yaml
$ oc create -f sriov-conf.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NetworkAttachmentDefinition
の名前を参照し、1 つのopenshift.io/sriov
リソースを参照する Pod の YAML ファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して
sriovsamplepod
Pod を作成します。oc create -f sriovsamplepod.yaml
$ oc create -f sriovsamplepod.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ip
コマンドを実行して、追加のインターフェースを表示します。oc exec sriovsamplepod -- ip a
$ oc exec sriovsamplepod -- ip a
Copy to Clipboard Copied! Toggle word wrap Toggle overflow