文档

在Pod中访问外部网络

更新时间:

Pod可以访问公网,也支持访问VPC内资源,包括已有的ECS、SLB等自有资源,RDS、OSS等云服务和自身集群暴露的LoadBalancer。本文介绍如何配置访问来源侧和目的侧,使得Pod可以访问外部网络。

配置访问来源侧

  • 配置域名解析

    当访问外部网络时,Pod会使用集群的域名解析功能解析访问目标的地址,然后会经过Pod侧的网络策略再进行访问。如果域名无法解析,您需要排查DNS异常问题。具体操作,请参见DNS解析异常问题排查

  • 配置网络策略

    检查Pod所在的命名空间是否设置网络策略,并且检查该网络策略是否限制了Pod不能访问目标地址。如果有,您需要修改网络策略。具体操作,请参见在ACK集群使用网络策略

  • 配置安全组

    检查集群的安全组以及Pod所在的ECS的安全组是否有限制Pod访问目标地址的规则,确保安全组符合以下规则:

    • 安全组出方向需要有允许Pod访问目标地址和端口的规则。

    • 安全组出方向不能有拒绝Pod访问目标地址和端口的规则。

    关于如何管理集群安全组,请参见配置集群安全组

配置访问目的侧

Pod可以访问公网,也支持访问VPC内资源。包括已有的ECS、SLB等自有资源,RDS、OSS等云服务和自身集群暴露的LoadBalancer。不同的访问目标,Pod配置方式不同。

image

访问公网

在IPv4单栈的集群中,Pod只有IPv4地址,只能访问公网IPv4地址,无法访问IPv6地址。在双栈集群中,Pod同时拥有IPv4地址和IPv6地址。IPv4地址是私网IP地址,IPv6地址是公网唯一能全局路由的地址。不同的地址配置方式不同:

  • 配置访问公网IPv4地址

    在访问公网IPv4地址时, Pod使用的IP地址是私网IP地址。如果Pod需要访问外部公网,需要使用公网的EIP或者NAT网关。以下介绍3种为Pod配置公网的方式。

    访问方式

    网关和EIP配置

    对外使用的公网IP地址

    通过NAT网关访问公网

    为集群绑定公网EIP。不同类型的集群,规则不同。

    • 使用Terway的集群:SNAT规则中包含Pod vSwitch的SNAT条目。

    • 使用Flannel的集群:SNAT规则中包含集群节点的SNAT条目。

    具体操作,请参见为已有集群开启公网访问能力

    NAT网关绑定的公网EIP地址。

    通过Node绑定的EIP访问公网(仅支持Flannel)

    为Pod所在的ECS绑定公网EIP。具体操作,请参见弹性公网IP

    Node绑定的公网EIP地址。

    通过Pod绑定的EIP访问公网(仅支持Terway)

    为Pod绑定公网EIP。具体操作,请参见为Pod挂载独立公网EIP

    Pod绑定的公网EIP地址。

  • 配置访问公网IPv6地址

    在双栈集群中,Pod的IPv6地址虽然是公网地址,但默认情况下没有为该地址配置公网带宽。如果Pod需要访问公网IPv6地址,需要为Pod配置公网带宽。具体操作,请参见为Pod配置IPv6公网带宽

访问已有的ECS、SLB等自有资源

Pod访问已有的ECS或者SLB时,访问目的端通常会有一些安全组或者ACL规则限制访问来源。如果限制了Pod访问的来源IP,就会出现网络不通的问题。您需要为Pod开放来源IP。在不同网络模式下,访问已有的ECS、SLB的来源IP不同:

  • Terway网络下,来源IP为Pod的IP,安全组或者ACL需要开放Pod的vSwitch网段。

  • Flannel网络下,来源IP会转换成Pod所在的宿主机IP,安全组或者ACL需要开放Pod所在宿主机的vSwitch网段。

访问RDS、OSS等云服务

部分云服务需要为访问的来源指定IP的白名单才能访问。规则如下:

  • Terway网络下,配置Pod的vSwitch网段到对应云服务的白名单。

  • Flannel网络下,访问云服务的来源IP会转换成宿主机的IP,需要配置Pod所在的宿主机的vSwitch网段到对应云服务的白名单。

您也可以使用ack-kubernetes-webhook-injector自动配置云服务的白名单。具体操作,请参见为Pod动态配置阿里云产品白名单

访问自身集群暴露的LoadBalancer

对于集群自身暴露的LoadBalancer类型的Service的地址,无论是公网还是内网的,都会被集群内部拦截。针对此种情况,您需要修改Service的外部流量策略,合理配置Service。具体操作,请参见Kubernetes集群中访问LoadBalancer暴露出去的SLB地址不通

  • 本页导读 (1)
文档反馈