'kops create cluster' with public topology and terraform output fails to add route 53 terraform resource records for the api end point #16455
Labels
kind/bug
Categorizes issue or PR as related to a bug.
/kind bug
1. What
kops
version are you running? The commandkops version
, will displaythis information.
1.28.4 (git-v1.28.4)
2. What Kubernetes version are you running?
kubectl version
will print theversion if a cluster is running or provide the Kubernetes version specified as
a
kops
flag.v1.28.8
3. What cloud provider are you using?
AWS
4. What commands did you run? What is the simplest way to reproduce this issue?
5. What happened after the commands executed?
If you go to ./terraform/bug-report-cluster-public (or wherever the terraform is output, based on settings) and then open kubernetes.tf in an editor, you can search for aws_route53_record resources for the cluster's API end point. They will NOT exist.
This means that during a
terraform apply
cluster spin-up, the API end point A/AAAA records are not created.By empirical observation, nothing else publishes these records during spin up, so the cluster never comes up. Spin-up hangs forever.
Running validation during the failed spin-up prints the following every ten seconds, for as long as the validation is running:
6. What did you expect to happen?
Successful cluster spin up with the API endpoint A/AAAA records published in Route 53.
If you run the exact same reproducing commands with TOPOLOGY=private and then inspect the terraform output, the aws_route53_record (s) for the API end point ARE present in the terraform. When a
terraform apply
is done, the cluster spins up successfully.7. Please provide your cluster manifest. Execute
kops get --name my.example.com -o yaml
to display your cluster manifest.You may want to remove your cluster name and other sensitive information.
8. Please run the commands with most verbose logging by adding the
-v 10
flag.Paste the logs into this report, or in a gist and provide the gist link here.
https://gist.github.com/dkwgit/65ef9ac485a1ee8579279a0816915cc0
9. Anything else do we need to know?
I put a bash script on the same gist, https://gist.github.com/dkwgit/65ef9ac485a1ee8579279a0816915cc0#file-demonstrate_bug-bash, at the bottom of the gist.
This script makes it easy to run everything first for a public topology, then a private topology, so that you can inspect the terraform output for each and make comparisons. Everything is packaged in a bash function, so you can do:
Running it for private shows that Route53 records are created. The bash script also contains a function
bug_report_clean_all
, so that all Route 53 child zone related stuff is cleaned up for both the public and private runs and the kops state bucket is dropped.The text was updated successfully, but these errors were encountered: