CoreDNS ConfigMap选项
先来看看默认的CoreDns的配置文件
Corefile: | .:53 { errors health kubernetes cluster.local in-addr.arpa ip6.arpa { pods insecure upstream fallthrough in-addr.arpa ip6.arpa } prometheus :9153 proxy . /etc/resolv.conf forward . 10.10.10.10 cache 30 loop reload loadbalance }
- error: 错误记录到stdout
- health:CoreDNS的运行状况报告为http:// localhost:8080 / health
- kubernetes:CoreDNS将根据Kubernetes服务和pod的IP回复DNS查询
- prometheus:CoreDNS的度量标准可以在http://localhost:9090/Prometheus格式的指标中找到
- proxy:任何不在Kubernetes集群域内的查询都将转发到预定义的解析器(/etc/resolv.conf)
- cache:启用前端缓存
- loop:检测简单的转发循环,如果找到循环则停止CoreDNS进程
- reload:允许自动重新加载已更改的Corefile。编辑ConfigMap配置后,请等待两分钟以使更改生效
- loadbalance:这是一个循环DNS负载均衡器,可以在答案中随机化A,AAAA和MX记录的顺序
配置外部dns
有些服务不在kubernetes内部,在内部环境内需要通过dns去访问,名称后缀为test.com
test.com:53 { errors cache 30 proxy . 10.10.10.10 }