![](/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.