LKE Add labels to nodes on pool creation
Hello,
Is it possible to apply a label to the nodes in a node pool automatically? AWS EKS has this feature when spinning up new node groups so I am wondering if the same is possible with LKE.
12 Replies
Hello!
We do not currently offer a way to assign a label or tag to nodes automatically. You can manually apply tags to Nodes on their Linode page, but you would need to update them if the Nodes cycle. To help you remember which Nodes belong to which cluster, you can look at the Pool ID number listed at the bottom of the Node Pools section of your LKE cluster; this label will be consistent across all of the Nodes in this cluster.
I have passed along your interest in automatic node labeling or tagging to our development team for review.
Labels is one of the most core feature of Kubernetes… The purpose of Node Pools is to divide Nodes into groups based on roles. How else can we assign Pods to certain Nodes based on role without Labels?
All other cloud providers with a Managed k8s offering let you specify Labels when creating Node Pools, which are automatically propagated to their Nodes
Please strongly consider adding this
Hi there,
It's been added to our feature request tracker! Although in the meantime, you can still add kubernetes labels to assets, they just won't appear in Cloud Manager.
For example, if you have labelled pods or other resources, you can get all of them with the following:
kubectl get pods --show-labels
For a specific label the following works as well:
kubectl get pods --selector=app=LABEL_NAME
And if you want to dump logs for only one kind of labelled asset:
kubectl logs -l name=LABEL_NAME
I hope this information proves to be handy!
I forgot to tack this on, but you could also add the labels in your kubeconfig, or, if you'd prefer, right after creating the deployment (using a bash script or similar):
kubectl label pods my-pod new-label=LABEL_NAME
Thanks, @santiachinelli!
I'm more concerned about Labels on Nodes rather than Pods
Adding Labels to Pods by ourselves is totally fine and actually preferred. But, adding Labels to Nodes by ourselves seems unnecessary, and other Cloud Providers handle this automatically in their Managed k8s offerings
@regna That's a good idea.
I passed this along to Linode's team that handles product feedback intake. This doesn't mean a new feature is guaranteed or in the pipeline, but it is the first step in any potential improvement, so thanks for the suggestion! :)
-Micah
@regna I use the lke.linode.com/pool-id=123 label present in the describe node output for associating my pods to particular node pools. That might help you if that is what you are looking for.
this pool-id label may work, but for our environment managed with IaC this is a pain in the ass as if we bring down and up the cluster again, this pool-id would change I suppose ?
looks like people have to move away their Kubernetes clusters from linode due to many limitations, like missing custom Node pool labels
Vultr, founded much later than Linode, added Labels
support for Node Pools
https://www.vultr.com/api/#tag/kubernetes/operation/create-nodepools
labels
: Map of key/value pairs defining labels to automatically apply to all nodes in this nodepool. Labels will be applied to both new and existing nodes.
And DigitalOcean has offered Labels
support from the beginning