-
Notifications
You must be signed in to change notification settings - Fork 459
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
Webhook timeout when creating an Instrumentation on GKE private cluster #1009
Comments
@CyberHippo would you like to document it? |
@pavolloffay Yes, I will work on a PR to document it. |
An alternative that works is to use 10250 for the webhook port. That way the built-in firewall rule allows traffic. Tested that and it works nicely. |
Does this apply only for GKE or is it a commonly used port for webhooks? |
@pavolloffay it's actually the port that the API server uses to talk to the kubelet. I think because of how firewall rules interact with alias IP ranges (used in VPC-native networking), it results in the API server subnet being able to reach the pods at that port. Using it for webhooks seems to be a handy workaround for GKE private clusters without needing to add or edit firewall rules for every webhook you add. For private clusters, GKE creates firewall rules that allow access on 443 and 10250. You can run the command here to see that rule: https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters#view_firewall_rules. |
I had to modify the existing GKE firewall rule on google console and add port 9443. now creating resources works:
before it was failing with:
|
HI, has this been added to the document? if so please can you let me know where I can read more on this. I have hit with same issue and I got around by repurposing a port (to master) which was opened for istio. Might like to see this in pre-req section of document if possible. and can avoid log of searching on how to fix failure :-) |
Hi, i have the same issue |
Hi,
When creating an
Instrumentation
resource on a private GKE cluster I encounter the following error:This issue is similar to this issue about
ingress-nginx
on private GKE clusters and is due to GCP firewall rules of private GKE clusters.I would suggest adding a note about it in the documentation (similarly to kubernetes/ingress-nginx#5487) to help other users of this great operator.
Steps to reproduce
Install the operator in an existing private GKE cluster where
cert-manager
is installed:Once the
opentelemetry-operator
deployment is ready, create an OpenTelemetry Instrumentation resource:Solution
You will need to either add a firewall rule that allows master nodes access to port
9443/tcp
on worker nodes, or change the existing rule that allows access to port80/tcp
,443/tcp
and10254/tcp
to also allow access to port9443/tcp
.I could open a PR to add a note in the operator documentation about this issue if needed.
The text was updated successfully, but these errors were encountered: