15.12. 以重定向模式部署出口路由器 pod
作为集群管理员,您可以部署出口路由器 Pod,将流量重新指向来自保留源 IP 地址的指定目标 IP 地址。
出口路由器实施使用出口路由器 Container Network Interface(CNI)插件。
重要
egress router CNI 插件只是一个技术预览功能。技术预览功能不被红帽产品服务等级协议 (SLA) 支持,且可能在功能方面有缺陷。红帽不推荐在生产环境中使用它们。这些技术预览功能可以使用户提早试用新的功能,并有机会在开发阶段提供反馈意见。
有关红帽技术预览功能支持范围的详情,请参阅 https://access.redhat.com/support/offerings/techpreview/。
15.12.1. 重定向模式下出口路由器的网络附加定义
在 Pod 可以充当出口路由器之前,您必须将网络接口配置指定为 NetworkAttachmentDefinition
对象。对象指定要附加到出口路由器 Pod、网络目的地和网络网关的 IP 地址等信息。当出口路由器的 pod 启动时,Multus 使用网络附加定义向 pod 添加带有指定属性的网络接口。
网络附加定义示例
apiVersion: "k8s.cni.cncf.io/v1" kind: NetworkAttachmentDefinition metadata: name: egress-router-redirect 1 spec: config: '{ "cniVersion": "0.4.0", "type": "egress-router", "name": "egress-router", "ip": { "addresses": [ "192.168.12.99/24" 2 ], "destinations": [ "192.168.12.91/32" 3 ], "gateway": "192.168.12.1" 4 } }'
- 1
- 网络附加定义的名称稍后用于出口路由器 Pod 的规格中。
- 2
addresses
键指定用于额外网络接口的保留源 IP 地址。在 CIDR 标记中指定一个 IP 地址,如192.168.12.99/24
。- 3
destinations
键在 CIDR 标记中指定一个 IP 地址,出口路由器将数据包发送到这个地址。出口路由器 Pod 的网络地址转换(NAT)表被配置为将到 pod 的集群 IP 地址的连接重定向到目标 IP 地址上的相同端口。使用此示例,到 pod 的连接会被重定向为192.168.12.91
,源 IP 地址为192.168.12.99
。- 4
gateway
键用于指定网络网关的 IP 地址。