Pod中访问外部的域名配置

在实际应用中经常遇到Pod中访问外部域名的状况,在Kubenetes 1.6以上的版本通过配置DNS configmap已经解决,详细的内容可以参考官方的

https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/

如果没有太多时间的化,可以参考下面这个图

 

简单来说在dnsPolicy是ClusterFirst的情况下,如果是default是采用的宿主机的/etc/resolve.conf中内容

可以基于域名比如acme.local指定dns server,如果集群内部以及域名都找不到,可以配置upstream DNS进行解析。

语句为

apiVersion: v1
kind: ConfigMap
metadata:
  name: kube-dns
  namespace: kube-system
data:
  stubDomains: |
    {"acme.local": ["1.2.3.4"]}
  upstreamNameservers: |
    ["8.8.8.8", "8.8.4.4"]

acme.local可以支持DNS的主备配置。

需要指出的是集群配置dns后本身就有kube-dns的configmap,所以创建的时候采用

kubectl replace -f dns.yaml

Pod和Deployment等应用不需要任何改变。新建这些Pod和Deployment后生效

 

转载于:https://www.cnblogs.com/ericnie/p/8177144.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值