[英]Why do kube-dns SRV entries have 0 for the port number of a service in a GKE cluster?
我在 GKE 中有一個免費試用集群。 在這個集群中,我有一個部署和一個服務。 當我使用 DNS 實用程序在 helper pod 內執行nslookup -type=srv <service_name>
時,我得到的條目包含0
而不是服務的實際端口號(例如 17000)。 這個問題使我無法繼續前進。 我會很高興你的幫助。
C:\>kubectl exec dnsutils -- nslookup -type=srv my-svc
;; Truncated, retrying in TCP mode.
Server: 10.120.0.10
Address: 10.120.0.10#53
my-svc.my-ns.svc.cluster.local service = 10 14 0 3133626239396130.my-svc.my-ns.svc.cluster.local.
my-svc.my-ns.svc.cluster.local service = 10 14 0 6333336363666162.my-svc.my-ns.svc.cluster.local.
my-svc.my-ns.svc.cluster.local service = 10 14 0 3132373039303465.my-svc.my-ns.svc.cluster.local.
my-svc.my-ns.svc.cluster.local service = 10 14 0 3838326161363637.my-svc.my-ns.svc.cluster.local.
my-svc.my-ns.svc.cluster.local service = 10 14 0 3135393163303035.my-svc.my-ns.svc.cluster.local.
my-svc.my-ns.svc.cluster.local service = 10 14 0 3463343863303565.my-svc.my-ns.svc.cluster.local.
my-svc.my-ns.svc.cluster.local service = 10 14 0 3436353934633363.my-svc.my-ns.svc.cluster.local.
“運行的第一個命令只會表明存在 SRV 記錄,但實際上不會告訴我們端口。要獲取端口,我們需要使用 _portname._protocol 格式明確查找它。即如果“my-svc”在“my-ns”命名空間中有一個名為“grpc”的端口,您可以運行 kubectl exec dnsutils -- nslookup -type=srv _grpc._tcp.my-svc.my-ns.svc.cluster.local 來獲取端口對於 grpc 服務。參見DNS SRV port lookup fails以及為什么會這樣的解釋。
在服務定義中,可以命名端口,我們可以使用 _my-port-name._tcp.my-svc.my-ns.svc.cluster.local 語法將 my-port-name 替換為該名稱” - @Gari辛格。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.