![](/img/trans.png)
[英]Make k8s services available via ingress on an AWS cluster created with kops
[英]Getting External-DNS to work with Ingress Objects in Kops AWS 1.7 K8s Cluster
我試圖弄清楚如何使此設置起作用:
kube-system
使用LoadBalancer
服務,通過Helm安裝了名稱空間 kube-system
有cert-manager
設置,通過Helm和使用ClusterIssuers
安裝 kube-system
安裝了external-dns
Ingress
對象。 cert-manager
( certmanager.k8s.io/cluster-issuer: letsencrypt-prod
)和external-dns
( dns.alpha.kubernetes.io/external: app.contoso.com
)的適當注釋對Ingress進行注釋。 在這種情況下, cert-manager
對Ingress
對象做出了適當的反應(對其進行了修改以完成ACME挑戰),但是external-dns
沒有做任何事情(日志顯示所有主機名都是最新的)。 如果我為與LB服務關聯的ELB手動添加Route53記錄,那么一切都會按預期進行。 檢查Ingress對象,我看到狀態塊如下所示:
status:
loadBalancer:
ingress:
- {}
我想這就是為什么external-dns
不響應的原因? 我該如何工作? 根據文檔
可以在以下位置找到更多故障排除信息(pod定義,入口定義,控制器日志等): https : //gist.github.com/DWSR/f6d596850346223393bec23b289c9731
我自己解決了。 --publish-service
入口控制器具有--publish-service
命令行參數,這將導致它更新入口對象上的狀態字段,從而使external-dns
創建適當的DNS記錄。 通過Helm安裝時,只需將.Values.controller.publishService.enabled
設置為true
,即可生效。
資料來源:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.