helm-charts/doris/values.yaml (85 lines of code) (raw):

# Licensed to the Apache Software Foundation (ASF) under one # or more contributor license agreements. See the NOTICE file # distributed with this work for additional information # regarding copyright ownership. The ASF licenses this file # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. # deploy a doris cluster dorisCluster: # the name of doriscluster, if not set, the chart name will be used. name: "doriscluster-helm" # annotations for doris cluster. annotations: {} # specify the cn deploy or not. enabledCn: false # specify the broker deploy or not. enabledBroker: false # specify the doriscluster adminuser or not. # set adminUser will record the password in clear text. This method has been abandoned and is not recommended. # When adding adminuser. should follow the steps: # 1. Start dorisclusert without adminUser # 2. Run 'CREATE USER ...' or 'SET PASSWORD ...' in mysql client # 3. Add the name and password added in the previous step to adminUser and execute helm adminUser: {} # name: root # password: "12345" # use authSecret can encrypt and save passwords, recommend this method # 1. run shell: echo -n '{your_password}' | base64 to get password base64 string # 2. run shell: echo -n '{your_user}' | base64 to get user base64 string # 3. Fill the encrypted string into the corresponding position # as follow, username is 'root' , password is 't0p-Secret' authSecret: {} # username: cm9vdA== # password: dDBwLVNlY3JldA== feSpec: # annotations for fe pods and service annotations: {} replicas: 3 # electionNumber represents `FOLLOWER` number, replicas - electionNumber as `OBSERVER` # electionNumber: 3 # the pod labels for user select or classify pods. labels: {} # selectdb.app.classify: "classify-1" image: repository: apache/doris tag: fe-2.1.7 # imagePullSecrets: # - name: imagePullSecret # config the service port for fe service. # if you want to use a dedicated port for fe service, you can config the port. # see https://kubernetes.io/docs/concepts/services-networking/service/#field-spec-ports for more details. service: # the fe service type, only supported ClusterIP, NodePort, LoadBalancer type: ClusterIP # type: NodePort # servicePorts: # - nodePort: 30001 # targetPort: 9030 # - nodePort: 30002 # targetPort: 8030 # the loadBalancerIP for static ip config when the type=LoadBalancer and loadbalancerIp is not empty. # type: "LoadBalancer" # loadbalancerIP: "127.0.0.1" # use LoadBalancer on cloud platform, try to configure it using annotations: annotations: {} # service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: "intranet" # specify the configMap, as a dictionary. # Its 'key' is the config file name in the doris 'doris_root_path/fe/conf/' file path, # Its 'value' is the text content of the corresponding file (it should be relatively long, actually). configMap: {} # 'fe.conf' is the startup config file of fe, and the name must be 'fe.conf'. # fe.conf: | # http_port = 8030 # rpc_port = 9020 # query_port = 9030 # edit_log_port = 9010 # Other config files can also be specified here # hdfs-site.xml: | # <?xml version="1.0" encoding="UTF-8"?> # # <configuration> # <property> # <name>dfs.nameservices</name> # <value>ns</value> # </property> # # mountConfigMaps supports configmap mounting in the form of specifying the mounting directory # but please note that the mounting path cannot be repeated. # if the elements within mountConfigMaps contain data, it means that the configmap does not need to be created manually by the user, and vice versa. # in the following example, the user needs to manually create configmap 'cm-1' # mountConfigMaps: {} # - configMapName: cm-1 # mountPath: /etc/cm1 # - configMapName: cm-2 # mountPath: /etc/cm2 # data: # copy_file1: | # text *** content # copy_file2: | # text *** content # If configured separately here, it will overwrite the total resources configuration default. # but the default configuration of other types will still take effect. resource: {} # requests: # cpu: 8 # memory: 16Gi # limits: # cpu: 16 # memory: 32Gi # If specified, the pod's nodeSelector,displayName="Map of nodeSelectors to match when scheduling pods on nodes" nodeSelector: {} # kubernetes.io/arch: amd64 # kubernetes.io/os: linux # app.kubernetes.node.name: "k8s-node1" # env represents an environment variable present in a Container. # 'name' of the environment variable. Must be a C_IDENTIFIER. # no more than one of the following may be specified: 'value' or 'valueFrom', # 'value' is the value of environment. # 'valueFrom' is source for the environment variable's value. Cannot be used if 'value' is not empty. env: [] # - name: "HOME" # value: "/opt/selectdb" # - name: HOST_IP # valueFrom: # fieldRef: # apiVersion: v1 # fieldPath: status.hostIP # affinity is the constraints of pod scheduling # nodeAffinity: Describes node affinity scheduling rules for the pod. # podAffinity: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). # PodAntiAffinity: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). # reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ affinity: {} # nodeAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "k8s-node1" # "k8s-node2" # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "fe1" # "fe2" # podAntiAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "NotIn" # values: # - "fe1" # "fe2" # the pod this Toleration is attached to tolerates any taint that matches. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ # the triple <key,value,effect> using the matching operator <operator>. # 'key' is the taint key that the toleration applies to. Empty means match all taint keys. if the 'key' is empty, 'operator' must be Exists; this combination means to match all values and all keys. # 'operator' represents a key's relationship to the 'value'. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. # 'value' is the taint value the toleration matches to. If the 'operator' is Exists, the 'value' should be empty, otherwise just a regular string. # 'effect' indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. tolerations: [] # - key: "toleration" # operator: "Equal" # value: "master" # - key: "node-role.kubernetes.io/master" # operator: "Exists" # effect: "NoSchedule" # - operator: "Exists" # hostAliases allows adding entries to /etc/hosts inside the containers hostAliases: [] # If doris use hdfs or catalog, config the map of namenode host here is beneficial # - ip: "127.0.0.1" # hostnames: # - "hostname1" # - ip: "127.0.0.2" # hostnames: # - "hostname2" persistentVolumeClaim: {} # meta volume, mountPath is /opt/apache-doris/fe/doris-meta # metaPersistentVolume: # storage: 200Gi # when use specific storageclass, the storageClassName should reConfig, example as annotation. # storageClassName: "" # logs volume, mountPath is /opt/apache-doris/fe/log # logsPersistentVolume: # storage: 100Gi # when use specific storageclass, the storageClassName should reConfig, example as annotation. # storageClassName: "" systemInitialization: {} # initImage: "selectdb/alpine:latest" # command: [ "/sbin/sysctl", "-w", "vm.max_map_count=2000000" ] beSpec: # annotations for be pods and service annotations: {} replicas: 3 # the pod labels for user select or classify pods. labels: {} # selectdb.app.classify: "classify-1" image: repository: apache/doris tag: be-2.1.7 # imagePullSecrets: # - name: imagePullSecret # config the service port for be service. # if you want to use a dedicated port for be service, you can config the port. # see https://kubernetes.io/docs/concepts/services-networking/service/#field-spec-ports for more details. service: # the be service type, only supported ClusterIP, NodePort, LoadBalancer type: ClusterIP # type: NodePort # servicePorts: # - nodePort: 30003 # targetPort: 9040 # - nodePort: 30004 # targetPort: 8040 # the loadBalancerIP for static ip config when the type=LoadBalancer and loadbalancerIp is not empty. # type: "LoadBalancer" # loadbalancerIP: "127.0.0.1" # use LoadBalancer on cloud platform, try to configure it using annotations annotations: {} # service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: "intranet" # specify the configMap, as a dictionary. # Its 'key' is the config file name in the doris 'doris_root_path/fe/conf/' file path, # Its 'value' is the text content of the corresponding file (it should be relatively long, actually). configMap: {} # 'be.conf' is the startup config file of be, and the name must be 'be.conf'. # be.conf: | # be_port = 9060 # webserver_port = 8040 # heartbeat_service_port = 9050 # brpc_port = 8060 # storage_root_path = /data/doris/be/storage # Other config files can also be specified here # hdfs-site.xml: | # <?xml version="1.0" encoding="UTF-8"?> # # <configuration> # <property> # <name>dfs.nameservices</name> # <value>ns</value> # </property> # # mountConfigMaps supports configmap mounting in the form of specifying the mounting directory # but please note that the mounting path cannot be repeated. # if the elements within mountConfigMaps contain data, it means that the configmap does not need to be created manually by the user, and vice versa. # in the following example, the user needs to manually create configmap 'cm-1' # mountConfigMaps: {} # - configMapName: cm-1 # mountPath: /etc/cm1 # - configMapName: cm-2 # mountPath: /etc/cm2 # data: # copy_file1: | # text *** content # copy_file2: | # text *** content # If configured separately here, it will overwrite the total resources configuration default. # but the default configuration of other types will still take effect. resource: {} # requests: # cpu: 8 # memory: 16Gi # limits: # cpu: 16 # memory: 32Gi # If specified, the pod's nodeSelector,displayName="Map of nodeSelectors to match when scheduling pods on nodes" nodeSelector: {} # kubernetes.io/arch: amd64 # kubernetes.io/os: linux # app.kubernetes.node.name: "k8s-node1" # env represents an environment variable present in a Container. # 'name' of the environment variable. Must be a C_IDENTIFIER. # no more than one of the following may be specified: 'value' or 'valueFrom', # 'value' is the value of environment. # 'valueFrom' is source for the environment variable's value. Cannot be used if 'value' is not empty. env: [] # - name: "HOME" # value: "/opt/selectdb" # - name: HOST_IP # valueFrom: # fieldRef: # apiVersion: v1 # fieldPath: status.hostIP # affinity is the constraints of pod scheduling # nodeAffinity: Describes node affinity scheduling rules for the pod. # podAffinity: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). # PodAntiAffinity: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). # reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ affinity: {} # nodeAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "k8s-node1" # "k8s-node2" # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "fe1" # "fe2" # podAntiAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "NotIn" # values: # - "fe1" # "fe2" # the pod this Toleration is attached to tolerates any taint that matches. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ # the triple <key,value,effect> using the matching operator <operator>. # 'key' is the taint key that the toleration applies to. Empty means match all taint keys. if the 'key' is empty, 'operator' must be Exists; this combination means to match all values and all keys. # 'operator' represents a key's relationship to the 'value'. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. # 'value' is the taint value the toleration matches to. If the 'operator' is Exists, the 'value' should be empty, otherwise just a regular string. # 'effect' indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. tolerations: [] # - key: "toleration" # operator: "Equal" # value: "master" # - key: "node-role.kubernetes.io/master" # operator: "Exists" # effect: "NoSchedule" # - operator: "Exists" # hostAliases allows adding entries to /etc/hosts inside the containers hostAliases: [] # If doris use hdfs or catalog, config the map of namenode host here is beneficial # - ip: "127.0.0.1" # hostnames: # - "hostname1" # - ip: "127.0.0.2" # hostnames: # - "hostname2" persistentVolumeClaim: {} # data volume, mountPath is /opt/apache-doris/be/storage # dataPersistentVolume: # storage: 200Gi # when use specific storageclass, the storageClassName should reConfig, example as annotation. # storageClassName: "" # logs volume, mountPath is /opt/apache-doris/be/log # logsPersistentVolume: # storage: 100Gi # when use specific storageclass, the storageClassName should reConfig, example as annotation. # storageClassName: "" systemInitialization: {} # initImage: "selectdb/alpine:latest" # command: [ "/sbin/sysctl", "-w", "vm.max_map_count=2000000" ] cnSpec: # annotations for cn pods and service annotations: {} replicas: 3 # the pod labels for user select or classify pods. labels: {} # selectdb.app.classify: "classify-1" image: repository: apache/doris tag: be-2.1.7 # imagePullSecrets: # - name: imagePullSecret # config the service port for cn service. # if you want to use a dedicated port for cn service, you can config the port. # see https://kubernetes.io/docs/concepts/services-networking/service/#field-spec-ports for more details. service: # the cn service type, only supported ClusterIP, NodePort, LoadBalancer type: ClusterIP # type: NodePort # servicePorts: # - nodePort: 30005 # targetPort: 9040 # - nodePort: 30006 # targetPort: 8040 # type: "LoadBalancer" # the loadBalancerIP for static ip config when the type=LoadBalancer and loadbalancerIp is not empty. # loadbalancerIP: "127.0.0.1" # use LoadBalancer on cloud platform, try to configure it using annotations annotations: {} # service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: "intranet" # specify the configMap, as a dictionary. # Its 'key' is the config file name in the doris 'doris_root_path/fe/conf/' file path, # Its 'value' is the text content of the corresponding file (it should be relatively long, actually). configMap: {} # 'be.conf' is the startup config file of cn, and the name must be 'be.conf'. # be.conf: | # be_port = 9060 # webserver_port = 8040 # heartbeat_service_port = 9050 # brpc_port = 8060 # storage_root_path = /data/doris/be/storage # be_node_role=computation # Other config files can also be specified here # hdfs-site.xml: | # <?xml version="1.0" encoding="UTF-8"?> # # <configuration> # <property> # <name>dfs.nameservices</name> # <value>ns</value> # </property> # # mountConfigMaps supports configmap mounting in the form of specifying the mounting directory # but please note that the mounting path cannot be repeated. # if the elements within mountConfigMaps contain data, it means that the configmap does not need to be created manually by the user, and vice versa. # in the following example, the user needs to manually create configmap 'cm-1' # mountConfigMaps: {} # - configMapName: cm-1 # mountPath: /etc/cm1 # - configMapName: cm-2 # mountPath: /etc/cm2 # data: # copy_file1: | # text *** content # copy_file2: | # text *** content # If configured separately here, it will overwrite the total resources configuration default. # but the default configuration of other types will still take effect. resource: {} # requests: # cpu: 8 # memory: 16Gi # limits: # cpu: 16 # memory: 32Gi # If specified, the pod's nodeSelector,displayName="Map of nodeSelectors to match when scheduling pods on nodes" nodeSelector: {} # kubernetes.io/arch: amd64 # kubernetes.io/os: linux # app.kubernetes.node.name: "k8s-node1" # env represents an environment variable present in a Container. # 'name' of the environment variable. Must be a C_IDENTIFIER. # no more than one of the following may be specified: 'value' or 'valueFrom', # 'value' is the value of environment. # 'valueFrom' is source for the environment variable's value. Cannot be used if 'value' is not empty. env: [] # - name: "HOME" # value: "/opt/selectdb" # - name: HOST_IP # valueFrom: # fieldRef: # apiVersion: v1 # fieldPath: status.hostIP # affinity is the constraints of pod scheduling # nodeAffinity: Describes node affinity scheduling rules for the pod. # podAffinity: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). # PodAntiAffinity: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). # reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ affinity: {} # nodeAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "k8s-node1" # "k8s-node2" # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "fe1" # "fe2" # podAntiAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "NotIn" # values: # - "fe1" # "fe2" # the pod this Toleration is attached to tolerates any taint that matches. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ # the triple <key,value,effect> using the matching operator <operator>. # 'key' is the taint key that the toleration applies to. Empty means match all taint keys. if the 'key' is empty, 'operator' must be Exists; this combination means to match all values and all keys. # 'operator' represents a key's relationship to the 'value'. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. # 'value' is the taint value the toleration matches to. If the 'operator' is Exists, the 'value' should be empty, otherwise just a regular string. # 'effect' indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. tolerations: [] # - key: "toleration" # operator: "Equal" # value: "master" # - key: "node-role.kubernetes.io/master" # operator: "Exists" # effect: "NoSchedule" # - operator: "Exists" # hostAliases allows adding entries to /etc/hosts inside the containers hostAliases: [] # If doris use hdfs or catalog, config the map of namenode host here is beneficial # - ip: "127.0.0.1" # hostnames: # - "hostname1" # - ip: "127.0.0.2" # hostnames: # - "hostname2" persistentVolumeClaim: {} # data volume, mountPath is /opt/apache-doris/be/storage # dataPersistentVolume: # storage: 200Gi # when use specific storageclass, the storageClassName should reConfig, example as annotation. # storageClassName: "" # logs volume, mountPath is /opt/apache-doris/be/log # logsPersistentVolume: # storage: 100Gi # when use specific storageclass, the storageClassName should reConfig, example as annotation. # storageClassName: "" systemInitialization: {} # initImage: "selectdb/alpine:latest" # command: [ "/sbin/sysctl", "-w", "vm.max_map_count=2000000" ] # specific cn auto scale policy autoScalingPolicy: enable: true # version: v2 minReplicas: 1 maxReplicas: 4 # hpaPolicy response to horizontlaPodAutoscaler's HorizontalPodAutoscalerSpec hpaPolicy: {} # metrics: # - type: Resource # resource: # name: cpu # target: # type: Utilization # averageUtilization: 30 brokerSpec: # annotations for broker pods and service annotations: {} replicas: 3 # the pod labels for user select or classify pods. labels: {} # selectdb.app.classify: "classify-1" image: repository: apache/doris tag: broker-2.1.7 # imagePullSecrets: # - name: imagePullSecret # specify the configMap, as a dictionary. # Its 'key' is the config file name in the doris 'doris_root_path/fe/conf/' file path, # Its 'value' is the text content of the corresponding file (it should be relatively long, actually). configMap: {} # 'apache_hdfs_broker.conf' is the startup config file of broker, and the name must be 'apache_hdfs_broker.conf'. # apache_hdfs_broker.conf: | # broker_ipc_port: 8000 # client_expire_seconds: 3600 # Other config files can also be specified here # hdfs-site.xml: | # <?xml version="1.0" encoding="UTF-8"?> # # <configuration> # <property> # <name>dfs.nameservices</name> # <value>ns</value> # </property> # # mountConfigMaps supports configmap mounting in the form of specifying the mounting directory # but please note that the mounting path cannot be repeated. # if the elements within mountConfigMaps contain data, it means that the configmap does not need to be created manually by the user, and vice versa. # in the following example, the user needs to manually create configmap 'cm-1' # mountConfigMaps: {} # - configMapName: cm-1 # mountPath: /etc/cm1 # - configMapName: cm-2 # mountPath: /etc/cm2 # data: # copy_file1: | # text *** content # copy_file2: | # text *** content # If configured separately here, it will overwrite the total resources configuration default. # but the default configuration of other types will still take effect. resource: {} # requests: # cpu: 8 # memory: 16Gi # limits: # cpu: 16 # memory: 32Gi # If specified, the pod's nodeSelector,displayName="Map of nodeSelectors to match when scheduling pods on nodes" nodeSelector: {} # kubernetes.io/arch: amd64 # kubernetes.io/os: linux # app.kubernetes.node.name: "k8s-node1" # env represents an environment variable present in a Container. # 'name' of the environment variable. Must be a C_IDENTIFIER. # no more than one of the following may be specified: 'value' or 'valueFrom', # 'value' is the value of environment. # 'valueFrom' is source for the environment variable's value. Cannot be used if 'value' is not empty. env: [] # - name: "HOME" # value: "/opt/selectdb" # - name: HOST_IP # valueFrom: # fieldRef: # apiVersion: v1 # fieldPath: status.hostIP # affinity is the constraints of pod scheduling # nodeAffinity: Describes node affinity scheduling rules for the pod. # podAffinity: Describes pod affinity scheduling rules (e.g. co-locate this pod in the same node, zone, etc. as some other pod(s)). # PodAntiAffinity: Describes pod anti-affinity scheduling rules (e.g. avoid putting this pod in the same node, zone, etc. as some other pod(s)). # reference: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/ affinity: {} # nodeAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "k8s-node1" # "k8s-node2" # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "In" # values: # - "fe1" # "fe2" # podAntiAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # key: "app.kubernetes.node.name" # operator: "NotIn" # values: # - "fe1" # "fe2" # the pod this Toleration is attached to tolerates any taint that matches. Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ # the triple <key,value,effect> using the matching operator <operator>. # 'key' is the taint key that the toleration applies to. Empty means match all taint keys. if the 'key' is empty, 'operator' must be Exists; this combination means to match all values and all keys. # 'operator' represents a key's relationship to the 'value'. Valid operators are Exists and Equal. Defaults to Equal. Exists is equivalent to wildcard for value, so that a pod can tolerate all taints of a particular category. # 'value' is the taint value the toleration matches to. If the 'operator' is Exists, the 'value' should be empty, otherwise just a regular string. # 'effect' indicates the taint effect to match. Empty means match all taint effects. When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. tolerations: [] # - key: "toleration" # operator: "Equal" # value: "master" # - key: "node-role.kubernetes.io/master" # operator: "Exists" # effect: "NoSchedule" # - operator: "Exists" # hostAliases allows adding entries to /etc/hosts inside the containers hostAliases: [] # If doris use hdfs or catalog, config the map of namenode host here is beneficial # - ip: "127.0.0.1" # hostnames: # - "hostname1" # - ip: "127.0.0.2" # hostnames: # - "hostname2" persistentVolumeClaim: {} # logs volume, mountPath is /opt/apache-doris/apache_hdfs_broker/log # logsPersistentVolume: # storage: 100Gi # when use specific storageclass, the storageClassName should reConfig, example as annotation. # storageClassName: "" systemInitialization: {} # initImage: "selectdb/alpine:latest" # command: [ "/sbin/sysctl", "-w", "vm.max_map_count=2000000" ]