Panfactum / stack

The Panfactum Stack
https://panfactum.com
Other
16 stars 5 forks source link

[Bug]: `extra_tags` on kube_karpenter_node_pools can cause the provisioner to error #46

Closed mschnee closed 6 months ago

mschnee commented 6 months ago

Prior Search

What happened?

Because extra_tags is used by kube_labels and feeds into matching_labels, applying extra tags can cause the node pool definitions to go over the limit of the 30-requirement limit karpenter has.

Steps to Reproduce

Use a handful of extra tags in kube_karpenter_node_pools at any level (module, region, envirionment, global)

Version

main (development branch)

Relevant log output

"creating node claim, NodeClaim.karpenter.sh \"burstable-ws8kc\" is invalid: [spec.requirements: Too many: 33: must have at most 30 items, <nil>: Invalid value: \"null\": some validation rules were not checked because the object was invalid; correct the existing errors to complete validation]; ...

Recommendations

Just some ideas:

There are a number of issues with using the extra_tags configuration for both AWS Resource Tagging as well as kubernetes labels:

fullykubed commented 6 months ago

@mschnee I have added 5 extra_tags to the reference architecture and added a bunch of invalid characters.

In the latest commit, I believe that all parts of the stack can now function normally with arbitrary amounts of extra tags with arbitrary characters.

I am going to close this issue, but if you find you are still running into problems with tags, please re-open it, and we can continue to investigate.