Operate the platform · wrap-up
Cheat sheet & self-check
Every command from this section on one page.
Install
helm install kps prometheus-community/kube-prometheus-stack -n monitoring --create-namespace --set prometheus.prometheusSpec.serviceMonitorSelectorNilUsesHelmValues=false --set prometheus.prometheusSpec.ruleSelectorNilUsesHelmValues=false | Prometheus, Alertmanager, Grafana (select all monitors/rules) |
helm install podinfo podinfo/podinfo -n demo --create-namespace --set serviceMonitor.enabled=true | Demo app with metrics |
Traffic & checks
kubectl -n demo port-forward svc/podinfo 9898 | Reach podinfo locally |
hey -z 10m -q 20 http://localhost:9898/ + …/status/500 | Good and bad traffic |
kubectl -n monitoring port-forward svc/kps-kube-prometheus-stack-prometheus 9090 | Prometheus UI (name depends on release) |
kubectl -n monitoring port-forward svc/kps-kube-prometheus-stack-alertmanager 9093 | Alertmanager UI |
Clusters
kind create cluster --name mgmt (and edge-01, edge-02, edge-03) | Four local clusters |
docker inspect -f '{{.NetworkSettings.Networks.kind.IPAddress}}' edge-01-control-plane | Address Argo CD can reach |
argocd cluster add kind-edge-01 --name edge-01 --kubeconfig ./edge-01.kubeconfig | Register a cluster |
kubectl -n argocd label secret <cluster-secret> wave=canary | Label clusters for targeting |
Fleet
ApplicationSet with generators: clusters: selector: matchLabels | One app per matching cluster |
argocd app list | Generated Applications |
targetRevision per wave (e.g. canary → main, stable → a tag) | Staged rollout |