该策略设置为仅更新插入,这很奇怪。日志说它正在删除条目并添加一个新条目。因此,它正在与新集群上的应用程序新实例争夺记录的真实性。我在旧集群上使用 helm3 uninstall 卸载了应用程序。这个挥之不去的位正在反复降低我们的应用程序。我该如何摆脱它?外部 dns 如何获知新的和已卸载的应用程序?
Error
2022-02-09 11:23:28.603 ESTtime="2022-02-09T16:23:28Z" level=info msg="Changing record." action=CREATE record=kayak.domain.org ttl=1 type=A zone=e97957d24b2e45b7b42884d8cc64e9b4
Error
2022-02-09 11:23:29.798 ESTtime="2022-02-09T16:23:29Z" level=info msg="Changing record." action=DELETE record=kayak.domain.org ttl=1 type=A zone=e97957d24b2e45b7b42884d8cc64e9b4
Error
2022-02-09 11:23:30.943 ESTtime="2022-02-09T16:23:30Z" level=info msg="Changing record." action=CREATE record=kayak.domain.org ttl=1 type=TXT zone=e97957d24b2e45b7b42884d8cc64e9b4
Error
2022-02-09 11:23:32.137 ESTtime="2022-02-09T16:23:32Z" level=info msg="Changing record." action=DELETE record=kayak.domain.org ttl=1 type=TXT zone=e97957d24b2e45b7b42884d8cc64e9b4
yaml 配置在这里:
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- podAffinityTerm:
labelSelector:
matchLabels:
app.kubernetes.io/instance: external-dns
app.kubernetes.io/name: external-dns
namespaces:
- external-dns
topologyKey: kubernetes.io/hostname
weight: 1
containers:
- args:
- --metrics-address=:7979
- --log-level=info
- --log-format=text
- --domain-filter=domain1.org
- --domain-filter=domain2.org
- --domain-filter=domain3.org
- --policy=upsert-only
- --provider=cloudflare
- --registry=txt
- --interval=1m
- --txt-owner-id=gcp-project-name
- --source=service
- --source=ingress
- --cloudflare-proxied
env:
- name: CF_API_TOKEN
valueFrom:
secretKeyRef:
key: cloudflare_api_token
name: external-dns
optional: true
- name: CF_API_KEY
valueFrom:
secretKeyRef:
key: cloudflare_api_key
name: external-dns
optional: true
- name: CF_API_EMAIL
value: email@domain.org
image: docker.io/bitnami/external-dns:0.10.2-debian-10-r27
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 2
httpGet:
path: /healthz
port: http
scheme: HTTP
initialDelaySeconds: 10
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
name: external-dns
ports:
- containerPort: 7979
name: http
protocol: TCP
readinessProbe:
failureThreshold: 6
httpGet:
path: /healthz
port: http
scheme: HTTP
initialDelaySeconds: 5
periodSeconds: 10
successThreshold: 1
timeoutSeconds: 5
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext:
fsGroup: 1001
runAsUser: 1001
serviceAccount: external-dns
serviceAccountName: external-dns
terminationGracePeriodSeconds: 30