Kubernetes Coredns 性能优化
四个方面优化:
- coredns 功能
- dns 本地缓存
- client和server 之间网络
- 服务自动扩容
Kubernetes Pod 解析 DNS 域名会 search 很多次,例如上图 Pod 中 DNS 配置,当它请求 ksyun.com,会依次解析:
- ksyun.com.kube-system.svc.cluster.local -> NXDOMAIN
- ksyun.com.svc.cluster.local -> NXDOMAIN
- ksyun.com.cluster.local -> NXDOMAIN
- ksyun.com -> 1.1.1.1
Coredns 是中心化部署在某一个节点上的,Pod 访问 Coredns 解析经过链路过长,又是 UDP 协议,导致失败率高。