$ bridge vlan add vid VLAN_ID dev DEV
以下对象描述了 Bridge CNI 插件的配置参数
字段 | 类型 | 描述 |
---|---|---|
|
|
CNI 规范版本。需要 |
|
|
您之前为 CNO 配置提供的 |
|
|
要配置的 CNI 插件的名称: |
|
|
IPAM CNI 插件的配置对象。该插件管理附件定义的 IP 地址分配。 |
|
|
可选:指定要使用的虚拟桥的名称。如果主机上不存在桥接接口,则会创建它。默认值为 |
|
|
可选:设置为 |
|
|
可选:设置为 |
|
|
可选:设置为 |
|
|
可选:设置为 |
|
|
可选:设置为 |
|
|
可选:设置为 |
|
|
可选:将虚拟 LAN (VLAN) 标签指定为整数值。默认情况下,不分配 VLAN 标签。 |
|
|
可选:指示是否必须在连接到桥接的 |
|
|
可选:分配 VLAN 中继标签。默认值为 |
|
|
可选:将最大传输单元 (MTU) 设置为指定值。默认值由内核自动设置。 |
|
|
可选:为容器端 |
|
|
可选:启用 mac 欺骗检查,将源自容器的流量限制为接口的 mac 地址。默认值为 |
VLAN 参数配置 |
要为 L2 网络配置上行链路,必须使用以下命令允许上行链路接口上的 VLAN
|
仅通过设置以下参数之一来指定您的网络设备: |
以下对象描述了主机设备 CNI 插件的配置参数
字段 | 类型 | 描述 |
---|---|---|
|
|
CNI 规范版本。需要 |
|
|
您之前为 CNO 配置提供的 |
|
|
要配置的 CNI 插件的名称: |
|
|
可选:设备名称,例如 |
|
|
可选:设备硬件MAC地址。 |
|
|
可选:Linux内核设备路径,例如 |
|
|
可选:网络设备的PCI地址,例如 |
以下对象描述了VLAN(vlan
)CNI插件的配置参数。
字段 | 类型 | 描述 |
---|---|---|
|
|
CNI 规范版本。需要 |
|
|
您之前为 CNO 配置提供的 |
|
|
要配置的CNI插件名称: |
|
|
与网络连接关联的以太网接口。如果未指定 |
|
|
设置 |
|
|
IPAM CNI 插件的配置对象。该插件管理附件定义的 IP 地址分配。 |
|
|
可选:将最大传输单元 (MTU) 设置为指定值。默认值由内核自动设置。 |
|
|
可选:要返回的DNS信息。例如,按优先级排序的DNS名称服务器列表。 |
|
|
可选:指定 |
具有 |
以下对象描述了IPVLAN(ipvlan
)CNI插件的配置参数。
字段 | 类型 | 描述 |
---|---|---|
|
|
CNI 规范版本。需要 |
|
|
您之前为 CNO 配置提供的 |
|
|
要配置的CNI插件名称: |
|
|
IPAM CNI插件的配置对象。该插件管理附加定义的IP地址分配。这是必需的,除非插件是链式的。 |
|
|
可选:虚拟网络的操作模式。值必须是 |
|
|
可选:与网络连接关联的以太网接口。如果未指定 |
|
|
可选:将最大传输单元 (MTU) 设置为指定值。默认值由内核自动设置。 |
|
|
可选:指定 |
|
以下对象描述了MACVLAN CNI插件的配置参数。
字段 | 类型 | 描述 |
---|---|---|
|
|
CNI 规范版本。需要 |
|
|
您之前为 CNO 配置提供的 |
|
|
要配置的CNI插件名称: |
|
|
IPAM CNI 插件的配置对象。该插件管理附件定义的 IP 地址分配。 |
|
|
可选:配置虚拟网络上的流量可见性。必须是 |
|
|
可选:与新创建的macvlan接口关联的主机网络接口。如果未指定值,则使用默认路由接口。 |
|
|
可选:将最大传输单元 (MTU) 设置为指定值。默认值由内核自动设置。 |
|
|
可选:指定 |
如果为插件配置指定了 |
以下对象描述了TAP CNI插件的配置参数。
字段 | 类型 | 描述 | ||
---|---|---|---|---|
|
|
CNI 规范版本。需要 |
||
|
|
您之前为 CNO 配置提供的 |
||
|
|
要配置的CNI插件名称: |
||
|
|
可选:为接口请求指定的MAC地址。 |
||
|
|
可选:将最大传输单元 (MTU) 设置为指定值。默认值由内核自动设置。 |
||
|
|
可选:与tap设备关联的SELinux上下文。
|
||
|
|
可选:设置为 |
||
|
|
可选:拥有tap设备的用户。 |
||
|
|
可选:拥有tap设备的组。 |
||
|
|
可选:将tap设备设置为现有网桥的端口。 |
以下示例配置一个名为mynet
的附加网络。
{
"name": "mynet",
"cniVersion": "0.3.1",
"type": "tap",
"mac": "00:11:22:33:44:55",
"mtu": 1500,
"selinuxcontext": "system_u:system_r:container_t:s0",
"multiQueue": true,
"owner": 0,
"group": 0
"bridge": "br1"
}
要使用container_t
SELinux上下文创建tap设备,请使用机器配置操作符 (MCO) 在主机上启用container_use_devices
布尔值。
您已安装OpenShift CLI (oc
)。
创建一个新的YAML文件,例如setsebool-container-use-devices.yaml
,其中包含以下详细信息。
apiVersion: machineconfiguration.openshift.io/v1
kind: MachineConfig
metadata:
labels:
machineconfiguration.openshift.io/role: worker
name: 99-worker-setsebool
spec:
config:
ignition:
version: 3.2.0
systemd:
units:
- enabled: true
name: setsebool.service
contents: |
[Unit]
Description=Set SELinux boolean for the TAP CNI plugin
Before=kubelet.service
[Service]
Type=oneshot
ExecStart=/usr/sbin/setsebool container_use_devices=on
RemainAfterExit=true
[Install]
WantedBy=multi-user.target graphical.target
通过运行以下命令创建新的MachineConfig
对象。
$ oc apply -f setsebool-container-use-devices.yaml
应用对 |
通过运行以下命令验证更改是否已应用。
$ oc get machineconfigpools
NAME CONFIG UPDATED UPDATING DEGRADED MACHINECOUNT READYMACHINECOUNT UPDATEDMACHINECOUNT DEGRADEDMACHINECOUNT AGE
master rendered-master-e5e0c8e8be9194e7c5a882e047379cfa True False False 3 3 3 0 7d2h
worker rendered-worker-d6c9ca107fba6cd76cdcbfcedcafa0f2 True False False 3 3 3 0 7d
所有节点都应处于已更新并准备就绪的状态。 |
有关在节点上启用 SELinux 布尔值的更多信息,请参阅 设置 SELinux 布尔值。