to provide out of the box support for zone constraints and spreading workload units across AZ in the same way as we do for machine clouds. This would be done using affinity under the covers but the UX is generic, ie --constraints="zones=z1,z2" and the spread across AZ is done automatically. Juju doesn't have an option for controlling skew as far as I can recall - if we were to add it it would be modelled to work across all clouds.
We have the k8s specific syntax for bespoke node/pod (anti-)affinity based on node tags, and this syntax is supposed to expose topology key also. I am not sure why that isn't doing what's expected.
We can look to utilise the now standard node labels
topology. kubernetes. io/zone kubernetes. io/region
topology.
to provide out of the box support for zone constraints and spreading workload units across AZ in the same way as we do for machine clouds. This would be done using affinity under the covers but the UX is generic, ie --constraints= "zones= z1,z2" and the spread across AZ is done automatically. Juju doesn't have an option for controlling skew as far as I can recall - if we were to add it it would be modelled to work across all clouds.
We have the k8s specific syntax for bespoke node/pod (anti-)affinity based on node tags, and this syntax is supposed to expose topology key also. I am not sure why that isn't doing what's expected.