# Default values for Graylog. # This is a YAML-formatted file. # Declare variables to be passed into your templates. rbac: # Specifies whether RBAC resources should be created ## create: true serviceAccount: # Specifies whether a ServiceAccount should be created ## create: true # The name of the ServiceAccount to use. # If not set and create is true, a name is generated using the fullname template ## name: tags: # If true, this chart will install Elasticsearch from requirement dependencies install-elasticsearch: true # If true, this chart will install MongoDB replicaset from requirement dependencies install-mongodb: true graylog: ## Graylog image version ## Ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images ## ## Important note: Official Graylog Docker image may replace the existing Docker image tags and cause some corrupt when starting the pod. ## Make sure you strict with the `x` version of Graylog where `x` is ${version}-${x} ## image: repository: "graylog/graylog:2.5.1-3" pullPolicy: "IfNotPresent" replicas: 2 ## environment variables to be added to Graylog pods ## env: {} ## Pod affinity ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity ## affinity: {} ## Node tolerations for node-exporter scheduling to nodes with taints ## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ ## tolerations: [] # - key: "key" # operator: "Equal|Exists" # value: "value" # effect: "NoSchedule|PreferNoSchedule|NoExecute(1.6 only)" ## Node labels for node-exporter pod assignment ## Ref: https://kubernetes.io/docs/user-guide/node-selection/ ## nodeSelector: {} ## Annotations to be added to Graylog pods ## podAnnotations: {} persistence: ## If true, Graylog will create/use a Persistent Volume Claim ## If false, use emptyDir ## enabled: true ## Graylog data Persistent Volume access modes ## Must match those of existing PV or dynamic provisioner ## Ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## accessMode: ReadWriteOnce ## Graylog data Persistent Volume size ## size: "20Gi" ## Graylog data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## # storageClass: "ssd" ## Additional plugins you need to install on Graylog. plugins: [] # - name: graylog-plugin-slack-2.7.1.jar # url: https://github.com/omise/graylog-plugin-slack/releases/download/2.7.1/graylog-plugin-slack-2.7.1.jar # - name: graylog-plugin-function-check-diff-1.0.0.jar # url: https://github.com/omise/graylog-plugin-function-check-diff/releases/download/1.0.0/graylog-plugin-function-check-diff-1.0.0.jar # - name: graylog-plugin-custom-alert-condition-1.0.0.jar # url: https://github.com/omise/graylog-plugin-custom-alert-condition/releases/download/v1.0.0/graylog-plugin-custom-alert-condition-1.0.0.jar ## A service for Graylog web interface service: type: ClusterIP port: 9000 master: {} ## Additional input ports for receiving logs from servers ## Note: Name must be in IANA_SVC_NAME (at most 15 characters, matching regex [a-z0-9]([a-z0-9-]*[a-z0-9])* and it must contains at least one letter [a-z], hyphens cannot be adjacent to other hyphens) ## Note: Array must be sorted by port order ## input: {} # tcp: # service: # type: LoadBalancer # loadBalancerIP: # ports: # - name: gelf # port: 12222 # udp: # service: # type: ClusterIP # ports: # - name: syslog # port: 12222 ingress: ## If true, Graylog server Ingress will be created ## enabled: false port: 80 ## Graylog server Ingress annotations ## annotations: {} ## Graylog server Ingress hostnames with optional path ## Must be provided if Ingress is enabled ## Note: Graylog does not support two URL. You can specify only single URL ## hosts: [] # - graylog.yourdomain.com ## Graylog server Ingress TLS configuration ## Secrets must be manually created in the namespace ## tls: [] # - secretName: graylog-server-tls # hosts: # - graylog.yourdomain.com ## Configure resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## resources: limits: cpu: "1" requests: cpu: "500m" memory: "1024Mi" ## Set Graylog Java heapsize. If this value empty, chart will allocate heapsize using `-XX:+UseCGroupMemoryLimitForHeap` ## ref: https://blogs.oracle.com/java-platform-group/java-se-support-for-docker-cpu-and-memory-limits ## # heapSize: "1024g" ## RollingUpdate update strategy ## ref: https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#updating-statefulsets updateStrategy: OnDelete ## Graylog server pod termination grace period ## terminationGracePeriodSeconds: 120 metrics: ## If true, prometheus annotations will not be attached ## enabled: false geoip: ## If true, Maxmind GeoLite2 will be installed to ${GRAYLOG_HOME}/geoip location ## enabled: false ## Graylog root user name ## rootUsername: "admin" ## Graylog root password ## Defaults to a random 16-character alphanumeric string if not set ## # rootPassword: "" ## Graylog root email ## rootEmail: "" ## Graylog root timezone ## rootTimezone: "UTC" elasticsearch: ## List of Elasticsearch hosts Graylog should connect to. ## Need to be specified as a comma-separated list of valid URIs for the http ports of your elasticsearch nodes. ## If one or more of your elasticsearch hosts require authentication, include the credentials in each node URI that ## requires authentication. ## # hosts: http://elasticsearch-client.graylog.svc.cluster.local:9200 ## These configuration settings are only used on the first start of Graylog. After that, ## index related settings can be changed in the Graylog web interface on the 'System / Indices' page. ## Also see http://docs.graylog.org/en/2.3/pages/configuration/index_model.html#index-set-configuration. rotationStrategy: time maxNumberOfIndices: 24 retentionStrategy: delete shards: 5 replicas: 1 indexPrefix: graylog mongodb: ## MongoDB connection string ## See https://docs.mongodb.com/manual/reference/connection-string/ for details # uri: mongodb://user:pass@host1:27017,host2:27017,host3:27017/graylog?replicaSet=rs01 ## Increase this value according to the maximum connections your MongoDB server can handle from a single client ## if you encounter MongoDB connection problems. maxConnections: 1000 transportEmail: ## If true, enable Email transport. enabled: false hostname: "" port: 2587 useAuth: true useTls: true useSsl: true authUsername: "" authPassword: "" subjectPrefix: "[graylog]" fromEmail: "" ## Additional server files will be deployed to /etc/graylog/server ## For example, you can put server certificates or authorized clients certificates here ## serverFiles: {} # graylog-server.key: | # graylog-server.cert: | ## Specify Elasticsearch version from requirement dependencies. Ignore this seection if you install Elasticsearch manually. ## Note: Graylog 2.4 requires Elasticsearch version <= 5.6 elasticsearch: image: repository: "docker.elastic.co/elasticsearch/elasticsearch-oss" tag: "6.5.4" cluster: xpackEnable: false