[英]Configure kubernetes to pull from a registry service
因此,我正在嘗試使kube群集從自身內部運行的注冊表中提取。 我有kube dns安裝程序,有注冊表部署和服務正在運行。 我可以通過節點上的主機命令來解析服務內部名稱。 我已經將--dns
標志添加到具有kube dns服務地址的docker守護進程中。 我有運行--cluster-dns
標志也設置為相同地址的--cluster-dns
。 但是以某種方式,這就是我嘗試使用此注冊表創建Pod時得到的結果。
Failed to pull image "kube-registry.kube-system.svc.cluster.local/myuser/myimage": rpc error: code = Unknown desc = Error response from daemon: Get https://kube-registry.kube-system.svc.cluster.local/v1/_ping: dial tcp: lookup kube-registry.kube-system.svc.cluster.local: no such host
無論如何,即使將kube dns地址顯式地分配給dockerd和kubelet,由於名稱解析,從注冊表服務中提取圖像仍失敗。 我想念什么?
另一個解決方案是將kube-dns IP添加到resolv.conf
:
echo "nameserver $(kubectl -n kube-system get svc kube-dns -o jsonpath='{.spec.clusterIP}')" >> /etc/resolv.conf
CoreDNS服務使用靜態IP公開,因此無需對其進行更新。
我可以確認它可以在Ubunutu 18.04上運行,盡管resolv.conf
是由systemd-resolved
生成的。 不需要其他DNS配置。 僅FQDN提供的服務:
root@dev:~# nslookup harbor.default.svc.cluster.local
;; Got SERVFAIL reply from 127.0.0.53, trying next server
Server: 10.96.0.10
Address: 10.96.0.10#53
Name: harbor.default.svc.cluster.local
Address: 10.109.118.191
;; Got SERVFAIL reply from 127.0.0.53, trying next server
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.