Up until now, Fairwinds Nova was just a tool for Helm releases. While this has been exceptionally useful for us and other users over the last several years, we recognize that not everyone uses Helm (gasp)! So, we set out to provide Kubernetes users with additional functionality for detecting out of date versions in their clusters.
As of Nova 3.1.0, you can now run this open source tool with a new flag called containers. This feature will examine all container images in your Kubernetes cluster and notify you if there is a new version available.
Furthermore, the new Nova will show you three different alternatives for updating your images. We provide the absolute latest version, the latest minor version, and the most recent patch version. Let’s see it in action:
$ nova find --containers
Container Name Current Version Old Latest Latest Minor Latest Patch
============== =============== === ====== ============= =============
quay.io/jetstack/cert-manager-controller v1.5.0 true v1.8.0 v1.8.0 v1.5.5
quay.io/jetstack/cert-manager-cainjector v1.5.0 true v1.8.0 v1.8.0 v1.5.5
quay.io/jetstack/cert-manager-webhook v1.5.0 true v1.8.0 v1.8.0 v1.5.5
docker.io/bitnami/external-dns 0.10.2-debian-10-r0 true 0.11.1 0.10.2-debian-10-r0 0.10.2
Here, we are running cert-manager v1.5.0, and we have multiple options for updating. If we want to just update the latest patch version, we can go to v1.5.5. And if we want the latest version entirely, v1.8.0 is also available.
The biggest issue with trying to find new versions of container images is that not all containers use actual semver versions in their image tags. Container image tags can technically contain just about anything, and some patterns are very common.
For instance, if you have an alpine-based image and an ubuntu-based image, you might denote those with a v0.0.0-alpine. This decision can cause some real issues when trying to compare versions. With this new functionality, we do our best to get the version involved, we can’t guarantee anything. So, be careful!