11.7. 使用虚拟功能提高网络流量性能
按照以下步骤,为 OVN-Kubernetes 管理端口分配虚拟功能,并提高其网络流量性能。
此流程会导致创建两个池:第一个池具有 OVN-Kubernetes 使用的虚拟功能,第二个由剩余的虚拟功能组成。
先决条件
-
已安装 OpenShift CLI(
oc)。 -
您可以使用具有
cluster-admin角色的用户访问集群。
流程
运行以下命令,将
network.operator.openshift.io/smart-nic标签添加到带有 SmartNIC 的每个 worker 节点:$ oc label node <node-name> network.operator.openshift.io/smart-nic=使用
oc get nodes命令获取可用节点的列表。为管理端口创建一个名为
sriov-node-mgmt-vf-policy.yaml的策略,其内容如下:apiVersion: sriovnetwork.openshift.io/v1 kind: SriovNetworkNodePolicy metadata: name: sriov-node-mgmt-vf-policy namespace: openshift-sriov-network-operator spec: deviceType: netdevice eSwitchMode: "switchdev" nicSelector: deviceID: "1019" rootDevices: - 0000:d8:00.0 vendor: "15b3" pfNames: - ens8f0#0-01 nodeSelector: network.operator.openshift.io/smart-nic: "" numVfs: 62 priority: 5 resourceName: mgmtvf创建名为
sriov-node-policy.yaml的策略,其内容如下:apiVersion: sriovnetwork.openshift.io/v1 kind: SriovNetworkNodePolicy metadata: name: sriov-node-policy namespace: openshift-sriov-network-operator spec: deviceType: netdevice eSwitchMode: "switchdev" nicSelector: deviceID: "1019" rootDevices: - 0000:d8:00.0 vendor: "15b3" pfNames: - ens8f0#1-51 nodeSelector: network.operator.openshift.io/smart-nic: "" numVfs: 62 priority: 5 resourceName: mlxnics注意sriov-node-mgmt-vf-policy.yaml文件具有与sriov-node-policy.yaml文件不同的pfNames和resourceName键的值。为这两个策略应用配置:
$ oc create -f sriov-node-policy.yaml$ oc create -f sriov-node-mgmt-vf-policy.yaml在集群中创建 Cluster Network Operator (CNO) ConfigMap 以进行管理配置:
创建名为
hardware-offload-config.yaml的 ConfigMap,其内容如下:apiVersion: v1 kind: ConfigMap metadata: name: hardware-offload-config namespace: openshift-network-operator data: mgmt-port-resource-name: openshift.io/mgmtvf应用 ConfigMap 的配置:
$ oc create -f hardware-offload-config.yaml