Helm/Zabbix
helm repo add zabbix-community https://zabbix-community.github.io/helm-zabbix
helm repo update && helm repo list
kubectl config get-contexts
|
|||
| |||
Data
|
Data | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
Config
|
Config | |||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| |||||||||||||||||||||||||||||||
Helm » Upgrade
|
Helm » Install | |
|---|---|
helm show values zabbix-community/zabbix --version=7.0.11|less
helm show values zabbix-community/zabbix --version=7.0.12|less
|
export KUBECONFIG="${HOME}/.kube/shahed-ab-kubeconfig.yaml"
kubectl create ns zabbix-monitoring-system || true
|
| Install | Notes |
cat <<'YML' | \
helm -n=zabbix-monitoring-system upgrade \
-i zabbix zabbix-community/zabbix --version=7.0.12 -f -
---
nameOverride: zabbix
fullnameOverride: zabbix
zabbixImageTag: ubuntu-7.0.16
postgresAccess:
existingSecretName: postgres
zabbixServer:
enabled: true
zabbixServerHA:
enabled: false
dbCreateUpgradeJob:
image:
repository: ghcr.io/zabbix-community/zabbix-server-create-upgrade-db
replicaCount: 1
image:
repository: zabbix/zabbix-server-pgsql
ingress:
enabled: true
annotations:
kubernetes.io/ingress.class: nginx
hosts:
- host: zabbix.shahed.biz.ops
paths:
- path: /
pathType: ImplementationSpecific
YML
|
|
| Status | Verify |
helm -n=zabbix-monitoring-system status zabbix
helm -n=zabbix-monitoring-system get manifest zabbix
|
telnet zabbix.shahed.biz.ops 80 setsid open http://zabbix.shahed.biz.ops >/dev/null 2>&1 & |
Helm » Ingress
|
Helm » Ingress | |
|---|---|
cat <<'YML' | \
kubectl -n zabbix-monitoring-system patch ingress/zabbix --patch-file=/dev/stdin
---
metadata:
annotations:
cert-manager.io/cluster-issuer: shahed-ecc-sub-ca-2025-k8s
spec:
tls:
- hosts:
- zabbix.shahed.biz.ops
secretName: zabbix-cert
YML
|
cat <<'YML' | \
kubectl -n zabbix-monitoring-system patch ingress/zabbix --patch-file=/dev/stdin
---
metadata:
annotations:
cert-manager.io/cluster-issuer: null
spec:
tls: null
YML
|
| Telnet | Browse |
telnet zabbix.shahed.biz.ops 80 telnet zabbix.shahed.biz.ops 443 |
setsid open http://zabbix.shahed.biz.ops >/dev/null 2>&1 & setsid open https://zabbix.shahed.biz.ops >/dev/null 2>&1 & |
Helm » Scaling
|
Helm » Scaling | |
|---|---|
| Scale » Down | Scale » Up |
kubectl -n=zabbix-monitoring-system \
scale deploy/zabbix-zabbix-webservice --replicas=0
|
kubectl -n=zabbix-monitoring-system \
scale deploy/zabbix-zabbix-webservice --replicas=1
|
kubectl -n=zabbix-monitoring-system \
scale deploy/zabbix-zabbix-server --replicas=0
|
kubectl -n=zabbix-monitoring-system \
scale deploy/zabbix-zabbix-server --replicas=1
|
kubectl -n=zabbix-monitoring-system \
scale deploy/zabbix-zabbix-web --replicas=0
|
kubectl -n=zabbix-monitoring-system \
scale deploy/zabbix-zabbix-web --replicas=1
|
kubectl -n=zabbix-monitoring-system \
scale sts/zabbix-postgresql --replicas=0
|
kubectl -n=zabbix-monitoring-system \
scale sts/zabbix-postgresql --replicas=1
|
Helm » Debug
|
Helm » Debug |
|---|
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-postgresql -- psql -p5432 -U shahed_tool_zabbix -d shahed_tool_zabbix
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-postgresql -- bash -c 'printenv|grep -i postgres_'
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-postgresql -- bash -c 'cat /etc/hosts'
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-postgresql -- bash
psql -hzabbix-postgresql-0 -p5432 -U shahed_tool_zabbix
|
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-zabbix-webservice -c zabbix-webservice -- bash
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-zabbix-webservice -c zabbix-webservice
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-zabbix-server -c zabbix-server -- bash
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-zabbix-server -c zabbix-server
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-postgresql -c postgresql -- bash
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-postgresql -c postgresql
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-zabbix-web -c zabbix-web -- bash
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-zabbix-web -c zabbix-web
|
kubectl -n=zabbix-monitoring-system get Pod -o=yaml|yq -P '.items[].spec.containers[].name'
kubectl -n=zabbix-monitoring-system get Pod -o=yaml|yq -P '.items[].metadata.labels'
kubectl -n=zabbix-monitoring-system get Ingress -o=yaml|yq -P '.items[].metadata.name'
kubectl -n=zabbix-monitoring-system get Service -o=yaml|yq -P '.items[].metadata.name'
kubectl -n=zabbix-monitoring-system get deploy -o=yaml|yq -P '.items[].metadata.name'
kubectl -n=zabbix-monitoring-system get sts -o=yaml|yq -P '.items[].metadata.name'
kubectl -n=zabbix-monitoring-system get Pod --show-labels
kubectl -n=zabbix-monitoring-system get Service
|
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-zabbix-webservice
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-zabbix-server
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-postgresql
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-zabbix-web
|
Helm » Uninstall
|
Helm » Uninstall | |
|---|---|
helm -n=zabbix-monitoring-system status zabbix
helm -n=zabbix-monitoring-system get all zabbix
helm -n=zabbix-monitoring-system uninstall zabbix
|
kubectl -n=zabbix-monitoring-system delete pvc --all
kubectl delete ns zabbix-monitoring-system
kubectl delete pv zabbix-data-postgresql-0
|
Playground
|
Playground | |
|---|---|
helm -n=zabbix-monitoring-system install zabbix zabbix-community/zabbix --version=7.0.12
helm -n=zabbix-monitoring-system upgrade -i zabbix zabbix-community/zabbix --version=7.0.12
helm show values zabbix-community/zabbix --version=7.0.12|less
| |
kubectl -n=zabbix-monitoring-system delete all --all
kubectl -n=zabbix-monitoring-system delete ing --all
kubectl -n=zabbix-monitoring-system delete sts --all
|
kubectl delete pv zabbix-data-postgresql-0
kubectl -n=zabbix-monitoring-system delete svc --all
kubectl -n=zabbix-monitoring-system delete pvc --all
|
kubectl -n=zabbix-monitoring-system rollout history deploy/zabbix-zabbix-web
kubectl -n=zabbix-monitoring-system rollout restart deploy/zabbix-zabbix-web
kubectl -n=zabbix-monitoring-system rollout status deploy/zabbix-zabbix-web
| |
kubectl -n=zabbix-monitoring-system exec -it svc/zabbix-postgresql -- psql -p5432 -U shahed_tool_zabbix
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-postgresql
kubectl -n=zabbix-monitoring-system logs -f svc/zabbix-zabbix-web
| |
git clone --depth=1 --single-branch --branch 'release/7.4' \
https://git.zabbix.com/scm/zt/kubernetes-helm.git 2>/dev/null || \
git -C kubernetes-helm pull
cd ./kubernetes-helm
kubectl get namespaces
kubectl create namespace monitoring || true
|
|
References
|
References | ||
|---|---|---|