kubernetes - Bitnami external-dns 不会删除 Route53
问题描述
我已经在我的 EKS Kubernetes 集群上安装了 bitnami/external-dns。pod 的作用是在 Ingress 期望记录存在时在我的 Route53 托管区域中创建新记录。到目前为止没有问题。
但是在删除 Ingress 时,Route53 记录不会被删除。删除这些记录的预期是什么?我做错了什么?
安装外部 DNS
helm install extdns bitnami/external-dns \
--set provider=aws \
--set interval=1m \
--set logLevel=debug \
入口
apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
name: {{$.Chart.Name}}-ingress
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/target-type: ip
alb.ingress.kubernetes.io/scheme: internet-facing
alb.ingress.kubernetes.io/certificate-arn: arn:aws:acm:us-west-2:xxxxxxxx:certificate/some-uuid
alb.ingress.kubernetes.io/listen-ports: '[{"HTTP": 80}, {"HTTP": 81}, {"HTTPS":443}]'
external-dns.alpha.kubernetes.io/hostname: zzz1.blah.nl
labels:
app: {{$.Chart.Name}}-service
spec:
rules:
- host: zzz1.blah.nl
http:
paths:
- path: /*
backend:
serviceName: {{$.Chart.Name}}-service
servicePort: 8080
- http:
paths:
- path: /zzz1/*
backend:
serviceName: {{$.Chart.Name}}-service
servicePort: 8080
外部 DNS 日志记录
time="2021-05-05T20:31:02Z" level=debug msg="Refreshing zones list cache"
time="2021-05-05T20:31:02Z" level=debug msg="Considering zone: /hostedzone/xxxx (domain: local.)"
time="2021-05-05T20:31:02Z" level=debug msg="Considering zone: /hostedzone/xxxx (domain: blah.nl.)"
time="2021-05-05T20:31:03Z" level=debug msg="No endpoints could be generated from service kube-system/aws-load-balancer-webhook-service"
time="2021-05-05T20:31:03Z" level=debug msg="No endpoints could be generated from service default/extdns-external-dns"
time="2021-05-05T20:31:03Z" level=debug msg="No endpoints could be generated from service default/module1-service"
time="2021-05-05T20:31:03Z" level=debug msg="No endpoints could be generated from service default/kubernetes"
time="2021-05-05T20:31:03Z" level=debug msg="No endpoints could be generated from service kube-system/kube-dns"
time="2021-05-05T20:31:03Z" level=debug msg="No endpoints could be generated from service kubernetes-dashboard/kubernetes-dashboard"
time="2021-05-05T20:31:03Z" level=debug msg="No endpoints could be generated from service kubernetes-dashboard/dashboard-metrics-scraper"
time="2021-05-05T20:31:03Z" level=debug msg="Endpoints generated from ingress: default/module1-ingress: [zzz1.blah.nl 0 IN CNAME k8s-default-module1i-0000000-1693479811.us-west-2.elb.amazonaws.com [] zzz1.liberaalgeluid.nl 0 IN CNAME k8s-default-module1i-000000-1693479811.us-west-2.elb.amazonaws.com []]"
time="2021-05-05T20:31:03Z" level=debug msg="Removing duplicate endpoint zzz1.blah.nl 0 IN CNAME k8s-default-module1i-000000000-1693479811.us-west-2.elb.amazonaws.com []"
time="2021-05-05T20:31:03Z" level=debug msg="Modifying endpoint: zzz1.blah.nl 0 IN CNAME k8s-default-module1i-000000000-1693479811.us-west-2.elb.amazonaws.com [], setting alias=true"
time="2021-05-05T20:31:03Z" level=debug msg="Modifying endpoint: zzz1.blah.nl 0 IN CNAME k8s-default-module1i-000000000-1693479811.us-west-2.elb.amazonaws.com [{alias true}], setting aws/evaluate-target-health=true"
time="2021-05-05T20:31:03Z" level=debug msg="Refreshing zones list cache"
time="2021-05-05T20:31:03Z" level=debug msg="Considering zone: /hostedzone/Z000000000 (domain: blah.nl.)"
time="2021-05-05T20:31:03Z" level=debug msg="Considering zone: /hostedzone/Z000000000 (domain: local.)"
time="2021-05-05T20:31:03Z" level=info msg="All records are already up to date"
^
解决方案
图表中的默认--policy
选项是upsert-only
,这与 ext-dns 本身的基础默认选项不同sync
。在upsert-only
模式下,它不会删除任何内容。这通常是出于安全考虑,因为清理可以在用户监督下分批进行。sync
如果您愿意,您可以将策略值覆盖回( https://github.com/bitnami/charts/blob/05a5bd69206574f3f8638197eb98da2164343a42/bitnami/external-dns/values.yaml#L432)。
推荐阅读
- typescript - Typescript 对单个文件的编译速度极慢
- cookies - 如何将 HttpOnly 和 Secure 标志添加到 lighttpd 服务器?
- excel - 如何在第 n 个逗号和第 n+1 个逗号之间获取一个单词
- c# - 如何避免 C# 中的“派生类只能有一个基类”问题?
- azure - Azure Devops API 使用 powershell 脚本获取所有项目、团队和成员
- javascript - 赛普拉斯:获取新的重新加载元素
- apache-spark - 如何使用从文本文件(JAVA)读取的模式创建数据集?
- kubernetes - 如何退出节点脚本以“完成”kubernetes 作业
- java - 在java中将“12:00”解析为时间
- visual-studio-code - VSC Intellisense 加载后崩溃?