Skip to main content

Quick Start

The recommended method for installing Canary Checker is using helm

1. Install Helm

The following steps will install the latest version of helm

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
chmod 700 get_helm.sh
./get_helm.sh

2. Add the Flanksource helm repository

helm repo add flanksource https://flanksource.github.io/charts
helm repo update

3. Deploy Canary Checker using Helm

To install into a new canary-checker namespace, run

helm install canary-checker \
--wait \
-n canary-checker \
--create-namespace flanksource/canary-checker \
-f values.yaml
values.yaml
flanksource-ui:
ingress:
host: canary-checker.127.0.0.1.nip.io
annotations:
kubernetes.io/ingress.class: nginx
kubernetes.io/tls-acme: "true"
tls:
- secretName: canary-checker-tls
hosts:
- canary-checker.127.0.0.1.nip.io
info

Note the default installation of canary-checker uses an embedded postgres database and does not persist history, see: Database

4. Create a canary

cat <<EOF | kubectl apply -f -
apiVersion: canaries.flanksource.com/v1
kind: Canary
metadata:
name: http-check
spec:
interval: 30
http:
- name: http pass response 200 status code
url: https://httpbin.demo.aws.flanksource.com/status/200
EOF

5. Check the results via the CLI

kubectl get canary
$ kubectl get canary
NAME INTERVAL STATUS LAST CHECK UPTIME 1H LATENCY 1H LAST TRANSITIONED
http-check. 30 Passed 13s 18/18 (100.0%) 480ms 13s

6. Flanksource UI

The canary checker itself only presents an API. To view the data graphically, the Flanksource UI is required, and is installed by default. The UI should be configured to allow external access to via ingress

flanksource-ui.ingress.hostURL at which the UI will be accessed
flanksource-ui.ingress.annotationsMap of annotations required by the ingress controller or certificate issuer
flanksource-ui.ingress.tlsMap of configuration options for TLS

More details regarding ingress configuration can be found in the kubernetes documentation