Hey folks :wave: I’m wondering if there are plans ...
# deployment-kubernetes
c
Hey folks 👋 I’m wondering if there are plans to maintain images pinned to the minor version (i.e.
0.11
) in addition to the patch-versioned images (i.e.
0.11.1
)? Reason I’m asking is I would like our k8s cluster to automatically pull and update our deployment with patches, but not minor versions. We previously had it set to pull
latest
, but that caused issues and downtime when
0.11
was released because it introduced breaking changes to the k8s config. We’ve since pinned our deployment to
0.11.0
but that means we have to manually update it for every new patch. If there’s a better way to do this though, I’m all ears!
a
edit: oops i misread this
i think this is very reasonable and just basically a small change to our release process - can you file an issue?
c
Will do — thanks Alex!
n
Not against the overall idea however this would be a very bad idea in Kubernetes 🙂
K8s does not check for updates on mutable tags like that in any consistent way. If you remember to set
imagePullPolicy: Always
it will check whenever a new pod starts, but you would still need to restart in a synchronized way across all related pods or you end up with version mismatches.
For example if a new version was released, Dagit wouldn't upgrade but future job pods would
In general mutable tags and k8s don't get along well unless you reeeeeally don't care about cross-compat 🙂
c
Ahh I see — I’m definitely a novice with regards to Kubernetes so this is helpful. Is the recommended way than to manually update the deployment for every patch version (or few patches, whenever it makes sense to update)?
n
There's a number of k8s ecosystem tools to automate it if you want, though I'm not sure how well that would work with how Dagster operates (need to update both the running deployments and a configmap, general purpose tooling wouldn't usually understand the latter)
If you want automatic active management for something, you would need to write an operator 🙂
c
Sounds good — thanks Noah!
n
At least I think the image is stored in a configmap
I should check that 🙂
Hmm, I don't actually see it in the helm template
So maybe the usual Argo or Flux image upgrader tools would work as expected 😄