-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Error: Post https://xxxx.eks.amazonaws.com/api/v1/namespaces/kube-system/configmaps: dial tcp xxx:443: i/o timeout #621
Comments
Is this an EKS bug that's worth reporting to AWS container team, or an interplay between the aws and kubernetes providers? |
I keep on having the same issue. IMO, the kubernetes provider should wait / retry few times before coming back with an error. |
I think a socket error should be retried by the provider. In the mean time, could we make a work around somehow? Like a null resource that sleeps for 10 seconds after cluster creation? |
I'm using kubectl hack for this but it requires kubectl and a lot of provisioner "local-exec" {
command = "until kubectl --kubeconfig ${path.root}/kubeconfig_${var.cluster_id} -n kube-system get pods >/dev/null 2>&1;do echo 'Waiting for EKS API';sleep 5;done"
}
} in the meantime I'm going to fork eks module with kubernetes provider commits reverted because it's not usable for our usecases. |
You can just use release |
7.0.1 has faulty kubernetes provider commit, so staying with 7.0.0 for now, and if it's will be an issue for a while fork is the way to go at least we can have new features provided by upstream. |
No it doesn't 🙂 I made it specifically the commit before: #630 https://github.com/terraform-aws-modules/terraform-aws-eks/releases/tag/v7.0.1 |
Nice, thanks for the tip, haven't checked commits since kubernetes provider merge. 👍 |
This is definitely a "feature" of the AWS EKS API. It returns creation complete before the cluster is actually ready to be used 😞 This requires all tools creating clusters to have a retry on their first access. e.g.:
We need to go back to having a retry loop hack. Which kind of defeats the point of moving to the kubernetes provider 😞 I was comparing with GCP's kubernetes offering. Their service only returns ready once the cluster is actually usable. You can easily chain GKE creation with the kubernetes terraform provider. Raised an issue in the containers roadmap here . See what they say |
FYI, I opened a PR in the AWS provider to wait for kubernetes endpoint hashicorp/terraform-provider-aws#11426. I don't know if it the right quick win before aws/containers-roadmap#654 get solved. Feedbacks are welcome. |
Hit another issue with this damn provider when fiddling about with node_groups: Can we go back to kubectl and forget this whole exercise? Edit: Raised an issue with the k8s provider. See what they say. hashicorp/terraform-provider-kubernetes#719 |
I'm leaning towards this also. |
What should we do? Revert the k8s provider change? Or implement something like in this PR? #639 |
Solved this problem with a |
Great! |
Just run into this on master - can you give an example of how we can fix using a |
Basically:
You'd have to fork the module to do it. It's not usable from outside. It only solves the race condition on cluster first creation with node groups. |
Today I ran into both this issue and the |
Resolved in #639 |
@max-rocket-internet I am not familiar with the release cadence. When is this fix going to be available for regular users? |
@ngortheone it's already available in v8.0.0 |
I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues. If you have found a problem that seems similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further. |
On every example on first run:
This is because theres a small between when the cluster endpoint is returned after creation but is not available.
If you rerun
terraform apply
the configmap is created fine.Quite annoying 😅
The text was updated successfully, but these errors were encountered: