0

Kubernetes 对DNS SRV 查找的支持是否允许使用externalName的服务,如果允许,如何允许 pod 访问该记录?我的用例是一个外部提供的服务,其中第三方定义了端口号,我想将其表示在与 CNAME 相同的位置,即 k8s 服务。

dnsPolicy我已经在设置为的 pod 中使用了一个简单的 nslookup 查询ClusterFirst,它似乎适用于内部的默认 kubernetes 服务:

x nslookup -type=SRV _https._tcp.kubernetes.default.svc
Server: 10.3.0.10
Address: 10.3.0.10#53

_https._tcp.kubernetes.default.svc.cluster.local    service = 10 100 443 kubernetes.default.svc.cluster.local.

但是我尝试使用我自己的一项服务,它使用externalName了一个命名端口,但找不到它。

我正在使用 k8s 1.6.1 和 kube-dns 1.9(诚然 1.9 有点“旧”,我会尽快升级它)。

4

1 回答 1

1

文档说如下:

ExternalName服务是没有选择器的服务的特例。它没有定义任何端口或端点。相反,它用作将别名返回给驻留在集群外部的外部服务的一种方式。

所以我认为不可能在同一个服务定义中添加端口信息。

当访问此服务时,您的应用程序可以这样做:

curl k8s_svc_name:third_party_defined_port_number

使用它有什么问题?

于 2017-04-26T07:33:48.993 回答