diff --git a/charts/zabbix/Chart.yaml b/charts/zabbix/Chart.yaml index 0f043be..fa82f7f 100644 --- a/charts/zabbix/Chart.yaml +++ b/charts/zabbix/Chart.yaml @@ -1,9 +1,9 @@ --- apiVersion: v2 # Don't change this name: zabbix -version: 5.0.1 # helm chart version +version: 5.0.2 # helm chart version # LTS Zabbix version by default due to stability. See: https://www.zabbix.com/life_cycle_and_release_policy -appVersion: 7.0.0 # zabbix version +appVersion: 7.0.3 # zabbix version description: Zabbix is a mature and effortless enterprise-class open source monitoring solution for network monitoring and application monitoring of millions of metrics. keywords: - zabbix diff --git a/charts/zabbix/Makefile b/charts/zabbix/Makefile index 550535c..a276436 100644 --- a/charts/zabbix/Makefile +++ b/charts/zabbix/Makefile @@ -5,8 +5,8 @@ #--------------------------- URL=https://github.com/zabbix-community/helm-zabbix/ -HELM_IMAGE=alpine/helm:3.15.2 -HELM_DOCS_IMAGE=jnorwood/helm-docs:v1.13.1 +HELM_IMAGE=alpine/helm:3.16.1 +HELM_DOCS_IMAGE=jnorwood/helm-docs:v1.14.2 KNOWN_TARGETS=helm #---------------------------------------------------------------------------------------------------------- diff --git a/charts/zabbix/README.md b/charts/zabbix/README.md index 43d5f7f..1844ac5 100644 --- a/charts/zabbix/README.md +++ b/charts/zabbix/README.md @@ -1,6 +1,6 @@ # Helm chart for Zabbix. -[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) ![Version: 5.0.1](https://img.shields.io/badge/Version-5.0.1-informational?style=flat-square) [![Downloads](https://img.shields.io/github/downloads/zabbix-community/helm-zabbix/total?label=Downloads%20All%20Releases +[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) ![Version: 5.0.2](https://img.shields.io/badge/Version-5.0.2-informational?style=flat-square) [![Downloads](https://img.shields.io/github/downloads/zabbix-community/helm-zabbix/total?label=Downloads%20All%20Releases )](https://tooomm.github.io/github-release-stats/?username=zabbix-community&repository=helm-zabbix) Zabbix is a mature and effortless enterprise-class open source monitoring solution for network monitoring and application monitoring of millions of metrics. @@ -351,7 +351,7 @@ The following tables lists the configurable parameters of the chart and their de | postgresql.image.tag | int | `16` | Tag of Docker image of Postgresql server, choice "16" for postgres "2.14.2-pg16" for timescaledb (Zabbix supports TimescaleDB 2.1.0-2.14.x. More info: https://www.zabbix.com/documentation/7.0/en/manual/installation/requirements) | | postgresql.livenessProbe | object | `{}` | The kubelet uses liveness probes to know when to restart a container. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ | | postgresql.persistence.enabled | bool | `false` | Whether to enable persistent storage for the postgres container or not | -| postgresql.persistence.existingClaimName | bool | `false` | Existing persistent volume claim name to be used to store posgres data | +| postgresql.persistence.existingClaimName | bool | `false` | Existing persistent volume claim name to be used to store postgres data | | postgresql.persistence.storageSize | string | `"5Gi"` | Size of the PVC to be automatically generated | | postgresql.readinessProbe | object | `{}` | The kubelet uses readiness probes to know when a container is ready to start accepting traffic. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ | | postgresql.resources | object | `{}` | Requests and limits of pod resources. See: [https://kubernetes.io/docs/concepts/configuration/manage-resources-containers](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers) | @@ -418,7 +418,17 @@ The following tables lists the configurable parameters of the chart and their de | zabbixAgent.service.type | string | `"ClusterIP"` | Type of service to expose the application. Valid options are ExternalName, ClusterIP, NodePort, and LoadBalancer. More details: https://kubernetes.io/docs/concepts/services-networking/service/ | | zabbixAgent.startupProbe | object | `{"failureThreshold":5,"initialDelaySeconds":15,"periodSeconds":5,"successThreshold":1,"tcpSocket":{"port":"zabbix-agent"},"timeoutSeconds":3}` | The kubelet uses startup probes to know when a container application has started. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ | | zabbixAgent.startupProbe.tcpSocket.port | string | `"zabbix-agent"` | Port number/alias name of the container | -| zabbixImageTag | string | `"ubuntu-7.0.0"` | Zabbix components (server, agent, web frontend, ...) image tag to use. This helm chart is compatible with non-LTS version of Zabbix, that include important changes and functionalities. But by default this helm chart will install the latest LTS version (example: 7.0.x). See more info in [Zabbix Life Cycle & Release Policy](https://www.zabbix.com/life_cycle_and_release_policy) page When you want use a non-LTS version (example: 6.4.x), you have to set this yourself. You can change version here or overwrite in each component (example: zabbixserver.image.tag, etc). | +| zabbixBrowserMonitoring.customWebDriverURL | string | `""` | Custom WebDriver URL. If set, it overrides the default internal WebDriver service URL. Set zabbixBrowserMonitoring.webdriver.enabled to false when setting this. | +| zabbixBrowserMonitoring.enabled | bool | `false` | Enable browser pollers | +| zabbixBrowserMonitoring.pollers | int | `1` | Number of browser pollers to start | +| zabbixBrowserMonitoring.webdriver.enabled | bool | `true` | Enable webdriver | +| zabbixBrowserMonitoring.webdriver.image.pullPolicy | string | `"IfNotPresent"` | Pull policy of Docker image | +| zabbixBrowserMonitoring.webdriver.image.pullSecrets | list | `[]` | List of dockerconfig secrets names to use when pulling images | +| zabbixBrowserMonitoring.webdriver.image.repository | string | `"selenium/standalone-chrome"` | WebDriver container image | +| zabbixBrowserMonitoring.webdriver.image.tag | string | `"127.0-chromedriver-127.0-grid-4.23.0-20240727"` | WebDriver container image tag, See https://hub.docker.com/r/selenium/standalone-chrome/tags | +| zabbixBrowserMonitoring.webdriver.name | string | `"chrome"` | WebDriver container name | +| zabbixBrowserMonitoring.webdriver.port | int | `4444` | WebDriver container port | +| zabbixImageTag | string | `"ubuntu-7.0.3"` | Zabbix components (server, agent, web frontend, ...) image tag to use. This helm chart is compatible with non-LTS version of Zabbix, that include important changes and functionalities. But by default this helm chart will install the latest LTS version (example: 7.0.x). See more info in [Zabbix Life Cycle & Release Policy](https://www.zabbix.com/life_cycle_and_release_policy) page When you want use a non-LTS version (example: 6.4.x), you have to set this yourself. You can change version here or overwrite in each component (example: zabbixserver.image.tag, etc). | | zabbixJavaGateway.ZBX_DEBUGLEVEL | int | `3` | The variable is used to specify debug level, from 0 to 5 | | zabbixJavaGateway.ZBX_JAVAGATEWAY | string | `"zabbix-java-gateway"` | Additional arguments for Zabbix Java Gateway. Useful to enable additional libraries and features. ZABBIX_OPTIONS: Java Gateway Service Name | | zabbixJavaGateway.ZBX_START_POLLERS | int | `5` | This variable is specified amount of pollers. By default, value is 5 | diff --git a/charts/zabbix/artifacthub-pkg.yml b/charts/zabbix/artifacthub-pkg.yml index 79662ea..195e8a2 100644 --- a/charts/zabbix/artifacthub-pkg.yml +++ b/charts/zabbix/artifacthub-pkg.yml @@ -5,13 +5,13 @@ # https://github.com/kedacore/external-scalers/blob/main/artifacthub/azure-cosmos-db/0.1.0/artifacthub-pkg.yml # https://artifacthub.io/packages/keda-scaler/keda-official-external-scalers/external-scaler-azure-cosmos-db?modal=install -version: 5.0.1 # helm chart version +version: 5.0.2 # helm chart version # LTS Zabbix version by default due to stability. See: https://www.zabbix.com/life_cycle_and_release_policy -appVersion: 7.0.0 # zabbix version +appVersion: 7.0.3 # zabbix version name: zabbix category: monitoring, networking, metrics displayName: Zabbix - The Enterprise-Class Open Source Network Monitoring Solution -createdAt: 2024-07-02T21:13:20Z # Command Linux: date +%Y-%m-%dT%TZ +createdAt: 2024-09-24T01:27:32Z # Command Linux: date +%Y-%m-%dT%TZ description: Zabbix is a mature and effortless enterprise-class open source monitoring solution for network monitoring and application monitoring of millions of metrics. logoURL: https://assets.zabbix.com/img/logo/zabbix_logo_500x131.png license: Apache-2.0 diff --git a/charts/zabbix/docs/example/kind/values.yaml b/charts/zabbix/docs/example/kind/values.yaml index 567f27d..bf14978 100644 --- a/charts/zabbix/docs/example/kind/values.yaml +++ b/charts/zabbix/docs/example/kind/values.yaml @@ -1,6 +1,6 @@ # Custom values for zabbix. -zabbixImageTag: alpine-7.0.0 +zabbixImageTag: alpine-7.0.3 postgresAccess: useUnifiedSecret: true @@ -31,16 +31,16 @@ zabbixServer: value: "false" - name: "ZBX_EXAMPLE_MY_ENV_3" value: "100" - - name: MY_USERNAME - valueFrom: - secretKeyRef: - name: my-envs - key: user - - name: MY_PASSWORD - valueFrom: - secretKeyRef: - name: my-envs - key: password +# - name: MY_USERNAME +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: user +# - name: MY_PASSWORD +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: password # Example of readinessProbe when zabbix-server has two or more replicas in HA mode # readinessProbe: # exec: @@ -94,16 +94,16 @@ zabbixProxy: value: "false" - name: "ZBX_EXAMPLE_MY_ENV_6" value: "100" - - name: MY_USERNAME - valueFrom: - secretKeyRef: - name: my-envs - key: user - - name: MY_PASSWORD - valueFrom: - secretKeyRef: - name: my-envs - key: password +# - name: MY_USERNAME +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: user +# - name: MY_PASSWORD +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: password zabbixAgent: enabled: true @@ -125,16 +125,17 @@ zabbixAgent: value: "false" - name: "ZBX_EXAMPLE_MY_ENV_9" value: "100" - - name: MY_USERNAME - valueFrom: - secretKeyRef: - name: my-envs - key: user - - name: MY_PASSWORD - valueFrom: - secretKeyRef: - name: my-envs - key: password +# - name: MY_USERNAME +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: user +# - name: MY_PASSWORD +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: password + zabbixWeb: enabled: true @@ -150,16 +151,16 @@ zabbixWeb: value: "false" - name: "ZBX_EXAMPLE_MY_ENV_12" value: "100" - - name: MY_USERNAME - valueFrom: - secretKeyRef: - name: my-envs - key: user - - name: MY_PASSWORD - valueFrom: - secretKeyRef: - name: my-envs - key: password +# - name: MY_USERNAME +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: user +# - name: MY_PASSWORD +# valueFrom: +# secretKeyRef: +# name: my-envs +# key: password ingress: enabled: true diff --git a/charts/zabbix/templates/deployment-webdriver.yaml b/charts/zabbix/templates/deployment-webdriver.yaml index 42dcb4d..3e1be12 100644 --- a/charts/zabbix/templates/deployment-webdriver.yaml +++ b/charts/zabbix/templates/deployment-webdriver.yaml @@ -25,8 +25,8 @@ spec: image: {{ .Values.zabbixBrowserMonitoring.webdriver.image.repository }}:{{ .Values.zabbixBrowserMonitoring.webdriver.image.tag }} ports: - containerPort: {{ .Values.zabbixBrowserMonitoring.webdriver.port }} -{{- end }} imagePullSecrets: {{- range .Values.zabbixBrowserMonitoring.webdriver.pullSecrets }} - name: {{ . | quote }} {{- end }} +{{- end }} diff --git a/charts/zabbix/templates/deployment-zabbix-server.yaml b/charts/zabbix/templates/deployment-zabbix-server.yaml index 80f3df7..8d38cc8 100644 --- a/charts/zabbix/templates/deployment-zabbix-server.yaml +++ b/charts/zabbix/templates/deployment-zabbix-server.yaml @@ -262,4 +262,7 @@ spec: {{- with .Values.zabbixServer.extraVolumes }} {{- toYaml . | nindent 8 }} {{- end }} + {{- with .Values.zabbixAgent.extraVolumes }} + {{- toYaml . | nindent 8 }} + {{- end }} {{- end }} diff --git a/charts/zabbix/templates/job-init-db-schema.yaml b/charts/zabbix/templates/job-init-db-schema.yaml index cdd8a8b..a0c997e 100644 --- a/charts/zabbix/templates/job-init-db-schema.yaml +++ b/charts/zabbix/templates/job-init-db-schema.yaml @@ -21,20 +21,6 @@ metadata: {{ $key }}: {{ $value | quote }} {{- end }} spec: - metadata: - labels: - app: {{ template "zabbix.fullname" . }}-init-db-schema - app.kubernetes.io/name: init-db-schema - helm.sh/chart: {{ include "zabbix.chart" . }} - app.kubernetes.io/instance: {{ .Release.Name }}-init-db-schema - app.kubernetes.io/managed-by: {{ .Release.Service }}-init-db-schema - {{- if .Values.zabbixServer.jobDBSchema.jobLabels }} - {{- toYaml .Values.zabbixServer.jobDBSchema.jobLabels | nindent 6 }} - {{- end }} - annotations: - {{- range $key,$value := .Values.zabbixServer.jobDBSchema.jobAnnotations }} - {{ $key }}: {{ $value | quote }} - {{- end }} ttlSecondsAfterFinished: 120 template: spec: diff --git a/charts/zabbix/templates/statefulset-zabbix-proxy.yaml b/charts/zabbix/templates/statefulset-zabbix-proxy.yaml index 582c693..39b0463 100644 --- a/charts/zabbix/templates/statefulset-zabbix-proxy.yaml +++ b/charts/zabbix/templates/statefulset-zabbix-proxy.yaml @@ -203,6 +203,9 @@ spec: volumes: {{- toYaml . | nindent 8 }} {{- end }} + {{- with .Values.zabbixAgent.extraVolumes }} + {{- toYaml . | nindent 8 }} + {{- end }} {{- with .Values.zabbixProxy.extraVolumeClaimTemplate }} volumeClaimTemplates: {{- toYaml . | nindent 4 }} diff --git a/charts/zabbix/values.yaml b/charts/zabbix/values.yaml index fc8c180..2b844c5 100644 --- a/charts/zabbix/values.yaml +++ b/charts/zabbix/values.yaml @@ -20,7 +20,7 @@ global: #See more info in [Zabbix Life Cycle & Release Policy](https://www.zabbix.com/life_cycle_and_release_policy) page #When you want use a non-LTS version (example: 6.4.x), you have to set this yourself. You can change version #here or overwrite in each component (example: zabbixserver.image.tag, etc). -zabbixImageTag: ubuntu-7.0.0 +zabbixImageTag: ubuntu-7.0.3 # **Zabbix Postgresql access / credentials** configurations # with this dict, you can set unified PostgreSQL access credentials, IP and so on for both Zabbix Server and Zabbix web frontend