-
Notifications
You must be signed in to change notification settings - Fork 4.7k
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
Propagate IG NodeLabels to k8s nodes in Hetzner #16739
base: master
Are you sure you want to change the base?
Conversation
/cc @hakman |
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
/test all |
1 similar comment
/test all |
1414f91
to
3938ba9
Compare
/retest |
Fixes #16159
This adds Hetzner server labels for the instance group nodeLabels. kops-controller then recognizes these server labels and sets them on the associated k8s node.
I'm marking this WIP as we may need to change this approach due to label length limits in the Hetzner API:
https://docs.hetzner.com/cloud/servers/getting-started/creating-a-server/
The Hetzner CCM mentions support for the
node.kubernetes.io/exclude-from-external-load-balancers
label included in the integration test output changes: hetznercloud/hcloud-cloud-controller-manager#182 (comment) which is 55 characters on its own, so with the prefix I've added it exceeds the length limit. I considered storing these elsewhere like in userdata and having kops-controller parse them out of thehcloud.Server
's userdata, except hcloud doesn't expose userdata in read operations, it is a write-only field.Therefore I think our only option is to use a shorter prefix
/wip