zabbix-community / helm-zabbix

Helm chart for Zabbix
https://artifacthub.io/packages/helm/zabbix-community/zabbix
Apache License 2.0
77 stars 45 forks source link

Fix bugs and many improvements #82

Closed aeciopires closed 3 months ago

aeciopires commented 3 months ago

Special notes for your reviewer:

This PR contains a small change in values ​​related to the zabbixWeb component:

zabbixWeb.livenessProbe.path -> zabbixWeb.livenessProbe.httpGet.path
zabbixWeb.readinessProbe.path -> zabbixWeb.readinessProbe.httpGet.path

What this PR does / why we need it:

zabbixServer:
  jobDBSchema:
    # -- Annotations to add to the jobs
    jobAnnotations: {}
    # -- Labels to add to the jobs
    jobLabels: {}

zabbixAgent:
  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

zabbixWeb:
  livenessProbe:
    httpGet:
      # -- Path of health check of application
      path: /
      # -- Port number/alias name of the container
      port: zabbix-web
  readinessProbe:
    httpGet:
      # -- Path of health check of application
      path: /
      # -- Port number/alias name of the container
      port: zabbix-web
  # -- 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: {} 

# **Zabbix Java Gateway** configurations
zabbixJavaGateway:
  # -- Enables use of **Zabbix Java Gateway**
  enabled: false
  # -- Number of replicas of ``Zabbix Java Gateway`` 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 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
  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
  # Java Gateway Service Port
  service:
    # -- Type of service for Zabbix Java Gateway
    type: ClusterIP
    # -- Cluster IP for Zabbix Java Gateway
    clusterIP:
    # -- Port to expose service
    port: 10052
    # -- ExternalTrafficPolicy for Zabbix Java Gateway service. "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
    listenOnAllInterfaces: true
    # -- NodePort port to allocate (only if service.type = NodePort)
    #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/6.0/Dockerfiles/agent2/alpine#environment-variables. See example: https://github.com/zabbix-community/helm-zabbix/blob/master/charts/zabbix/docs/example/kind/values.yaml
  extraEnv: []
  # -- Additional volumeMounts to the Zabbix Java Gateway container
  extraVolumeMounts: []
  # -- Annotations to add to the deployment
  deploymentAnnotations: {}
  # -- Labels to add to the deployment
  deploymentLabels: {}
  # -- Annotations to add to the containers
  containerAnnotations: {}
  # -- Labels to add to the containers
  containerLabels: {}
  # -- 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

rbac:
  # --  Specifies whether the RBAC resources should be created
  create: true
  additionalRulesForClusterRole: []
  #  - apiGroups: [ "" ]
  #    resources:
  #      - nodes/proxy
  #    verbs: [ "get", "list", "watch" ]

Which issue this PR fixes

Checklist

[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]