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.13.2.2. 为一个命名空间启用自动分配出口 IP 地址
在 OpenShift Container Platform 中,可以为一个或多个节点上的特定命名空间启用自动分配出口 IP 地址。
先决条件
-
您可以使用具有
cluster-admin
角色的用户访问集群。 -
已安装 OpenShift CLI(
oc
)。
流程
使用以下 JSON,用出口 IP 地址更新
NetNamespace
资源:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如,将
project1
分配给 IP 地址 192.168.1.100,将project2
分配给 IP 地址 192.168.1.101:oc patch netnamespace project1 --type=merge -p \ '{"egressIPs": ["192.168.1.100"]}' oc patch netnamespace project2 --type=merge -p \ '{"egressIPs": ["192.168.1.101"]}'
$ oc patch netnamespace project1 --type=merge -p \ '{"egressIPs": ["192.168.1.100"]}' $ oc patch netnamespace project2 --type=merge -p \ '{"egressIPs": ["192.168.1.101"]}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意由于 OpenShift SDN 管理
NetNamespace
对象,因此只能通过修改现有的NetNamespace
对象来进行更改。不要创建新的NetNamespace
对象。使用以下 JSON 设置每一主机的
egressCIDRs
参数,以指明哪些节点可以托管出口 IP 地址:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 例如,将
node1
和node2
设置为托管范围为 192.168.1.0 到 192.168.1.255 的出口 IP 地址:oc patch hostsubnet node1 --type=merge -p \ '{"egressCIDRs": ["192.168.1.0/24"]}' oc patch hostsubnet node2 --type=merge -p \ '{"egressCIDRs": ["192.168.1.0/24"]}'
$ oc patch hostsubnet node1 --type=merge -p \ '{"egressCIDRs": ["192.168.1.0/24"]}' $ oc patch hostsubnet node2 --type=merge -p \ '{"egressCIDRs": ["192.168.1.0/24"]}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenShift Container Platform 会自动以均衡的方式将特定的出口 IP 地址分配给可用的节点。在本例中,它会将出口 IP 地址 192.168.1.100 分配给
node1
,并将出口 IP 地址 192.168.1.101 分配给node2
,或反之。