内部服务的自定义 URL 名称

Custom URL name for internal services

我有一个 Kubernetes 集群。某些内部服务(例如 Kubernetes Dashboard)只能通过我设置的 OpenVPN 实例访问。

默认情况下,kube-dns 解析如下服务:http://{service-name}.{namespace-name}.svc.cluster.local

例如 http://kubernetes-dashboard.default.svc.cluster.local 效果很好。 如何添加自定义 DNS 条目以使这些服务可通过 http://kubernetes-dashboard.mycompany 访问?

我不确定 kubedns 是否可行,但如果您使用的是 1.11+,则可以使用 coreDNS。

Custom DNS Entries For Kubernetes

如果这不是一个选项,您可以 运行 您自己的轻量级 DNS 服务,在集群中使用您的自定义规则,并按照 here 在 kubedns configMap 中将其设置为 "stub domain" ].

apiVersion: v1
kind: ConfigMap
  metadata:
    name: kube-dns
    namespace: kube-system
data:
  stubDomains: |
    {"dashboard.mycompany": ["1.2.3.4"]}

在这种情况下,您需要将 1.2.3.4 更改为新 DNS 服务器的 ClusterIP。