检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
网络 集群网络地址段规划实践 集群网络模型选择及各模型区别 CCE集群实现访问跨VPC网络通信 使用VPC和云专线实现容器与IDC之间的网络通信 自建IDC与CCE集群共享域名解析 通过负载均衡配置实现会话保持 不同场景下容器内获取客户端源IP 通过配置容器内核参数增大监听队列长度
CoreDNS域名解析 插件介绍 CoreDNS是一款通过链式插件的方式给Kubernetes提供DNS解析服务的DNS服务器,为Kubernetes社区推荐的DNS服务器解决方案。 字段说明 表1 参数描述 参数 是否必选 参数类型 描述 basic 否 object 插件基础配置参数,无需用户指定。
使用节点DNS缓存NodeLocal DNSCache 应用现状 当集群中的DNS请求量增加时,CoreDNS将会承受更大的压力,可能会导致如下影响: 延迟增加:CoreDNS需要处理更多的请求,可能会导致DNS查询变慢,从而影响业务性能。 资源占用率增加:为保证DNS性能,CoreDNS往往需要更高规格的配置。
为什么CCE集群的容器无法通过DNS解析? 问题描述 某客户在DNS服务中做内网解析,将自有的域名绑定到DNS服务中的内网域名中,并绑定到特定的VPC中,发现本VPC内的节点(ECS)可以正常解析内网域名的记录,而VPC内的容器则无法解析。 适用场景 VPC内的容器无法进行正常DNS解析的情况。 解决方案
CoreDNS配置优化实践 CoreDNS配置优化概述 客户端 服务端 父主题: 网络
域名DNS CCE集群内域名解析失败,如何定位处理? 为什么CCE集群的容器无法通过DNS解析? 为什么修改子网DNS配置后,无法解析租户区域名? 解析外部域名很慢或超时,如何优化配置? 如何设置容器内的DNS策略?
客户端 优化域名解析请求 选择合适的镜像 避免IPVS缺陷导致的DNS概率性解析超时 使用节点DNS缓存NodeLocal DNSCache 及时升级集群中的CoreDNS版本 谨慎调整VPC和虚拟机的DNS配置 父主题: CoreDNS配置优化实践
②:NodeLocal DNSCache本地缓存如果无法解析请求,则会请求集群CoreDNS进行解析。 ③:对于非集群内的域名,CoreDNS会通过VPC的DNS服务器进行解析。 ④:已注入DNS本地缓存的Pod,如果无法连通NodeLocal DNSCache,则会直接通过CoreDNS解析域名。
及时升级集群中的CoreDNS版本 CoreDNS功能较为单一,对不同的Kubernetes版本也实现了较好的兼容性,CCE会定期同步社区bug,升级CoreDNS插件的版本,建议客户定期升级集群的CoreDNS版本。CCE的插件管理中心提供了CoreDNS的安装及升级功能。您可以
图4 VPC网络-多集群场景示例 容器隧道网络 该模式下容器网络是承载于VPC网络之上的Overlay网络平面,具有少量隧道封装性能损耗,但获得了通用性强、互通性强、高级特性支持全面(例如Network Policy网络隔离)的优势,可以满足大多数应用需求。集群网络地址段规划示意图如图5所示。
解析外部域名很慢或超时,如何优化配置? 工作负载的容器内的resolv.conf文件,示例如下: 其中: nameserver:DNS服务器的IP地址,此处为coredns的ClusterIP。 search:域名的搜索列表,此处为Kubernetes的常用后缀。 ndots:“
容器网络 Kubernetes本身并不负责网络通信,但提供了容器网络接口CNI(Container Network Interface),具体的网络通信交由CNI插件来实现。开源的CNI插件非常多,像Flannel、Calico等。针对Kubernetes网络,CCE为不同网络模型
修改CoreDNS的缓存时间 配置存根域 修改ndots 增加coredns的缓存时间:有利于同一个域名的第N次解析,减少级联DNS的请求数量。 配置存根域:有利于减少DNS请求链路。 修改方式: 修改CoreDNS缓存时间及配置存根域 修改方法请参见为CoreDNS配置存根域。
若nameserver设置为10.247.x.x说明DNS对接到集群的CoreDNS,需要确保集群CoreDNS工作负载运行正常。如果是其他IP地址,则表示采用云上DNS或者用户自建的DNS,请您自行确保解析正常。 更多域名解析异常的排查思路,请参见CCE集群中域名解析失败。 父主题: 网络异常问题排查
配置网络策略(NetworkPolicy)限制Pod访问的对象 网络策略(NetworkPolicy)是Kubernetes设计用来限制Pod访问的对象,相当于从应用的层面构建了一道防火墙,进一步保证了网络安全。NetworkPolicy支持的能力取决于集群的网络插件的能力。 默
CoreDNS视图 提供了负载域名解析的CoreDNS监控视图,包含请求、响应情况,以及缓存状况。 指标说明 CoreDNS视图暴露的指标如下: 图1 CoreDNS视图指标 表1 CoreDNS指标说明 指标名称 单位 说明 请求速率 个/秒 CoreDNS每秒请求个数 请求速率(记录类型)
集群外域名: 确定是否为自建DNS(容器如果未走coredns或者节点DNS非本region云解析的地址均属自建) coredns到自建DNS网络是否正常,工作负载到自建DNS的网络是否正常,如不正常: 请打通到自建DNS网络 请确保DNS的UDP53端口放行,需要对Pod网段安全组&ACL放通如下策略:
容器网络模型对比 容器网络为集群内Pod分配IP地址并提供网络服务,CCE支持如下几种网络模型,您可在创建集群时进行选择。 云原生网络2.0 VPC网络 容器隧道网络 网络模型对比 表1主要介绍CCE所支持的网络模型,您可根据实际业务需求进行选择。 集群创建成功后,网络模型不可更改,请谨慎选择。
能。 图1 云原生网络2.0 约束与限制 仅CCE Turbo集群支持使用云原生网络2.0。 适用场景 性能要求高,需要使用VPC其他网络能力的场景:由于云原生网络2.0直接使用的VPC网络,性能与VPC网络的性能几乎一致,所以适用于对带宽、时延要求极高的业务场景,比如:线上直播、电商优惠等。
集群网络模型选择及各模型区别 自研高性能商业版容器网络插件,支持容器隧道网络、VPC网络、云原生网络2.0网络模型: 集群创建成功后,网络模型不可更改,请谨慎选择。 容器隧道网络(Overlay):基于底层VPC网络构建了独立的VXLAN隧道化容器网络,适用于一般场景。VXLAN