What this PR does / why we need it:
With #341, the creation of AAAA DNS records with alias target was introduced for aws-route53 for AWS load balancer targets. If an AAAA record was needed was concluded by an DNS lookup of the target load balancer domain name.
As it turned out, using DNS lookup it is not reliable in all circumstances. Therefore the implementation was changed to rely on annotations on the source resources (services, ingresses, dnsentries) only.
Two annotations are supported for dual-stack:
dns.gardener.cloud/ip-stack=dual-stack (ingresses, dnsentries, and services)
Ipv6 only is supported with the annotation dns.gardener.cloud/ip-stack=ipv6
The PR also fixes the problem with sporadic orphan AAAA records, if DNS lookup on creation and deletion returned different results.
Which issue(s) this PR fixes:
Fixes #349
Special notes for your reviewer:
Replaces implementation based on DNS lookup: #341
Release note:
[aws-route53] Support dual-stack AWS load balancers by creating additional AAAA record with alias target if annotation `service.beta.kubernetes.io/aws-load-balancer-ip-address-type=dualstack` (services only) or `dns.gardener.cloud/ip-stack=dual-stack` (ingresses,dnsentries, and services) is set.
What this PR does / why we need it: With #341, the creation of
AAAA
DNS records with alias target was introduced foraws-route53
for AWS load balancer targets. If anAAAA
record was needed was concluded by an DNS lookup of the target load balancer domain name. As it turned out, using DNS lookup it is not reliable in all circumstances. Therefore the implementation was changed to rely on annotations on the source resources (services, ingresses, dnsentries) only. Two annotations are supported for dual-stack:service.beta.kubernetes.io/aws-load-balancer-ip-address-type=dualstack
(services only)dns.gardener.cloud/ip-stack=dual-stack
(ingresses, dnsentries, and services)Ipv6 only is supported with the annotation
dns.gardener.cloud/ip-stack=ipv6
The PR also fixes the problem with sporadic orphan
AAAA
records, if DNS lookup on creation and deletion returned different results.Which issue(s) this PR fixes: Fixes #349
Special notes for your reviewer: Replaces implementation based on DNS lookup: #341
Release note: