如何从Kubernetes吊舱进入外部世界

如何从Kubernetes吊舱进入外部世界,kubernetes,Kubernetes,我面临的问题是,我无法使用smtp.gmail.com和587端口从K8s pod发送电子邮件。我试着用hostnet使用dnsPolicy:clusterfirst,但没有任何改变。使用dnsPolicy:Default似乎一切正常,但我不能使用这种方法,因为POD应该能够解析集群中的其他POD。顺便说一句,ConfigMap和谷歌的dns也没有帮助: apiVersion: v1 kind: ConfigMap metadata: name: kube-dns namespace:

我面临的问题是,我无法使用
smtp.gmail.com
587
端口从K8s pod发送电子邮件。我试着用hostnet使用
dnsPolicy:clusterfirst,但没有任何改变。使用
dnsPolicy:Default
似乎一切正常,但我不能使用这种方法,因为POD应该能够解析集群中的其他POD。顺便说一句,
ConfigMap
和谷歌的dns也没有帮助:

apiVersion: v1
kind: ConfigMap
metadata:
  name: kube-dns
  namespace: kube-system
data:
  upstreamNameservers: |
    [“8.8.8.8”, “8.8.4.4”]
有什么想法吗?
提前谢谢

顺便说一句,我的Kubernetes版本是v1.7.2

可能只是您的configmap中带引号的语法错误(“vs”) 如果你跑

kubectl-n kube系统日志kube dns xxxx-c dnsmasq
您将得到一个语法错误,而不是

上游名称服务器到[8.8.8.8,4.4.4.4]

还有另一种解决此问题的方法-您可以在启动时在容器的resolve.conf中编写Google DNS(8.8.8.8)