Installation
- Linux (amd64)
- Linux (arm64)
- MacOSX (amd64)
- MacOSX (arm64)
- Makefile
- Windows
wget https://github.com/flanksource/canary-checker/releases/latest/download/canary-checker_linux_amd64 \
-O /usr/bin/canary-checker && \
chmod +x /usr/bin/canary-checker
wget https://github.com/flanksource/canary-checker/releases/latest/download/canary-checker_linux_arm64 \
-O /usr/bin/canary-checker && \
chmod +x /usr/bin/canary-checker
wget https://github.com/flanksource/canary-checker/releases/latest/download/canary-checker_darwin_amd64 \
-O /usr/local/bin/canary-checker && \
chmod +x /usr/local/bin/canary-checker
wget https://github.com/flanksource/canary-checker/releases/latest/download/canary-checker_darwin_arm64 \
-O /usr/local/bin/canary-checker && \
chmod +x /usr/local/bin/canary-checker
OS = $(shell uname -s | tr '[:upper:]' '[:lower:]')
ARCH = $(shell uname -m | sed 's/x86_64/amd64/')
wget -nv -nc https://github.com/flanksource/canary-checker/releases/latest/download/canary-checker_$(OS)_$(ARCH) \\
-O /usr/local/bin/canary-checker && \\
chmod +x /usr/local/bin/canary-checker
wget -nv -nc -O https://github.com/flanksource/canary-checker/releases/latest/download/canary-checker.exe
List all the canaries
kubectl get canaries -o wide
# NAME REPLICAS INTERVAL STATUS LAST CHECK UPTIME 1H LATENCY 1H LAST TRANSITIONED ...
# folder-pass 1 300 Failed 34s 0/35 0% 16ms
# folder-pass-empty 1 300 Passed 34s 37/37 (100.0%) 0ms
# s3-bucket-pass 1 30 Failed 3s 0/358 0% 1s
Scaling
Canaries can be scaled up or down just like other kubernetes resources. However, scaling to more than one replica is identical to having just one replica. In other words, scaling a canary can be thought of as a mechanism to turn on/off the canary.
Scaling up (enabling)kubectl scale --replicas=10 canaries.canaries.flanksource.com folder-pass
# canary.canaries.flanksource.com/folder-pass scaled
kubectl get canaries folder-pass -o wide
# NAME REPLICAS INTERVAL STATUS LAST CHECK UPTIME 1H LATENCY 1H LAST TRANSITIONED MESSAGE ERROR
# folder-pass 1 300 Failed 3m13s 0/35 0% 16ms
This effectively stops the canary from running.
kubectl scale --replicas=0 canaries.canaries.flanksource.com folder-pass
# canary.canaries.flanksource.com/folder-pass scaled
kubectl get canaries folder-pass -o wide
# NAME REPLICAS INTERVAL STATUS LAST CHECK UPTIME 1H LATENCY 1H LAST TRANSITIONED MESSAGE ERROR
# folder-pass 0 300 Failed 3m13s 0/35 0% 16ms