# Default values for zabbix. # This is a YAML-formatted file. # Declare variables to be passed into your templates. # Global configurations global: # -- Reference to one or more secrets to be used when pulling images. # # For example: # imagePullSecrets: # - name: "image-pull-secret" imagePullSecrets: [] # -- Labels to apply to all resources. commonLabels: {} # -- 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: 7.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.16 # **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 # you can either chose from having all this in one named (preexisting) secret or setting the values one by one with vars # whatever set here overrides the credential settings within the "zabbixServer" and "zabbixWeb" sections. postgresAccess: # under this section you can configure PostgreSQL access and credentials centrally for the entire helm chart. # All relevant components installed by this chart will respect it: zabbixServer, zabbixWeb and postgresql (if enabled) # # USING ONE SECRET CONTAINING ALL DB RELEVANT SETTINGS # PostgreSQL access details all in one existing secret (matches the structure of secrets the CrunchyData PGO operator # and the CNPG postgres operator generate) # for Zalando Postgres operator mixed setup is needed # use Username and password needs to be referenced from secret # host, port and db needs to be filled below # if this option is chosen the below listed settings are being ignored # -- Name of an existing secret to use for database access. This could be one created by a Postgres operator such as CNPG or PGO existingSecretName: "" # -- key of the postgres access secret where host ip / dns name for the postgres db is found # if removed postgresAccess.host is used secretHostKey: host # -- key of the postgres access secret where the port for the postgres db is found # if removed postgresAccess.port is used secretPortKey: port # -- key of the postgres access secret where user name for the postgres db is found secretUserKey: user # -- key of the unified postgres access secret where password for the postgres db is found secretPasswordKey: password # -- key of the postgres access secret where database name for the postgres db is found # if removed postgresAccess.database is used secretDBKey: dbname # -- key of the postgres access secret where schema name for the postgres db is found. Can be left empty (defaults to "public", then). Only being used if external database is used (`postgresql.enabled` not set) secretSchemaKey: "" # # If you are not using an existing secret for all db relevant settings, you have to supply these here # a secret is then automatically generated containing those values under the above listed keys. This secret is then # being used in all components except the db-init-upgrade-job. The job will get the database access credentials # as literal values always if no existing secret is used, due to anatomy of Helm Charts and pre-install/pre-upgrade hooks # -- Address of database host - ignored if postgresql.enabled=true host: "zabbix-postgresql" # -- Port of database host - ignored if postgresql.enabled=true or when existingSecretName is set port: "5432" # -- User of database, ignored if existingSecretName is set user: "zabbix" # -- Password of database, eignored if existingSecretName is set password: "zabbix" # -- Name of database, eignored if existingSecretName is set database: "zabbix" # -- Schema of database. Can be left empty if secretSchemaKey is not set. Only being used if external database is used (`postgresql.enabled` not set) schema: "" # **Zabbix Server** configurations zabbixServer: # -- Enables use of **Zabbix Server** enabled: true # -- Section responsible for native Zabbix Server High Availability support of this Helm Chart zabbixServerHA: # -- Enables support for Zabbix Server High Availability. If disabled, replicaCount will always be 1. Can not be combined with ``postgresql.enabled=true`` enabled: false # -- K8S Role being used for database initialization and upgrade job, which needs access to certain Kubernetes resources role: # -- Extra annotations for the role needed to give the HA related sidecars and the DB job API permissions annotations: {} # -- Rolebinding being used for the database initialization and upgrade job roleBinding: # -- Extra annotations for the roleBinding needed to give the HA related DB init and upgrade job annotations: {} # -- Serviceaccount for the database initialization and upgrade job serviceAccount: # -- Extra annotations for the serviceAccount needed to give the DB job API permissions annotations: {} # -- Settings for the database initialization / upgrade job needed for HA enabled setups dbCreateUpgradeJob: # -- Image settings for the database initialization / upgrade job image: # -- Image repository for the database initialization / upgrade job repository: ghcr.io/zabbix-community/zabbix-server-create-upgrade-db # -- Tag of the image to use for the dbCreateUpgradeJob. Don't override this if you don't have a specific reason. # -- it is going to be chosen based of the zabbix_server pod container otherwise tag: "" # -- The tag suffix used for the dbCreateUpgradeJob's image when not explicitly specifying a tag for the image. The tag name will be concatenated with major release of zabbix_server image if specified tagSuffix: "20241230222241" # -- Pull policy for the db initialization / upgrade job pullPolicy: IfNotPresent # -- Pull secrets for the db initialization / upgrade job pullSecrets: [] # -- Additional init containers to start within the dbCreateUpgradeJob pod extraInitContainers: [] # -- Additional containers to start within the dbCreateUpgradeJob pod extraContainers: [] # -- Additional specifications to the dbCreateUpgradeJob pod extraPodSpecs: {} # -- Additional volumeMounts to the dbCreateUpgradeJob pod extraVolumeMounts: [] # -- Additional volumes to make available to the dbCreateUpgradeJob pod extraVolumes: [] # -- Resource requests and limits for the dbCreateUpgradeJob pod resources: {} # -- Security context for the HA labels sidecar # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- The HA labels sidecar checks for the current pod whether it is the active Zabbix Server HA node and sets labels on it, accordingly haLabelsSidecar: # -- Image settings for the HA labels sidecar image: # -- Repository where to get the image for the HA labels sidecar container repository: ghcr.io/zabbix-community/zabbix-server-ha-label-manager # -- Tag of the HA labels sidecar container image tag: "20241230230305" # -- Pull policy for the HA labels sidecar image pullPolicy: IfNotPresent # -- Pull secrets for the HA labels sidecar image pullSecrets: [] # -- Label name for the sidecar to set on the zabbix server pods, will be used in the zabbix server Service as an additional selector to point to the active Zabbix Server pod labelName: zabbix.com/server-ha-role # -- Resource requests and limits for the HA labels sidecar resources: {} # -- Security context for the HA labels sidecar securityContext: {} # -- Extra VolumeMounts for the HA labels sidecar extraVolumeMounts: [] # -- Number of replicas of ``zabbixServer`` module. Will be forced to be 1 if ``zabbixServer.zabbixServerHA=false`` replicaCount: 1 # -- Set permissive podAntiAffinity to spread replicas over cluster nodes if replicaCount>1 podAntiAffinity: true # -- Optional set true open a port direct on node where Zabbix Server runs hostPort: false # -- Optional set hostIP different from 0.0.0.0 to open port only on this IP hostIP: 0.0.0.0 # -- 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) resources: {} image: # -- Zabbix Server Docker image name repository: zabbix/zabbix-server-pgsql # -- Zabbix Server Docker image tag, if you want to override zabbixImageTag tag: null # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- Automatically clean orphaned ha nodes from ha_nodes db table haNodesAutoClean: enabled: true image: # -- Postgresql Docker image name: chose one of "postgres" or "timescale/timescaledb" repository: postgres # -- Tag of Docker image of Postgresql server, choice "16" for postgres "2.17.2-pg16" for timescaledb # (Zabbix supports TimescaleDB. More info: https://www.zabbix.com/documentation/7.0/en/manual/installation/requirements) tag: 16 pullPolicy: IfNotPresent pullSecrets: [] schedule: "0 1 * * *" concurrencyPolicy: "Replace" deleteOlderThanSeconds: 3600 # -- 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) resources: {} # -- Extra environment variables. A list of additional environment variables. extraEnv: [] # -- Additional volumeMounts to the cronjob hanodes autoclean extraVolumeMounts: [] # -- Additional containers to start within the cronjob hanodes autoclean extraContainers: [] # -- Additional init containers to start within the cronjob hanodes autoclean extraInitContainers: [] # -- Additional volumes to make available to the cronjob hanodes autoclean extraVolumes: [] # -- Additional specifications to the cronjob hanodes autoclean extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- Labels to add to the cronjob for ha nodes autoclean cronjobLabels: {} service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. # If an address is specified manually, is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- externalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses # (NodePorts, ExternalIPs, and LoadBalancer IPs). "Local" to preserve sender's IP address. Please note that this might not work on multi-node clusters, # depending on your network settings. # externalTrafficPolicy: Local # -- externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service. # These IPs are not managed by Kubernetes. externalIPs: [] # -- Only applies to Service Type: LoadBalancer. This feature depends on whether the underlying cloud-provider supports specifying # the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature. loadBalancerIP: "" # -- If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer # will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature. loadBalancerSourceRanges: [] # -- loadBalancerClass is the class of the load balancer implementation this Service belongs to. # If specified, the value of this field must be a label-style identifier, with an optional prefix, e.g. "internal-vip" or # "example.com/internal-vip". Unprefixed names are reserved for end-users. This field can only be set when the Service type is 'LoadBalancer'. # If not set, the default load balancer implementation is used, today this is typically done through the cloud provider integration, # but should apply for any default implementation. If set, it is assumed that a load balancer implementation is watching for Services # with a matching class. Any default load balancer implementation (e.g. cloud providers) should ignore Services that set this field. # This field can only be set when creating or updating a Service to type 'LoadBalancer'. Once set, it can not be changed. # This field will be wiped when a service is updated to a non 'LoadBalancer' type. loadBalancerClass: "" # -- Supports "ClientIP" and "None". Used to maintain session affinity. Enable client IP based session affinity. # Must be ClientIP or None. Defaults to None. More info: # https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies sessionAffinity: None # -- Port of service in Kubernetes cluster port: 10051 # -- NodePort port to allocate on each node (only if service.type = NodePort or Loadbalancer) nodePort: 31051 # -- Annotations for the zabbix-server service annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- Extra environment variables. A list of additional environment variables. List can be extended with other environment variables listed here: https://github.com/zabbix/zabbix-docker/tree/7.0/Dockerfiles/server-pgsql/alpine#environment-variables. See example: https://github.com/zabbix-community/helm-zabbix/blob/main/charts/zabbix/docs/example/kind/values.yaml extraEnv: [] # - name: ENABLE_TIMESCALEDB # value: "true" # -- Annotations to add to the deployment extraDeploymentAnnotations: {} # -- Labels to add to the deployment extraDeploymentLabels: {} # -- Annotations to add to the pods extraPodAnnotations: {} # -- Labels to add to the pods extraPodLabels: {} # -- Additional volumeMounts to the Zabbix Server container extraVolumeMounts: [] # -- Additional containers to start within the Zabbix Server pod extraContainers: [] # -- Additional init containers to start within the Zabbix Server pod extraInitContainers: [] # -- Additional volumes to make available to the Zabbix Server pod extraVolumes: [] # -- Additional specifications to the Zabbix Server pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- 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/ livenessProbe: {} # -- 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/ readinessProbe: {} # -- 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/ startupProbe: {} # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # **PostgreSQL** configuration postgresql: # -- Create a database using Postgresql. Not usable in combination with ``zabbixserver.zabbixServerHA=true`` enabled: true image: # -- Postgresql Docker image name: chose one of "postgres" or "timescale/timescaledb" repository: postgres # -- Tag of Docker image of Postgresql server, choice "16" for postgres "2.17.2-pg16" for timescaledb # (Zabbix supports TimescaleDB. More info: https://www.zabbix.com/documentation/7.0/en/manual/installation/requirements) tag: 16 # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- 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) resources: {} persistence: # -- Whether to enable persistent storage for the postgres container or not enabled: false # -- Existing persistent volume claim name to be used to store postgres data existingClaimName: false # -- Size of the PVC to be automatically generated storageSize: 5Gi # -- Kubernetes uses volume access modes to match PersistentVolumeClaims and PersistentVolumes. See: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#access-modes # claim_access_mode: "ReadWriteOnce" # -- Storage PVC storageclass to use # storageClass: my-storage-class service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. If an address is specified manually, # is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- Port of service in Kubernetes cluster port: 5432 # -- Annotations for the zabbix-server service annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- Extra Postgresql runtime parameters ("-c" options) extraRuntimeParameters: max_connections: 100 # -- Extra environment variables. A list of additional environment variables. See: https://www.postgresql.org/docs/16/libpq-envars.html extraEnv: [] # -- Annotations to add to the statefulset extraStatefulSetAnnotations: {} # -- Labels to add to the statefulset extraStatefulSetLabels: {} # -- Annotations to add to the pod extraPodAnnotations: {} # -- Labels to add to the pod extraPodLabels: {} # -- Additional volumeMounts to the postgresql container extraVolumeMounts: [] # -- Additional containers to start within the postgresql pod extraContainers: [] # -- Additional init containers to start within the postgresql pod extraInitContainers: [] # -- Additional volumes to make available to the postgresql pod extraVolumes: [] # -- Additional specifications to the postgresql pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- 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/ livenessProbe: {} # -- 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/ readinessProbe: {} # -- 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/ startupProbe: {} # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # **Zabbix Proxy** configurations zabbixProxy: # -- Enables use of **Zabbix Proxy** enabled: false # -- Number of replicas of ``zabbixProxy`` module replicaCount: 1 # -- 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) resources: {} image: # -- Zabbix Proxy Docker image name repository: zabbix/zabbix-proxy-sqlite3 # -- Zabbix Proxy Docker image tag, if you want to override zabbixImageTag tag: null # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- The variable allows to switch Zabbix Proxy mode. By default, value is 0 - active proxy. Allowed values are 0 and 1. ZBX_PROXYMODE: 0 # -- Zabbix Proxy hostname. Case sensitive hostname. If not defined the pod name will be used ZBX_HOSTNAME: zabbix-proxy # This variable is unique, case sensitive hostname. # -- Zabbix Server host ZBX_SERVER_HOST: zabbix-zabbix-server # -- Zabbix Server port ZBX_SERVER_PORT: 10051 # ZBX_LOADMODULE: dummy1.so,dummy2.so # The variable is list of comma separated loadable Zabbix modules. It works with volume /var/lib/zabbix/modules. # The variable is used to specify debug level, from 0 to 5 ZBX_DEBUGLEVEL: 4 # The variable is used to specify timeout for processing checks. By default, value is 4. ZBX_TIMEOUT: 4 # -- The variable enable communication with Zabbix Java Gateway to collect Java related checks. By default, value is false. ZBX_JAVAGATEWAY_ENABLE: false # -- Cache size ZBX_VMWARECACHESIZE: 128M service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. # If an address is specified manually, is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- externalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses # (NodePorts, ExternalIPs, and LoadBalancer IPs). "Local" to preserve sender's IP address. Please note that this might not work on multi-node clusters, # depending on your network settings. # externalTrafficPolicy: Local # -- externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service. # These IPs are not managed by Kubernetes. externalIPs: [] # -- Only applies to Service Type: LoadBalancer. This feature depends on whether the underlying cloud-provider supports specifying # the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature. loadBalancerIP: "" # -- If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer # will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature. loadBalancerSourceRanges: [] # -- loadBalancerClass is the class of the load balancer implementation this Service belongs to. # If specified, the value of this field must be a label-style identifier, with an optional prefix, e.g. "internal-vip" or # "example.com/internal-vip". Unprefixed names are reserved for end-users. This field can only be set when the Service type is 'LoadBalancer'. # If not set, the default load balancer implementation is used, today this is typically done through the cloud provider integration, # but should apply for any default implementation. If set, it is assumed that a load balancer implementation is watching for Services # with a matching class. Any default load balancer implementation (e.g. cloud providers) should ignore Services that set this field. # This field can only be set when creating or updating a Service to type 'LoadBalancer'. Once set, it can not be changed. # This field will be wiped when a service is updated to a non 'LoadBalancer' type. loadBalancerClass: "" # -- Supports "ClientIP" and "None". Used to maintain session affinity. Enable client IP based session affinity. # Must be ClientIP or None. Defaults to None. More info: # https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies sessionAffinity: None # -- Port of service in Kubernetes cluster port: 10051 # -- NodePort port to allocate on each node (only if service.type = NodePort or Loadbalancer) nodePort: 31053 # -- Annotations for the zabbix-proxy service annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- Extra environment variables. A list of additional environment variables. List can be extended with other environment variables listed here: https://github.com/zabbix/zabbix-docker/tree/7.0/Dockerfiles/proxy-sqlite3/alpine#environment-variables. See example: https://github.com/zabbix-community/helm-zabbix/blob/main/charts/zabbix/docs/example/kind/values.yaml extraEnv: [] # -- Annotations to add to the statefulset extraStatefulSetAnnotations: {} # -- Labels to add to the statefulset extraStatefulSetLabels: {} # -- Annotations to add to the pod extraPodAnnotations: {} # -- Labels to add to the pod extraPodLabels: {} # -- Additional volumeMounts to the Zabbix Proxy container extraVolumeMounts: [] # -- Additional containers to start within the Zabbix Proxy pod extraContainers: [] # -- Additional init containers to start within the Zabbix Proxy pod extraInitContainers: [] # -- Additional volumes to make available to the Zabbix Proxy pod extraVolumes: [] # -- Additional specifications to the Zabbix Proxy pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- Extra volumeClaimTemplate for zabbixProxy statefulset extraVolumeClaimTemplate: [] # -- 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/ livenessProbe: {} # -- 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/ readinessProbe: {} # -- 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/ startupProbe: {} # -- Container Lifecycle Hooks. Reference: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/ lifecycle: {} # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # **Zabbix Agent** configurations zabbixAgent: # -- Enables use of **Zabbix Agent** enabled: true # -- Its is a default mode. Zabbix-agent will run as sidecar in zabbix-server and zabbix-proxy pods. Disable this mode if you want to run zabbix-agent as daemonSet runAsSidecar: true # -- Enable this mode if you want to run zabbix-agent as daemonSet. The 'zabbixAgent.runAsSidecar' option must be false. runAsDaemonSet: false # -- 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) resources: {} image: # -- Zabbix Agent Docker image name. Can use zabbix/zabbix-agent or zabbix/zabbix-agent2 repository: zabbix/zabbix-agent2 # -- Zabbix Agent Docker image tag, if you want to override zabbixImageTag tag: null # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- Zabbix Server host ZBX_SERVER_HOST: 0.0.0.0/0 # -- Zabbix Server port ZBX_SERVER_PORT: 10051 # -- This variable is boolean (true or false) and enables or disables feature of passive checks. By default, value is true ZBX_PASSIVE_ALLOW: true # -- The variable is comma separated list of allowed Zabbix Server or proxy hosts for connections to Zabbix Agent container. Example: Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com # ZBX_PASSIVESERVERS: '' # -- This variable is boolean (true or false) and enables or disables feature of active checks ZBX_ACTIVE_ALLOW: false # -- The variable is comma separated list of allowed Zabbix Server or proxy hosts for connections to Zabbix Agent container. You may specify port. # ZBX_ACTIVESERVERS: '' # -- The variable is list of comma separated loadable Zabbix modules. It works with volume /var/lib/zabbix/modules. # ZBX_LOADMODULE: dummy1.so,dummy2.so # -- The variable is used to specify debug level, from 0 to 5 ZBX_DEBUGLEVEL: 3 # -- The variable is used to specify timeout for processing checks. By default, value is 4. ZBX_TIMEOUT: 4 service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. # If an address is specified manually, is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- externalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses # (NodePorts, ExternalIPs, and LoadBalancer IPs). "Local" to preserve sender's IP address. Please note that this might not work on multi-node clusters, # depending on your network settings. # externalTrafficPolicy: Local # -- externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service. # These IPs are not managed by Kubernetes. externalIPs: [] # -- Only applies to Service Type: LoadBalancer. This feature depends on whether the underlying cloud-provider supports specifying # the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature. loadBalancerIP: "" # -- If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer # will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature. loadBalancerSourceRanges: [] # -- loadBalancerClass is the class of the load balancer implementation this Service belongs to. # If specified, the value of this field must be a label-style identifier, with an optional prefix, e.g. "internal-vip" or # "example.com/internal-vip". Unprefixed names are reserved for end-users. This field can only be set when the Service type is 'LoadBalancer'. # If not set, the default load balancer implementation is used, today this is typically done through the cloud provider integration, # but should apply for any default implementation. If set, it is assumed that a load balancer implementation is watching for Services # with a matching class. Any default load balancer implementation (e.g. cloud providers) should ignore Services that set this field. # This field can only be set when creating or updating a Service to type 'LoadBalancer'. Once set, it can not be changed. # This field will be wiped when a service is updated to a non 'LoadBalancer' type. loadBalancerClass: "" # -- Supports "ClientIP" and "None". Used to maintain session affinity. Enable client IP based session affinity. # Must be ClientIP or None. Defaults to None. More info: # https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies sessionAffinity: None # -- Port of service in Kubernetes cluster port: 10050 # -- NodePort port to allocate on each node (only if service.type = NodePort or Loadbalancer) nodePort: 31050 # -- Annotations for the zabbix-agent service annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- set whether zabbix agent / agent2 in DaemonSet mode should use hostNetwork. Usually the right option if using zabbix agent for node monitoring. Only applies if `zabbixAgent.runAsDaemonSet=true` hostNetwork: true # -- If true, agent pods mounts host / at /host/root hostRootFsMount: true # -- Extra environment variables. A list of additional environment variables. List can be extended with other environment variables listed here: https://github.com/zabbix/zabbix-docker/tree/7.0/Dockerfiles/agent2/alpine#environment-variables. See example: https://github.com/zabbix-community/helm-zabbix/blob/main/charts/zabbix/docs/example/kind/values.yaml extraEnv: [] # -- Additional volumeMounts to the zabbix Agent container extraVolumeMounts: [] # -- Annotations to add to the daemonSet extraDaemonSetAnnotations: {} # -- Labels to add to the daemonSet extraDaemonSetLabels: {} # -- Labels to add to the deployment extraDeploymentLabels: {} # -- Annotations to add to the pods extraPodAnnotations: {} # -- Labels to add to the pods extraPodLabels: {} # -- Additional containers to start within the Zabbix Agent pod extraContainers: [] # -- Additional init containers to start within the Zabbix Agent pod extraInitContainers: [] # -- Additional volumes to make available to the Zabbix Agent pod extraVolumes: [] # -- Additional specifications to the Zabbix Agent pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- 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/ livenessProbe: tcpSocket: # -- Port number/alias name of the container port: zabbix-agent timeoutSeconds: 3 failureThreshold: 3 periodSeconds: 10 successThreshold: 1 # -- 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/ readinessProbe: {} # -- 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/ startupProbe: tcpSocket: # -- Port number/alias name of the container port: zabbix-agent initialDelaySeconds: 15 periodSeconds: 5 timeoutSeconds: 3 failureThreshold: 5 successThreshold: 1 # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # **Zabbix Web** configurations zabbixWeb: # -- Enables use of **Zabbix Web** enabled: true # -- Number of replicas of ``zabbixWeb`` module replicaCount: 1 # -- set permissive podAntiAffinity to spread replicas over cluster nodes if replicaCount>1 podAntiAffinity: true # -- 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) resources: {} image: # -- Zabbix Web Docker image name repository: zabbix/zabbix-web-nginx-pgsql # -- Zabbix Web Docker image tag, if you want to override zabbixImageTag tag: null # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- Port of the Zabbix Web application. Change to 8443 in case of HTTPS. Add certs to tlsCertsSecretName. port: 8080 # -- Secret name containing certificates for SAML configuration. Example: zabbix-web-samlcerts samlCertsSecretName: "" # -- Secret name containing certificates for TLS. Example: zabbix-web-tlscerts. Must include dhparam.pem, ssl.crt and ssl.key. tlsCertsSecretName: "" service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. # If an address is specified manually, is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- externalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses # (NodePorts, ExternalIPs, and LoadBalancer IPs). "Local" to preserve sender's IP address. Please note that this might not work on multi-node clusters, # depending on your network settings. # externalTrafficPolicy: Local # -- externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service. # These IPs are not managed by Kubernetes. externalIPs: [] # -- Only applies to Service Type: LoadBalancer. This feature depends on whether the underlying cloud-provider supports specifying # the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature. loadBalancerIP: "" # -- If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer # will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature. loadBalancerSourceRanges: [] # -- loadBalancerClass is the class of the load balancer implementation this Service belongs to. # If specified, the value of this field must be a label-style identifier, with an optional prefix, e.g. "internal-vip" or # "example.com/internal-vip". Unprefixed names are reserved for end-users. This field can only be set when the Service type is 'LoadBalancer'. # If not set, the default load balancer implementation is used, today this is typically done through the cloud provider integration, # but should apply for any default implementation. If set, it is assumed that a load balancer implementation is watching for Services # with a matching class. Any default load balancer implementation (e.g. cloud providers) should ignore Services that set this field. # This field can only be set when creating or updating a Service to type 'LoadBalancer'. Once set, it can not be changed. # This field will be wiped when a service is updated to a non 'LoadBalancer' type. loadBalancerClass: "" # -- Supports "ClientIP" and "None". Used to maintain session affinity. Enable client IP based session affinity. # Must be ClientIP or None. Defaults to None. More info: # https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies sessionAffinity: None # -- Port of service in Kubernetes cluster port: 80 # -- NodePort port to allocate on each node (only if service.type = NodePort or Loadbalancer) nodePort: 31080 # -- Annotations for the Zabbix Web annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- Extra environment variables. A list of additional environment variables. List can be extended with other environment variables listed here: https://github.com/zabbix/zabbix-docker/tree/7.0/Dockerfiles/web-apache-pgsql/alpine#environment-variables. See example: https://github.com/zabbix-community/helm-zabbix/blob/main/charts/zabbix/docs/example/kind/values.yaml extraEnv: [] # - name: ZBX_SSO_SETTINGS # value: '{"baseurl": "https://zabbix.example.com"}' # - name: ZBX_SERVER_NAME # value: Demo Zabbix # -- Annotations to add to the deployment extraDeploymentAnnotations: {} # -- Labels to add to the deployment extraDeploymentLabels: {} # -- Annotations to add to the pods extraPodAnnotations: {} # -- Labels to add to the pods extraPodLabels: {} # -- Additional volumeMounts to the Zabbix Web container extraVolumeMounts: [] # -- Additional containers to start within the Zabbix Web pod extraContainers: [] # -- Additional init containers to start within the Zabbix Web pod extraInitContainers: [] # -- Additional volumes to make available to the Zabbix Web pod extraVolumes: [] # -- Additional specifications to the Zabbix Web pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} livenessProbe: httpGet: # -- Path of health check of application. Access logs are disabled for endpoint /ping. If needs Access logs, change for endpoint / path: /ping # -- Port number/alias name of the container port: zabbix-web # -- Scheme of health check of application # If scheme field is set to HTTPS, the kubelet sends an HTTPS request skipping the certificate verification. # Reference: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#http-probes scheme: HTTP initialDelaySeconds: 30 periodSeconds: 10 timeoutSeconds: 5 failureThreshold: 6 successThreshold: 1 readinessProbe: httpGet: # -- Path of health check of application. Access logs are disabled for endpoint /ping. If needs Access logs, change for endpoint / path: /ping # -- Port number/alias name of the container port: zabbix-web # -- Scheme of health check of application # If scheme field is set to HTTPS, the kubelet sends an HTTPS request skipping the certificate verification. # Reference: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#http-probes scheme: HTTP initialDelaySeconds: 5 periodSeconds: 10 timeoutSeconds: 5 failureThreshold: 6 successThreshold: 1 # -- 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/ startupProbe: {} # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # **Zabbix Web Service** configurations zabbixWebService: # -- Enables use of **Zabbix Web Service** enabled: true # -- Number of replicas of ``zabbixWebService`` module replicaCount: 1 # -- Set permissive podAntiAffinity to spread replicas over cluster nodes if replicaCount>1 podAntiAffinity: true # -- 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) resources: {} image: # -- Zabbix Webservice Docker image name repository: zabbix/zabbix-web-service # -- Zabbix Webservice Docker image tag, if you want to override zabbixImageTag tag: null # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- Set the IgnoreURLCertErrors configuration setting of Zabbix Web Service # ignoreURLCertErrors=1 service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. If an address is specified manually, # is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- Port of service in Kubernetes cluster port: 10053 # -- Annotations for the Zabbix Web Service annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- Extra environment variables. A list of additional environment variables. List can be extended with other environment variables listed here: https://github.com/zabbix/zabbix-docker/tree/7.0/Dockerfiles/web-service/alpine#environment-variables. See example: https://github.com/zabbix-community/helm-zabbix/blob/main/charts/zabbix/docs/example/kind/values.yaml extraEnv: [] # -- Annotations to add to the deployment extraDeploymentAnnotations: {} # -- Labels to add to the deployment extraDeploymentLabels: {} # -- Annotations to add to the pods extraPodAnnotations: {} # -- Labels to add to the pods extraPodLabels: {} # -- Additional volumeMounts to the Zabbix Web Service container extraVolumeMounts: [] # -- Additional containers to start within the Zabbix Web Service pod extraContainers: [] # -- Additional init containers to start within the Zabbix Web Service pod extraInitContainers: [] # -- Additional volumes to make available to the Zabbix Web Service pod extraVolumes: [] # -- Additional specifications to the Zabbix Web Service pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- 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/ livenessProbe: {} # -- 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/ readinessProbe: {} # -- 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/ startupProbe: {} # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # **Zabbix Java Gateway** configurations zabbixJavaGateway: # -- Enables use of **Zabbix Java Gateway** enabled: false # -- Number of replicas of ``Zabbix Java Gateway`` module replicaCount: 1 # -- Set permissive podAntiAffinity to spread replicas over cluster nodes if replicaCount>1 podAntiAffinity: true # -- 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) resources: {} image: # -- Zabbix Java Gateway Docker image name. repository: zabbix/zabbix-java-gateway # -- Zabbix Java Gateway Docker image tag, if you want to override zabbixImageTag tag: null # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- This variable is specified amount of pollers. By default, value is 5 ZBX_START_POLLERS: 5 # -- Name of properties file. Can be used to set additional properties using a key-value format in such a way that they are not visible on a command line or to overwrite existing ones. ZBX_PROPERTIES_FILE: "" # -- The variable is used to specify debug level, from 0 to 5 ZBX_DEBUGLEVEL: 3 # -- This variable is used to specify timeout for outgoing connections. By default, value is 3. ZBX_TIMEOUT: 3 # -- Additional arguments for Zabbix Java Gateway. Useful to enable additional libraries and features. ZABBIX_OPTIONS: "" # Java Gateway Service Name ZBX_JAVAGATEWAY: zabbix-java-gateway service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. # If an address is specified manually, is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- externalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses # (NodePorts, ExternalIPs, and LoadBalancer IPs). "Local" to preserve sender's IP address. Please note that this might not work on multi-node clusters, # depending on your network settings. # externalTrafficPolicy: Local # -- externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service. # These IPs are not managed by Kubernetes. externalIPs: [] # -- Only applies to Service Type: LoadBalancer. This feature depends on whether the underlying cloud-provider supports specifying # the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature. loadBalancerIP: "" # -- If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer # will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature. loadBalancerSourceRanges: [] # -- loadBalancerClass is the class of the load balancer implementation this Service belongs to. # If specified, the value of this field must be a label-style identifier, with an optional prefix, e.g. "internal-vip" or # "example.com/internal-vip". Unprefixed names are reserved for end-users. This field can only be set when the Service type is 'LoadBalancer'. # If not set, the default load balancer implementation is used, today this is typically done through the cloud provider integration, # but should apply for any default implementation. If set, it is assumed that a load balancer implementation is watching for Services # with a matching class. Any default load balancer implementation (e.g. cloud providers) should ignore Services that set this field. # This field can only be set when creating or updating a Service to type 'LoadBalancer'. Once set, it can not be changed. # This field will be wiped when a service is updated to a non 'LoadBalancer' type. loadBalancerClass: "" # -- Supports "ClientIP" and "None". Used to maintain session affinity. Enable client IP based session affinity. # Must be ClientIP or None. Defaults to None. More info: # https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies sessionAffinity: None # -- Port of service in Kubernetes cluster port: 10052 # -- NodePort port to allocate on each node (only if service.type = NodePort or Loadbalancer) nodePort: 31052 # -- Annotations for the zabbix-java-gateway service annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- Extra environment variables. A list of additional environment variables. List can be extended with other environment variables listed here: https://github.com/zabbix/zabbix-docker/tree/7.0/Dockerfiles/java-gateway/alpine#environment-variables. See example: https://github.com/zabbix-community/helm-zabbix/blob/main/charts/zabbix/docs/example/kind/values.yaml extraEnv: [] # -- Additional volumeMounts to the Zabbix Java Gateway container extraVolumeMounts: [] # -- Annotations to add to the deployment extraDeploymentAnnotations: {} # -- Labels to add to the deployment extraDeploymentLabels: {} # -- Annotations to add to the pod extraPodAnnotations: {} # -- Labels to add to the pod extraPodLabels: {} # -- Additional containers to start within the Zabbix Java Gateway pod extraContainers: [] # -- Additional init containers to start within the Zabbix Java Gateway pod extraInitContainers: [] # -- Additional volumes to make available to the Zabbix Java Gateway pod extraVolumes: [] # -- Additional specifications to the Zabbix Java Gateway pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} # -- 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/ livenessProbe: tcpSocket: # -- Port number/alias name of the container port: zabbix-java-gw timeoutSeconds: 3 failureThreshold: 3 periodSeconds: 10 successThreshold: 1 # -- 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/ readinessProbe: {} # -- 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/ startupProbe: tcpSocket: # -- Port number/alias name of the container port: zabbix-java-gw initialDelaySeconds: 15 periodSeconds: 5 timeoutSeconds: 3 failureThreshold: 5 successThreshold: 1 # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # Zabbix Browser Monitoring, supported since 7.0. # See https://assets.zabbix.com/files/events/2024/conference_benelux_2024/KasparsM_browser_monitoring.pdf # and https://www.zabbix.com/documentation/current/en/manual/config/items/itemtypes/browser zabbixBrowserMonitoring: # -- Enable browser pollers enabled: false # -- Number of browser pollers to start pollers: 1 webdriver: # -- Enable webdriver enabled: true # -- WebDriver container name name: chrome # -- Number of replicas of ``zabbixWebDriver`` module replicaCount: 1 # -- set permissive podAntiAffinity to spread replicas over cluster nodes if replicaCount>1 podAntiAffinity: true # -- 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) resources: {} image: # -- WebDriver container image repository: selenium/standalone-chrome # -- WebDriver container image tag, See https://hub.docker.com/r/selenium/standalone-chrome/tags tag: 124.0-chromedriver-124.0-grid-4.33.0-20250606 # -- Pull policy of Docker image pullPolicy: IfNotPresent # -- List of dockerconfig secrets names to use when pulling images pullSecrets: [] # -- WebDriver container port 1 port1: 4444 # -- WebDriver container port 2 port2: 7900 # -- Custom WebDriver URL. If set, it overrides the default internal WebDriver service URL. Set zabbixBrowserMonitoring.webdriver.enabled to false when setting this. customWebDriverURL: "" service: # -- 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/ type: ClusterIP # -- clusterIP is the IP address of the service and is usually assigned randomly. # If an address is specified manually, is in-range (as per system configuration), and is not in use, it will be allocated to the service. clusterIP: # -- externalTrafficPolicy describes how nodes distribute service traffic they receive on one of the Service's "externally-facing" addresses # (NodePorts, ExternalIPs, and LoadBalancer IPs). "Local" to preserve sender's IP address. Please note that this might not work on multi-node clusters, # depending on your network settings. # externalTrafficPolicy: Local # -- externalIPs is a list of IP addresses for which nodes in the cluster will also accept traffic for this service. # These IPs are not managed by Kubernetes. externalIPs: [] # -- Only applies to Service Type: LoadBalancer. This feature depends on whether the underlying cloud-provider supports specifying # the loadBalancerIP when a load balancer is created. This field will be ignored if the cloud-provider does not support the feature. loadBalancerIP: "" # -- If specified and supported by the platform, this will restrict traffic through the cloud-provider load-balancer # will be restricted to the specified client IPs. This field will be ignored if the cloud-provider does not support the feature. loadBalancerSourceRanges: [] # -- loadBalancerClass is the class of the load balancer implementation this Service belongs to. # If specified, the value of this field must be a label-style identifier, with an optional prefix, e.g. "internal-vip" or # "example.com/internal-vip". Unprefixed names are reserved for end-users. This field can only be set when the Service type is 'LoadBalancer'. # If not set, the default load balancer implementation is used, today this is typically done through the cloud provider integration, # but should apply for any default implementation. If set, it is assumed that a load balancer implementation is watching for Services # with a matching class. Any default load balancer implementation (e.g. cloud providers) should ignore Services that set this field. # This field can only be set when creating or updating a Service to type 'LoadBalancer'. Once set, it can not be changed. # This field will be wiped when a service is updated to a non 'LoadBalancer' type. loadBalancerClass: "" # -- Supports "ClientIP" and "None". Used to maintain session affinity. Enable client IP based session affinity. # Must be ClientIP or None. Defaults to None. More info: # https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies sessionAffinity: None # -- Port 1 of service in Kubernetes cluster port1: 4444 # -- Port 2 of service in Kubernetes cluster port2: 7900 # -- NodePort port 1 to allocate on each node (only if service.type = NodePort or Loadbalancer) nodePort1: 31444 # -- NodePort port 2 to allocate on each node (only if service.type = NodePort or Loadbalancer) nodePort2: 31900 # -- Annotations for the Zabbix WebDriver annotations: {} # metallb.universe.tf/address-pool: production-public-ips # -- Extra environment variables. A list of additional environment variables. List can be extended with other environment variables listed here: https://www.selenium.dev/documentation/grid/configuration extraEnv: [] # - name: VAR_1 # value: 'example_value' # -- Annotations to add to the deployment extraDeploymentAnnotations: {} # -- Labels to add to the deployment extraDeploymentLabels: {} # -- Annotations to add to the pods extraPodAnnotations: {} # -- Labels to add to the pods extraPodLabels: {} # -- Additional volumeMounts to the Zabbix WebDriver container extraVolumeMounts: [] # -- Additional containers to start within the Zabbix WebDriver pod extraContainers: [] # -- Additional init containers to start within the Zabbix WebDriver pod extraInitContainers: [] # -- Additional volumes to make available to the Zabbix WebDriver pod extraVolumes: [] # -- Additional specifications to the Zabbix WebDriver pod extraPodSpecs: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} livenessProbe: {} readinessProbe: {} # -- 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/ startupProbe: {} # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {} # Ingress configurations ingress: # -- Enables Ingress enabled: false # -- Ingress annotations annotations: {} # kubernetes.io/ingress.class: nginx # kubernetes.io/tls-acme: "true" # -- Ingress hosts hosts: - host: chart-example.local paths: - path: / pathType: ImplementationSpecific # -- Ingress TLS configuration tls: [] # - secretName: chart-example-tls # hosts: # - chart-example.local # For Kubernetes >= 1.18 you should specify the ingress-controller via the field ingressClassName # See https://kubernetes.io/blog/2020/04/02/improvements-to-the-ingress-api-in-kubernetes-1.18/#specifying-the-class-of-an-ingress # ingressClassName: nginx # -- pathType is only for k8s >= 1.1= pathType: Prefix # -- Tolerations configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/ tolerations: [] # -- Affinity configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ affinity: {} # -- Security Context configurations. Reference: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/ securityContext: {} serviceAccount: # -- Specifies whether a service account should be created. create: true # -- The name of the service account to use. If not set and create is true, a name is generated using the fullname template. name: "" # -- Optional additional annotations to add to the Service Account. annotations: {} # -- Optional additional labels to add to the Service Account. labels: {} # -- Automount API credentials for a Service Account. automountServiceAccountToken: true rbac: # -- Specifies whether the RBAC resources should be created create: true additionalRulesForClusterRole: [] # - apiGroups: [ "" ] # resources: # - nodes/proxy # verbs: [ "get", "list", "watch" ] # -- Extra arbitrary Kubernetes manifests to deploy within the release extraManifests: [] helmTestJobs: webConnection: image: # -- Image repository for Helm test job testing connection to web frontend repository: busybox # -- Image tag for Helm test job testing connection to web frontend tag: latest # -- Pull Policy for Helm test job testing connection to web frontend pullPolicy: IfNotPresent # -- Pull Secrets for Helm test job testing connection to web frontend pullSecrets: [] # -- Security Context for Helm test job testing connection to web frontend securityContext: {} # -- Resource limits/reservations for Helm test job testing connection to web frontend resources: {} serverConnection: image: # -- Image repository for Helm test job testing connection to Zabbix server repository: busybox # -- Image tag for Helm test job testing connection to Zabbix server tag: latest # -- Pull Policy for Helm test job testing connection to Zabbix server pullPolicy: IfNotPresent # -- Pull Secrets for Helm test job testing connection to Zabbix server pullSecrets: [] # -- Security Context for Helm test job testing connection to Zabbix server securityContext: {} # -- Resource limits/reservations for Helm test job testing connection to Zabbix server resources: {} # -- nodeSelector configurations. Reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ nodeSelector: {}