version-checker
version-checker copied to clipboard
Minio scrape has odd error about constraints
Hi,
We have k8s running on Azure and the following (images) versions:
Prometheus: quay.io/prometheus/prometheus:v2.21.0
Version-checker: quay.io/jetstack/version-checker:v0.2.0
Grafana: grafana/grafana:7.2.0-ubuntu
Our config for the deployment of version-checker is:
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: version-checker
name: version-checker
spec:
replicas: 1
selector:
matchLabels:
app: version-checker
template:
metadata:
labels:
app: version-checker
annotations:
prometheus.io/path: /metrics
prometheus.io/port: "8080"
prometheus.io/scrape: "true"
enable.version-checker.io/version-checker: "true"
spec:
serviceAccountName: version-checker
containers:
- image: quay.io/jetstack/version-checker:v0.2.0
imagePullPolicy: Always
ports:
- containerPort: 8080
name: version-checker
command: ["version-checker"]
args:
- "--log-level=debug"
- "--test-all-containers=true"
env:
- name: VERSION_CHECKER_ACR_USERNAME
valueFrom:
secretKeyRef:
name: version-checker-pdokcr
key: ACR_USERNAME
- name: VERSION_CHECKER_ACR_PASSWORD
valueFrom:
secretKeyRef:
name: version-checker-pdokcr
key: ACR_PASSWORD
resources:
limits:
cpu: 200m
memory: 256Mi
requests:
cpu: 200m
memory: 256Mi
On a side note, above config might look a bit odd, we use Kustomize to deploy our environments.
As per command-args above we want to scrape all pods, without exception. There are however several pods not being shown inside the table. Some of these are related to minio. We dont have minio running on our own ACR and use the "public" available images for that.
When I look at the logs of the version-checker, it has this to say about it:
time="2020-10-07T07:43:28Z" level=error msg="minio/mc: no tags found with these option constraints: {}" container=download-cleanup module=controller name=bgt-download-cleanup-1601942400-k7wlx namespace=download
time="2020-10-07T07:43:56Z" level=error msg="minio/minio: no tags found with these option constraints: {}" container=minio module=controller name=minio-695644c4b5-9dlq9 namespace=services
time="2020-10-07T07:43:56Z" level=error msg="pdok/mapserver: no tags found with these option constraints: {}" container=mapserver module=controller name=bzk-brogmwkenset-wms-v2-1-mapserver-5448896fd7-54bsh namespace=services
I have no idea what tags it is trying to figure out, as I have the command-arg set to "--test-all-containers=true". Shouldn't it pickup these pods this way or am I missing out on something?
Our pods have these images currently active and I kind of expect them to be shown in the table:
minio-etch: gcr.io/etcd-development/etcd:v3.3.10
minio-server: minio/minio:RELEASE.2020-10-03T02-19-42Z
Updated to v0.2.1, same error still available
Hi @kad-poelw, the issue here from what I can see is that those image tags don't follow standard semantic versioning. In order for version-checker to use those tags that are not following, you will either need to add the option to look at the image created date, or match over a regular expression. I suggest setting the following annotation on these pods, changing the container name and regex where appropriate.
match-regex.version-checker.io/minio: ^RELEASE\.
Checking against SHA (image created date) is also an option.
use-sha.version-checker.io/minio: "true"