charts/graphscope-store/values.yaml (261 lines of code) (raw):
# Default values for graphscope-store.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
## @section Global parameters
## Global Docker image parameters
## Please, note that this will override the image parameters, including dependencies, configured to use the global value
## Current available global Docker image parameters: imageRegistry, imagePullSecrets and storageClass
##
## @param global.imageRegistry Global Docker image registry
## @param global.imagePullSecrets Global Docker registry secret names as an array
## @param global.storageClass Global StorageClass for Persistent Volume(s)
##
global:
imageRegistry: ""
## E.g.
## imagePullSecrets:
## - myRegistryKeySecretName
##
imagePullSecrets: []
storageClass: ""
image:
registry: registry.cn-hongkong.aliyuncs.com
repository: graphscope/graphscope-store
# Overrides the image tag whose default is the chart appVersion.
tag: "0.30.0"
digest: ""
## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
##
pullPolicy: IfNotPresent
## Optionally specify an array of imagePullSecrets (secrets must be manually created in the namespace)
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
## Example:
## pullSecrets:
## - myRegistryKeySecretName
##
pullSecrets: []
test:
image:
registry: registry.cn-hongkong.aliyuncs.com
repository: graphscope/graphscope-store
tag: python-3.9.9-alpine3.14-gremlin
## GraphScope Store parameters
##
store:
replicaCount: 1
## GraphScope store container's resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources: {}
## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence:
## If true, use a Persistent Volume Claim, If false, use emptyDir
##
enabled: true
## Name of existing PVC to hold GraphScope store data
## @param persistence.existingClaim A manually managed Persistent Volume and Claim
## If defined, PVC must be created manually before volume will be bound
## The value is evaluated as a template
##
existingClaim: ""
## Persistent Volume size
##
size: 1Gi
selector: {}
service:
adminPort: 10001
## @param hostAliases pods host aliases
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
##
hostAliases: []
## @param hostNetwork Specify if host network should be enabled for pods
##
hostNetwork: false
## @param hostIPC Specify if host IPC should be enabled for pods
##
hostIPC: false
## @param podLabels Extra labels for pods
## Ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
##
podLabels: {}
## @param podAnnotations Extra annotations for pods
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
##
podAnnotations: {}
## @param podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
##
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
##
schedulerName: ""
## @param extraVolumes Optionally specify extra list of additional volumes for the Store pod(s)
## e.g:
## extraVolumes:
## - name: kafka-jaas
## secret:
## secretName: kafka-jaas
##
extraVolumes: []
## @param extraVolumeMounts Optionally specify extra list of additional volumeMounts for the Store container(s)
## extraVolumeMounts:
## - name: kafka-jaas
## mountPath: /bitnami/kafka/config/kafka_jaas.conf
## subPath: kafka_jaas.conf
##
extraVolumeMounts: []
## GraphScope Frontend parameters
##
frontend:
replicaCount: 1
## GraphScope store container's resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources: {}
## GraphScope frontend Service parameters
##
service:
## Service type
##
type: NodePort
## Service port
##
servicePort: 55556
gremlinPort: 12312
cypherPort: 7687
httpPort: 8080
## Internal port for communication between components.
##
port: 55555
## Specify the nodePort value for the LoadBalancer and NodePort service types.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
##
nodePorts:
service: ""
gremlin: ""
## Service clusterIP
##
# clusterIP: None
clusterIP: ""
## Set the LoadBalancer service type to internal only.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
##
loadBalancerIP: ""
## Enable client source IP preservation
## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
##
externalTrafficPolicy: Cluster
## Load Balancer sources
## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
## E.g.
## loadBalancerSourceRanges:
## - 10.10.10.0/24
##
loadBalancerSourceRanges: []
## Provide any additional annotations which may be required
##
annotations: {}
## @param hostAliases pods host aliases
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
##
hostAliases: []
## @param hostNetwork Specify if host network should be enabled for pods
##
hostNetwork: false
## @param hostIPC Specify if host IPC should be enabled for pods
##
hostIPC: false
## @param podLabels Extra labels for pods
## Ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
##
podLabels: {}
## @param podAnnotations Extra annotations for pods
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
##
podAnnotations: {}
## @param podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
##
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
##
schedulerName: ""
## GraphScope Coordinator parameters
##
coordinator:
replicaCount: 1
## GraphScope store container's resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
##
resources: {}
## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence:
## If true, use a Persistent Volume Claim, If false, use emptyDir
##
enabled: true
## Name of existing PVC to hold GraphScope coordinator meta
## @param persistence.existingClaim A manually managed Persistent Volume and Claim
## If defined, PVC must be created manually before volume will be bound
## The value is evaluated as a template
##
existingClaim: ""
## Persistent Volume size
##
size: 100Mi
selector: {}
## @param hostAliases pods host aliases
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
##
hostAliases: []
## @param hostNetwork Specify if host network should be enabled for pods
##
hostNetwork: false
## @param hostIPC Specify if host IPC should be enabled for pods
##
hostIPC: false
## @param podLabels Extra labels for pods
## Ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
##
podLabels: {}
## @param podAnnotations Extra annotations for pods
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
##
podAnnotations: {}
## @param podAffinityPreset Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
## ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
##
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
##
schedulerName: ""
## GraphScope Portal parameters
##
portal:
enabled: false
replicaCount: 1
coordinatorImage:
registry: registry.cn-hongkong.aliyuncs.com
repository: graphscope/coordinator
tag: "0.30.0"
## Service parameters
##
service:
type: NodePort
servicePort: 8080
## Specify the nodePort value for the LoadBalancer and NodePort service types.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#type-nodeport
##
nodePorts:
service: ""
## Service clusterIP
##
# clusterIP: None
clusterIP: ""
## Set the LoadBalancer service type to internal only.
## ref: https://kubernetes.io/docs/concepts/services-networking/service/#internal-load-balancer
##
loadBalancerIP: ""
## Enable client source IP preservation
## ref http://kubernetes.io/docs/tasks/access-application-cluster/create-external-load-balancer/#preserving-the-client-source-ip
##
externalTrafficPolicy: Cluster
## Load Balancer sources
## https://kubernetes.io/docs/tasks/access-application-cluster/configure-cloud-provider-firewall/#restrict-access-for-loadbalancer-service
## E.g.
## loadBalancerSourceRanges:
## - 10.10.10.0/24
##
loadBalancerSourceRanges: []
## Provide any additional annotations which may be required
##
annotations: {}
## Request for data loading
##
studioWrapperEndpoint: ""
##
## baseId is the id used for creating odps dataloading job
baseId: ""
## @param hostIPC Specify if host IPC should be enabled for pods
##
hostIPC: false
## @param hostNetwork Specify if host network should be enabled for pods
##
hostNetwork: false
## @param hostAliases pods host aliases
## https://kubernetes.io/docs/concepts/services-networking/add-entries-to-pod-etc-hosts-with-host-aliases/
##
hostAliases: []
## @param podAnnotations Extra annotations for pods
## ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/annotations/
##
podAnnotations: {}
## @param podLabels Extra labels for pods
## Ref: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
##
podLabels: {}
## ref: https://kubernetes.io/docs/tasks/administer-cluster/configure-multiple-schedulers/
##
schedulerName: ""
## pod network plugin type
##
podNetworkPluginType: flannel
## resource request and limit
resources: {}
## Custom environment variables
##
env:
key1: value1
## persistent storage
##
runtimePath: "/var/runtime"
## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence:
## If true, use a Persistent Volume Claim, If false, use emptyDir
##
enabled: true
## Name of existing PVC to hold portal runtime information
## @param persistence.existingClaim A manually managed Persistent Volume and Claim
## If defined, PVC must be created manually before volume will be bound
## The value is evaluated as a template
##
existingClaim: ""
## Persistent Volume size
##
size: 100Mi
selector: {}
## @section Common parameters
##
## @param kubeVersion Override Kubernetes version
##
kubeVersion: ""
## @param nameOverride String to partially override common.names.fullname
##
nameOverride: ""
## @param fullnameOverride String to fully override common.names.fullname
##
fullnameOverride: ""
## @param clusterDomain Default Kubernetes cluster domain
##
clusterDomain: cluster.local
## @param commonLabels Labels to add to all deployed objects
##
commonLabels: {}
## @param commonAnnotations Annotations to add to all deployed objects
##
commonAnnotations: {}
## @param extraDeploy Array of extra objects to deploy with the release
##
## Configure extra options for containers' liveness, readiness and startup probes
livenessProbe:
enabled: false
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
readinessProbe:
enabled: true
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
startupProbe:
enabled: false
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 5
successThreshold: 1
command:
- /etc/groot/setup.sh
args: []
initContainers: []
persistence:
## @param persistence.storageClass PVC Storage Class
## If defined, storageClassName: <storageClass>
## 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.
##
storageClass: ""
accessModes:
- ReadWriteOnce
annotations: {}
## @param persistence.labels Labels for the PVC
##
labels: {}
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
podSecurityContext:
enabled: true
fsGroup: 1001
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
containerSecurityContext:
enabled: true
runAsUser: 1001
runAsNonRoot: true
# allowPrivilegeEscalation: false
podAffinityPreset: ""
## @param podAntiAffinityPreset Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity
##
podAntiAffinityPreset: soft
## Node affinity preset
## Ref: https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#node-affinity
##
nodeAffinityPreset:
## @param nodeAffinityPreset.type Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard`
##
type: ""
## @param nodeAffinityPreset.key Node label key to match Ignored if `affinity` is set.
## E.g.
## key: "kubernetes.io/e2e-az-name"
##
key: ""
## @param nodeAffinityPreset.values Node label values to match. Ignored if `affinity` is set.
## E.g.
## values:
## - e2e-az1
## - e2e-az2
##
values: []
## @param affinity Affinity for pod assignment
## Ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity
## Note: podAffinityPreset, podAntiAffinityPreset, and nodeAffinityPreset will be ignored when it's set
##
affinity: {}
## @param nodeSelector Node labels for pod assignment
## Ref: https://kubernetes.io/docs/user-guide/node-selection/
##
nodeSelector: {}
## @param tolerations Tolerations for pod assignment
## Ref: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
##
tolerations: []
## @param topologySpreadConstraints Topology Spread Constraints for pod assignment spread across your cluster among failure-domains. Evaluated as a template
## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/#spread-constraints-for-pods
##
topologySpreadConstraints: []
## @param terminationGracePeriodSeconds Seconds the pod needs to gracefully terminate
## ref: https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#hook-handler-execution
##
terminationGracePeriodSeconds: ""
## @param podManagementPolicy StatefulSet controller supports relax its ordering guarantees while preserving its uniqueness and identity guarantees. There are two valid pod management policies: OrderedReady and Parallel
## ref: https://kubernetes.io/docs/tutorials/stateful-application/basic-stateful-set/#pod-management-policy
##
podManagementPolicy: Parallel
## @param priorityClassName Name of the existing priority class to be used by pods
## Ref: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/
##
priorityClassName: ""
## ref: https://kubernetes.io/docs/concepts/workloads/controllers/statefulset/#update-strategies
##
updateStrategy:
type: RollingUpdate
rollingUpdate: {}
## ref: https://kubernetes.io/docs/concepts/workloads/pods/disruptions/
pdb:
create: false
minAvailable: ""
maxUnavailable: 1
dnsPolicy: ""
dnsConfig: {}
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
##
serviceAccount:
## @param serviceAccount.create Enable creation of ServiceAccount
##
create: true
## @param serviceAccount.name The name of the service account to use. If not set and `create` is `true`, a name is generated
## If not set and create is true, a name is generated
##
name: ""
## @param serviceAccount.automountServiceAccountToken Allows auto mount of ServiceAccountToken on the serviceAccount created
## Can be set to false if pods using this serviceAccount do not need to use K8s API
##
automountServiceAccountToken: true
## @param serviceAccount.annotations Additional custom annotations for the ServiceAccount
##
annotations: {}
## Configure GraphScope Components with a custom groot.config file
##
javaOpts: ""
rpcMaxBytesMb: 20
## choose between "file" or "zookeeper"
discoveryMode: "file"
## Coordinator Config
snapshotIncreaseIntervalMs: 1000
offsetsPersistIntervalMs: 1000
fileMetaStorePath: "/etc/groot/my.meta"
logRecycleEnable: true
logRecycleOffsetReserve: 86400
## Store Config
storeDataPath: "/var/lib/graphscope-store"
storeDataDownloadPath: "/var/lib/graphscope-store/download"
storeDataSecondaryPath: "/home/graphscope/secondary"
storeWriteThreadCount: 1
storeQueueBufferSize: "102400"
storeGcIntervalMs: 5000
storeCatchupIntervalMs: 5000
## Kafka Config
##
## Kafka chart configuration
##
## https://github.com/bitnami/charts/blob/master/bitnami/kafka/values.yaml
##
kafka:
enabled: true
replicaCount: 1
service:
## Kafka port for client connections
##
port: 9092
socketRequestMaxBytes: _1048576000
## Zk Config
zkBasePath: "/graphscope/groot"
## This value is only used when kafka.enabled is set to false
##
externalKafka:
## Server or list of external kafka servers to use.
##
servers: []
kafkaTopic: "graphscope"
kafkaProducerCustomConfigs: ""
## Zk Config
## If set, the externalZookeeper.servers will be used to connect to the zookeeper
## If not set, the bundled zookeeper in kafka cluster will be used
externalZookeeper:
servers: []
zkBasePath: "/graphscope/groot"
## Frontend Config
# gremlinServerPort: 12312
## GOpt config
## To adopt a CBO planner, set graphPlannerOpt to CBO, set gremlinScriptLanguageName to antlr_gremlin_calcite, and set graphPhysicalOpt to proto.
graphPlannerIsOn: true
graphPlannerOpt: RBO
graphPlannerRules: FilterIntoJoinRule, FilterMatchRule, ExtendIntersectRule, ExpandGetVFusionRule
gremlinScriptLanguageName: antlr_gremlin_traversal
graphPhysicalOpt: ffi
queryExecutionTimeoutMs: 600000
graphPlannerJoinMinPatternSize: 5
graphPlannerCboGlogueSize: 3
## Log Persistence parameters
##
logPersistence:
## Enable persistence using Persistent Volume Claims. If false, use emptyDir
enabled: false
## Existing PVC to hold the log data. If not provided, a new PVC will be created.
existingClaim: ""
## Persistent Volume storage class
storageClass: ""
## Persistent Volume access modes
accessModes:
- ReadWriteOnce
## Persistent Volume size
size: 1Gi
## Persistent Volume annotations
annotations: {}
## Persistent Volume labels
selector: {}
## mountPath for the Persistent Volume
mountPath: "/var/log/graphscope"
## Key-value pair separated by ;
## For example extraConfig="k1=v1;k2=v2"
extraConfig: ""
auth:
username: ""
password: ""
pegasus:
worker:
num: 1
timeout: 240000
secondary:
enabled: false
storeDataPath: "./data_secondary"
backup:
enabled: false
otel:
enabled: false
collector:
image:
registry: docker.io
repository: jaegertracing/all-in-one
tag: "latest"
# https://opentelemetry.io/docs/languages/sdk-configuration/general/#otel_traces_sampler
traces:
sampler:
name: "traceidratio"
arg: "0.1"
uptrace:
enabled: false
# uptrace service endpoint, could be DNS name of uptrace service
# for example: "service-name.namespace", "my-uptrace.uptrace"
service: "uptrace"
# token is set within uptrace config
token: "project2_secret_token"
distributed:
enabled: false
collect:
statistics:
enabled: false
initial:
delay: 5
interval: 60