检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
避免IPVS缺陷导致的DNS概率性解析超时 问题描述 当集群使用IPVS作为kube-proxy负载均衡模式时,您可能会在CoreDNS缩容或重启时遇到DNS概率性解析超时的问题。 该问题由社区Linux内核缺陷导致,具体信息请参见https://github.com/torva
选择合适的镜像 Alpine容器镜像内置的musl libc库与标准的glibc存在以下差异: 3.3版本及更早版本的Alpine不支持search参数,不支持搜索域,无法完成服务发现。 并发请求/etc/resolve.conf中配置的多个DNS服务器,导致NodeLocal DNSCache的优化失效。
解析外部域名很慢或超时,如何优化配置? 工作负载的容器内的resolv.conf文件,示例如下: 其中: nameserver:DNS服务器的IP地址,此处为coredns的ClusterIP。 search:域名的搜索列表,此处为Kubernetes的常用后缀。 ndots:“
则优先使用Pod中的DNSConfig。 域名解析服务器地址nameserver(可选):容器解析域名时查询的DNS服务器的IP地址列表。默认会添加NodeLocal DNSCache的地址,以及CoreDNS的地址,允许用户额外追加1个地址,重复的IP地址将被删除。 搜索域s
基于TCP协议的响应数据包的P99、P90、P50的大小 缓存记录数 个 CoreDNS缓存的DNS记录数 缓存命中率 个/秒 CoreDNS缓存每秒的命中请求数 指标清单 CoreDNS视图使用的指标清单如下: 表2 CoreDNS视图指标清单 指标 类型 说明 coredns_dns
throttled_time:被限流的总时间长度(纳秒)。 如果检查后无上述问题,可采用下方优化策略。 优化策略: 修改CoreDNS的缓存时间 配置存根域 修改ndots 增加coredns的缓存时间:有利于同一个域名的第N次解析,减少级联DNS的请求数量。 配置存根域:有利于减少DNS请求链路。 修改方式:
节点DNS检查异常处理 检查项内容 当前检查项包括以下内容: 检查当前节点DNS配置是否能正常解析OBS地址 检查当前节点是否能访问存储升级组件包的OBS地址 解决方案 节点升级过程中,需要从OBS拉取升级组件包。此项检查失败,请联系技术人员支持。 父主题: 升级前检查异常问题排查
优化域名解析请求 DNS解析是Kubernetes集群中最高频的网络行为之一,针对Kubernetes中的DNS解析的特点,您可以通过以下的方式优化域名解析请求。 客户端使用连接池 当一个容器应用需要频繁请求另一服务时,推荐使用连接池配置,连接池可以缓存上游服务的链接信息,避免每
将云服务器的企业项目修改成与节点池的企业项目一致。 修改云服务器的企业项目 云服务器组不一致 将云服务器的云服务器组修改成与节点池的云服务器组一致。 修改云服务器的云服务器组 修改云服务器的规格 待纳管云服务器规格需修改成节点池中包含的规格。 更多操作指导请参见ECS变更规格通用操作。
服务端 监控CoreDNS运行状态 调整CoreDNS部署状态 合理配置CoreDNS 父主题: CoreDNS配置优化实践
CoreDNS配置优化实践 CoreDNS配置优化概述 客户端 服务端 父主题: 网络
客户端 优化域名解析请求 选择合适的镜像 避免IPVS缺陷导致的DNS概率性解析超时 使用节点DNS缓存NodeLocal DNSCache 及时升级集群中的CoreDNS版本 谨慎调整VPC和虚拟机的DNS配置 父主题: CoreDNS配置优化实践
同步云服务器 操作场景 集群中的每一个节点对应一台云服务器,集群节点创建成功后,您仍可以根据需求,修改云服务器的名称或变更规格。由于规格变更对业务有影响,建议一台成功完成后再对下一台进行规格变更。 CCE节点的部分信息是独立于弹性云服务器ECS维护的,当您在ECS控制台修改云服务
CoreDNS域名解析插件版本发布记录 表1 CoreDNS域名解析插件版本记录 插件版本 支持的集群版本 更新特性 社区版本 1.30.6 v1.21 v1.23 v1.25 v1.27 v1.28 v1.29 v1.30 支持Corefile配置 适配CCE v1.30集群 1
若nameserver设置为10.247.x.x说明DNS对接到集群的CoreDNS,需要确保集群CoreDNS工作负载运行正常。如果是其他IP地址,则表示采用云上DNS或者用户自建的DNS,请您自行确保解析正常。 更多域名解析异常的排查思路,请参见CCE集群中域名解析失败。 父主题:
编写开机运行脚本 应用容器化时,一般需要准备开机运行的脚本,写作脚本的方式和写一般shell脚本相同。该脚本的主要目的包括: 启动应用所依赖的软件。 将需要修改的配置设置为环境变量。 开机运行脚本与应用实际需求直接相关,每个应用所写的开机脚本会有所区别。请根据实际业务需求来写该脚本。
各种需求、场景的多样性可能会经常修改注入的脚本内容,而对于CCE节点池的注入脚本是固定的,不适合经常修改。 解决方案 本文提供CCE+OBS结合的方式,提供了一种简化、可扩展、易维护的最佳实践方式,方便用户在CCE节点上做一些自定义操作。 将安装前和安装后脚本存放在OBS中,在创建节点池的时候,安装前和安
IPVS缺陷导致节点上升级CoreDNS后出现概率性解析超时 故障现象 在集群使用IPVS转发的场景下,节点上升级CoreDNS后,可能出现概率性丢包,导致域名解析失败。 问题根因 该问题由IPVS缺陷导致,社区已在IPVS v5.9-rc1版本中修复该问题,详情请参见ipvs:
CoreDNS配置一致性检查异常处理 检查项内容 检查当前CoreDNS关键配置Corefile是否同Helm Release记录存在差异,差异的部分可能在插件升级时被覆盖,影响集群内部域名解析。 解决方案 您可在明确差异配置后,单独升级CoreDNS插件。 配置Kubectl命
获取集群访问的地址 功能介绍 该API用于通过集群ID获取集群访问的地址,包括PrivateIP(HA集群返回VIP)与PublicIP 集群管理的URL格式为:https://Endpoint/uri。其中uri为资源路径,也即API访问的路径。 调用方法 请参见如何调用API。