相关疑难解决方法(0)

如何为群集外的查询公开kube-dns服务?

我正在尝试公开"kube-dns"服务,以便在Kubernetes集群之外进行查询.为了做到这一点,我编辑了"服务"定义,将"类型"从"ClusterIP"更改为"NodePort",这似乎工作正常.

但是,当我尝试在节点端口上查询时,我能够获得TCP会话(使用Telnet进行测试),但似乎无法从DNS服务器获得任何响应(使用dig进行测试).

我已经查看了"kube-dns"Pod上每个容器上的日志,但是看不到任何不合适的东西.此外,从群集内(从正在运行的容器)查询DNS似乎没有任何问题.

有没有人试图揭露kube-dns服务?如果是这样,是否有任何其他设置步骤或者您有任何调试建议吗?

服务定义如下:

$ kubectl get service kube-dns -o yaml --namespace kube-system
apiVersion: v1
kind: Service
metadata:
...
spec:
  clusterIP: 10.0.0.10
  ports:
  - name: dns
    nodePort: 31257
    port: 53
    protocol: UDP
    targetPort: 53
  - name: dns-tcp
    nodePort: 31605
    port: 53
    protocol: TCP
    targetPort: 53
  selector:
    k8s-app: kube-dns
  sessionAffinity: None
  type: NodePort
status:
  loadBalancer: {}
Run Code Online (Sandbox Code Playgroud)

dns kubernetes kube-dns

12
推荐指数
1
解决办法
7268
查看次数

标签 统计

dns ×1

kube-dns ×1

kubernetes ×1