Keel is a tool for automating Kubernetes deployment updates ↦
kubectl is the new SSH. If you are using it to update production workloads, you are doing it wrong. See examples on how to automate application updates.
We’re using this in our new Kubernetes-based infrastructure (more details on that coming to a podcast near you). Keel runs as a single container, scanning Kubernetes and Helm releases for outdated images. Super cool stuff, and even has a web interface (which we’re not using yet, but should).
Discussion
Sign in or Join to comment or subscribe
Frank Wiles
2020-10-25T15:11:34Z ago
They may have fixed the issues in the last 6 months but we had some problems with Keel. Mostly around it not staying stable and running after a month or two of running and because it doesn’t properly modify the Deployment, it doesn’t JUST change the image version but can also change the API version (from say v1alpha to v2beta) of something it is deploying for you.
We switched over to FluxCD and haven’t looked back.
Jerod Santo
Bennington, Nebraska
Jerod co-hosts The Changelog, crashes JS Party & takes out the trash (his old code) once in awhile.
2020-10-26T13:51:48Z ago
Interesting…
We did have one similar scenario a few days ago where Keel appeared to go into stun mode until we gave it a kick. @gerhard have you heard of FluxCD and/or gave it a look in this context?
Frank Wiles
2020-10-26T13:56:38Z ago
Yep we ended up having to kick it every few weeks it seemed and then ran into some trouble when it was doing more than simply changing the image tag on us.
Gerhard Lazu
UK
Make it work. Keep improving.
2020-10-26T15:49:31Z ago
Can FluxCD update deployments based on DockerHub changes, without committing to a repository?
With the ongoing transition to FluxCD 2, and slight preference for ArgoCD (they were supposed to merge at one point, but didn’t happen AFAIK), Keel won through its simplicity. Having said that, we did notice just a few days ago how it stopped updating Deployments, for no obvious reason. GitOps via either FluxCD or Argo is definitely a more comprehensive and robust approach, but felt complex for what we needed in the first iteration. Maybe there is a simpler approach to using FluxCD which I am yet to discover 🙂
Tell me more about how you’re using FluxCD, I’m definitely interested.
Frank Wiles
2020-10-26T15:55:41Z ago
Yep, you can set FluxCD to be “automated” with various image tag globs (
0.0.*
, etc) it also supports a helm operator that works really well to keep your charts and image versions in sync based on the same rules.ArgoCD also looked to be a good alternative, but we ended up going with FluxCD as it worked fine for us without much investigation.
Gerhard Lazu
UK
Make it work. Keep improving.
2020-10-26T19:42:39Z ago
That sounds great, will give it a go. Which FluxCD version are you using?
Frank Wiles
2020-10-26T19:55:48Z ago
We’re running 1.19.0 and the helm-operator:1.1.0