diff --git a/apis/druid/v1alpha1/druid_types.go b/apis/druid/v1alpha1/druid_types.go
index 9afa0fd0..b17fe031 100644
--- a/apis/druid/v1alpha1/druid_types.go
+++ b/apis/druid/v1alpha1/druid_types.go
@@ -189,6 +189,10 @@ type DruidSpec struct {
// +optional
PodLabels map[string]string `json:"podLabels,omitempty"`
+ // PriorityClassName Kubernetes native `priorityClassName` specification.
+ // +optional
+ PriorityClassName string `json:"priorityClassName,omitempty"`
+
// UpdateStrategy
// +optional
UpdateStrategy *appsv1.StatefulSetUpdateStrategy `json:"updateStrategy,omitempty"`
@@ -308,6 +312,10 @@ type DruidNodeSpec struct {
// +optional
PodDisruptionBudgetSpec *policyv1.PodDisruptionBudgetSpec `json:"podDisruptionBudgetSpec,omitempty"`
+ // PriorityClassName Kubernetes native `priorityClassName` specification.
+ // +optional
+ PriorityClassName string `json:"priorityClassName,omitempty"`
+
// RuntimeProperties Additional runtime configuration for the specific workload.
// +required
RuntimeProperties string `json:"runtime.properties"`
diff --git a/chart/templates/crds/druid.apache.org_druids.yaml b/chart/templates/crds/druid.apache.org_druids.yaml
index e53d6198..8b67954f 100644
--- a/chart/templates/crds/druid.apache.org_druids.yaml
+++ b/chart/templates/crds/druid.apache.org_druids.yaml
@@ -5548,6 +5548,10 @@ spec:
- containerPort
type: object
type: array
+ priorityClassName:
+ description: PriorityClassName Kubernetes native `priorityClassName`
+ specification.
+ type: string
readinessProbe:
description: ReadinessProbe Port is set to `druid.port` if not
specified with httpGet handler.
@@ -9032,6 +9036,10 @@ spec:
default: Parallel
description: PodManagementPolicy
type: string
+ priorityClassName:
+ description: PriorityClassName Kubernetes native `priorityClassName`
+ specification.
+ type: string
readinessProbe:
description: ReadinessProbe Port is set to `druid.port` if not specified
with httpGet handler.
diff --git a/config/crd/bases/druid.apache.org_druids.yaml b/config/crd/bases/druid.apache.org_druids.yaml
index e53d6198..8b67954f 100644
--- a/config/crd/bases/druid.apache.org_druids.yaml
+++ b/config/crd/bases/druid.apache.org_druids.yaml
@@ -5548,6 +5548,10 @@ spec:
- containerPort
type: object
type: array
+ priorityClassName:
+ description: PriorityClassName Kubernetes native `priorityClassName`
+ specification.
+ type: string
readinessProbe:
description: ReadinessProbe Port is set to `druid.port` if not
specified with httpGet handler.
@@ -9032,6 +9036,10 @@ spec:
default: Parallel
description: PodManagementPolicy
type: string
+ priorityClassName:
+ description: PriorityClassName Kubernetes native `priorityClassName`
+ specification.
+ type: string
readinessProbe:
description: ReadinessProbe Port is set to `druid.port` if not specified
with httpGet handler.
diff --git a/controllers/druid/handler.go b/controllers/druid/handler.go
index 67947956..d2963f35 100644
--- a/controllers/druid/handler.go
+++ b/controllers/druid/handler.go
@@ -1322,6 +1322,7 @@ func makePodSpec(nodeSpec *v1alpha1.DruidNodeSpec, m *v1alpha1.Druid, nodeSpecUn
Volumes: getVolume(nodeSpec, m, nodeSpecUniqueStr),
SecurityContext: firstNonNilValue(nodeSpec.PodSecurityContext, m.Spec.PodSecurityContext).(*v1.PodSecurityContext),
ServiceAccountName: m.Spec.ServiceAccount,
+ PriorityClassName: firstNonEmptyStr(nodeSpec.PriorityClassName, m.Spec.PriorityClassName),
}
addAdditionalContainers(m, nodeSpec, &spec)
diff --git a/controllers/druid/testdata/broker-deployment.yaml b/controllers/druid/testdata/broker-deployment.yaml
index f310dfad..173815de 100644
--- a/controllers/druid/testdata/broker-deployment.yaml
+++ b/controllers/druid/testdata/broker-deployment.yaml
@@ -9,7 +9,7 @@ metadata:
nodeSpecUniqueStr: druid-druid-test-brokers
component: broker
annotations:
- druidOpResourceHash: BWc+znXyJdW5P9aPZqT7929PtgA=
+ druidOpResourceHash: DYdfEwwDlLKgjTSZeuJb5nloe/w=
spec:
replicas: 2
selector:
@@ -34,6 +34,7 @@ spec:
spec:
tolerations: []
affinity: {}
+ priorityClassName: high-priority
containers:
- command:
- bin/run-druid.sh
diff --git a/controllers/druid/testdata/broker-statefulset.yaml b/controllers/druid/testdata/broker-statefulset.yaml
index 0f588505..c4b6db88 100644
--- a/controllers/druid/testdata/broker-statefulset.yaml
+++ b/controllers/druid/testdata/broker-statefulset.yaml
@@ -9,7 +9,7 @@ metadata:
nodeSpecUniqueStr: druid-druid-test-brokers
component: broker
annotations:
- druidOpResourceHash: nm2DDc54TuljVernCmU6WJ6Lmi4=
+ druidOpResourceHash: lTyDduvMnbQ7O2Glf57R9c5bFtA=
spec:
podManagementPolicy: Parallel
replicas: 2
@@ -33,6 +33,7 @@ spec:
spec:
tolerations: []
affinity: {}
+ priorityClassName: high-priority
containers:
- command:
- bin/run-druid.sh
diff --git a/controllers/druid/testdata/druid-test-cr-noprobe.yaml b/controllers/druid/testdata/druid-test-cr-noprobe.yaml
index 3d70f2ad..06e0f088 100644
--- a/controllers/druid/testdata/druid-test-cr-noprobe.yaml
+++ b/controllers/druid/testdata/druid-test-cr-noprobe.yaml
@@ -41,66 +41,66 @@ spec:
druid.s3.accessKey=accesskey
druid.s3.secretKey=secretkey
jvm.options: |-
- -server
- -XX:MaxDirectMemorySize=10240g
- -Duser.timezone=UTC
- -Dfile.encoding=UTF-8
- -Dlog4j.debug
- -XX:+ExitOnOutOfMemoryError
- -XX:+HeapDumpOnOutOfMemoryError
- -XX:+UseG1GC
- -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager
+ -server
+ -XX:MaxDirectMemorySize=10240g
+ -Duser.timezone=UTC
+ -Dfile.encoding=UTF-8
+ -Dlog4j.debug
+ -XX:+ExitOnOutOfMemoryError
+ -XX:+HeapDumpOnOutOfMemoryError
+ -XX:+UseG1GC
+ -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager
log4j.config: |-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
common.runtime.properties: |-
- #
- # Extensions
- #
- druid.extensions.loadList=["druid-datasketches", "druid-s3-extensions", "postgresql-metadata-storage"]
+ #
+ # Extensions
+ #
+ druid.extensions.loadList=["druid-datasketches", "druid-s3-extensions", "postgresql-metadata-storage"]
- #
- # Logging
- #
- # Log all runtime properties on startup. Disable to avoid logging properties on startup:
- druid.startup.logging.logProperties=true
+ #
+ # Logging
+ #
+ # Log all runtime properties on startup. Disable to avoid logging properties on startup:
+ druid.startup.logging.logProperties=true
- #
- # Indexing service logs
- #
- # Store indexing logs in an S3 bucket named 'druid-deep-storage' with the
- # prefix 'druid/indexing-logs'
- druid.indexer.logs.type=s3
- druid.indexer.logs.s3Bucket=mybucket
- druid.indexer.logs.s3Prefix=druid/indexing-logs
+ #
+ # Indexing service logs
+ #
+ # Store indexing logs in an S3 bucket named 'druid-deep-storage' with the
+ # prefix 'druid/indexing-logs'
+ druid.indexer.logs.type=s3
+ druid.indexer.logs.s3Bucket=mybucket
+ druid.indexer.logs.s3Prefix=druid/indexing-logs
- #
- # Service discovery
- #
- druid.selectors.indexing.serviceName=druid/overlord
- druid.selectors.coordinator.serviceName=druid/coordinator
+ #
+ # Service discovery
+ #
+ druid.selectors.indexing.serviceName=druid/overlord
+ druid.selectors.coordinator.serviceName=druid/coordinator
- #
- # Monitoring
- #
- druid.monitoring.monitors=["com.metamx.metrics.JvmMonitor"]
- druid.emitter=logging
- druid.emitter.logging.logLevel=info
+ #
+ # Monitoring
+ #
+ druid.monitoring.monitors=["com.metamx.metrics.JvmMonitor"]
+ druid.emitter=logging
+ druid.emitter.logging.logLevel=info
- # Storage type of double columns
- # ommiting this will lead to index double as float at the storage layer
- druid.indexing.doubleStorage=double
+ # Storage type of double columns
+ # ommiting this will lead to index double as float at the storage layer
+ druid.indexing.doubleStorage=double
metricDimensions.json: |-
{
"query/time" : { "dimensions" : ["dataSource", "type"], "type" : "timer"}
@@ -109,20 +109,17 @@ spec:
brokers:
nodeType: "broker"
services:
- -
- spec:
+ - spec:
type: ClusterIP
clusterIP: None
- -
- metadata:
+ - metadata:
name: broker-%s-service
annotations:
service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0
spec:
type: LoadBalancer
ports:
- -
- name: service-port
+ - name: service-port
port: 8090
targetPort: 8080
druid.port: 8080
@@ -130,8 +127,7 @@ spec:
podDisruptionBudgetSpec:
maxUnavailable: 1
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/broker
@@ -148,15 +144,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -175,8 +171,7 @@ spec:
druid.port: 8080
replicas: 1
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/coordinator
@@ -188,15 +183,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -214,8 +209,7 @@ spec:
druid.port: 8080
replicas: 2
ports:
- -
- name: random
+ - name: random
containerPort: 8084
runtime.properties: |-
druid.service=druid/historical
@@ -230,15 +224,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -256,8 +250,7 @@ spec:
druid.port: 8080
replicas: 1
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/overlord
@@ -270,15 +263,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -296,35 +289,25 @@ spec:
druid.port: 8080
replicas: 1
ports:
- -
- name: peon-0-pt
+ - name: peon-0-pt
containerPort: 8100
- -
- name: peon-1-pt
+ - name: peon-1-pt
containerPort: 8101
- -
- name: peon-2-pt
+ - name: peon-2-pt
containerPort: 8102
- -
- name: peon-3-pt
+ - name: peon-3-pt
containerPort: 8103
- -
- name: peon-4-pt
+ - name: peon-4-pt
containerPort: 8104
- -
- name: peon-5-pt
+ - name: peon-5-pt
containerPort: 8105
- -
- name: peon-6-pt
+ - name: peon-6-pt
containerPort: 8106
- -
- name: peon-7-pt
+ - name: peon-7-pt
containerPort: 8107
- -
- name: peon-8-pt
+ - name: peon-8-pt
containerPort: 8108
- -
- name: peon-9-pt
+ - name: peon-9-pt
containerPort: 8109
runtime.properties: |-
@@ -342,15 +325,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
diff --git a/controllers/druid/testdata/druid-test-cr-sidecar.yaml b/controllers/druid/testdata/druid-test-cr-sidecar.yaml
index 03a54463..5a0b5b97 100644
--- a/controllers/druid/testdata/druid-test-cr-sidecar.yaml
+++ b/controllers/druid/testdata/druid-test-cr-sidecar.yaml
@@ -97,13 +97,13 @@ spec:
# Extensions
#
druid.extensions.loadList=["druid-datasketches", "druid-s3-extensions", "postgresql-metadata-storage"]
-
+
#
# Logging
#
# Log all runtime properties on startup. Disable to avoid logging properties on startup:
druid.startup.logging.logProperties=true
-
+
#
# Indexing service logs
#
@@ -112,20 +112,20 @@ spec:
druid.indexer.logs.type=s3
druid.indexer.logs.s3Bucket=mybucket
druid.indexer.logs.s3Prefix=druid/indexing-logs
-
+
#
# Service discovery
#
druid.selectors.indexing.serviceName=druid/overlord
druid.selectors.coordinator.serviceName=druid/coordinator
-
+
#
# Monitoring
#
druid.monitoring.monitors=["com.metamx.metrics.JvmMonitor"]
druid.emitter=logging
druid.emitter.logging.logLevel=info
-
+
# Storage type of double columns
# ommiting this will lead to index double as float at the storage layer
druid.indexing.doubleStorage=double
@@ -137,20 +137,17 @@ spec:
brokers:
nodeType: "broker"
services:
- -
- spec:
+ - spec:
type: ClusterIP
clusterIP: None
- -
- metadata:
+ - metadata:
name: broker-%s-service
annotations:
service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0
spec:
type: LoadBalancer
ports:
- -
- name: service-port
+ - name: service-port
port: 8090
targetPort: 8080
druid.port: 8080
@@ -161,16 +158,15 @@ spec:
httpGet:
path: /status
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/broker
-
+
# HTTP server threads
druid.broker.http.numConnections=5
druid.server.http.numThreads=25
-
+
# Processing threads and buffers
druid.processing.buffer.sizeBytes=1
druid.processing.numMergeBuffers=1
@@ -188,7 +184,7 @@ spec:
requests:
storage: 2Gi
storageClassName: gp2
-
+
volumeMounts:
- mountPath: /druid/data
name: data-volume
@@ -200,18 +196,17 @@ spec:
limits:
memory: "2Gi"
cpu: "4"
-
+
coordinators:
nodeType: "coordinator"
druid.port: 8080
replicas: 1
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/coordinator
-
+
# HTTP server threads
druid.coordinator.startDelay=PT30S
druid.coordinator.period=PT30S
@@ -228,7 +223,7 @@ spec:
requests:
storage: 2Gi
storageClassName: gp2
-
+
volumeMounts:
- mountPath: /druid/data
name: data-volume
@@ -239,14 +234,13 @@ spec:
limits:
memory: "2Gi"
cpu: "4"
-
+
historicals:
nodeType: "historical"
druid.port: 8080
replicas: 2
ports:
- -
- name: random
+ - name: random
containerPort: 8084
runtime.properties: |-
druid.service=druid/historical
@@ -270,7 +264,7 @@ spec:
requests:
storage: 2Gi
storageClassName: gp2
-
+
volumeMounts:
- mountPath: /druid/data
name: data-volume
@@ -281,18 +275,17 @@ spec:
limits:
memory: "2Gi"
cpu: "4"
-
+
overlords:
nodeType: "overlord"
druid.port: 8080
replicas: 1
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/overlord
-
+
# HTTP server threads
druid.indexer.queue.startDelay=PT30S
druid.indexer.runner.type=remote
@@ -310,7 +303,7 @@ spec:
requests:
storage: 2Gi
storageClassName: gp2
-
+
volumeMounts:
- mountPath: /druid/data
name: data-volume
@@ -321,43 +314,33 @@ spec:
limits:
memory: "2Gi"
cpu: "4"
-
+
middlemanagers:
nodeType: "middleManager"
druid.port: 8080
replicas: 1
ports:
- -
- name: peon-0-pt
+ - name: peon-0-pt
containerPort: 8100
- -
- name: peon-1-pt
+ - name: peon-1-pt
containerPort: 8101
- -
- name: peon-2-pt
+ - name: peon-2-pt
containerPort: 8102
- -
- name: peon-3-pt
+ - name: peon-3-pt
containerPort: 8103
- -
- name: peon-4-pt
+ - name: peon-4-pt
containerPort: 8104
- -
- name: peon-5-pt
+ - name: peon-5-pt
containerPort: 8105
- -
- name: peon-6-pt
+ - name: peon-6-pt
containerPort: 8106
- -
- name: peon-7-pt
+ - name: peon-7-pt
containerPort: 8107
- -
- name: peon-8-pt
+ - name: peon-8-pt
containerPort: 8108
- -
- name: peon-9-pt
+ - name: peon-9-pt
containerPort: 8109
-
+
runtime.properties: |-
druid.service=druid/middleManager
druid.worker.capacity=1
@@ -382,7 +365,7 @@ spec:
requests:
storage: 2Gi
storageClassName: gp2
-
+
volumeMounts:
- mountPath: /druid/data
name: data-volume
diff --git a/controllers/druid/testdata/druid-test-cr.yaml b/controllers/druid/testdata/druid-test-cr.yaml
index 4850805b..04227657 100644
--- a/controllers/druid/testdata/druid-test-cr.yaml
+++ b/controllers/druid/testdata/druid-test-cr.yaml
@@ -6,6 +6,7 @@ metadata:
spec:
image: himanshu01/druid:druid-0.12.0-1
defaultProbes: true
+ priorityClassName: high-priority
podAnnotations:
key1: value1
key2: value2
@@ -41,66 +42,66 @@ spec:
druid.s3.accessKey=accesskey
druid.s3.secretKey=secretkey
jvm.options: |-
- -server
- -XX:MaxDirectMemorySize=10240g
- -Duser.timezone=UTC
- -Dfile.encoding=UTF-8
- -Dlog4j.debug
- -XX:+ExitOnOutOfMemoryError
- -XX:+HeapDumpOnOutOfMemoryError
- -XX:+UseG1GC
- -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager
+ -server
+ -XX:MaxDirectMemorySize=10240g
+ -Duser.timezone=UTC
+ -Dfile.encoding=UTF-8
+ -Dlog4j.debug
+ -XX:+ExitOnOutOfMemoryError
+ -XX:+HeapDumpOnOutOfMemoryError
+ -XX:+UseG1GC
+ -Djava.util.logging.manager=org.apache.logging.log4j.jul.LogManager
log4j.config: |-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
common.runtime.properties: |-
- #
- # Extensions
- #
- druid.extensions.loadList=["druid-datasketches", "druid-s3-extensions", "postgresql-metadata-storage"]
+ #
+ # Extensions
+ #
+ druid.extensions.loadList=["druid-datasketches", "druid-s3-extensions", "postgresql-metadata-storage"]
- #
- # Logging
- #
- # Log all runtime properties on startup. Disable to avoid logging properties on startup:
- druid.startup.logging.logProperties=true
+ #
+ # Logging
+ #
+ # Log all runtime properties on startup. Disable to avoid logging properties on startup:
+ druid.startup.logging.logProperties=true
- #
- # Indexing service logs
- #
- # Store indexing logs in an S3 bucket named 'druid-deep-storage' with the
- # prefix 'druid/indexing-logs'
- druid.indexer.logs.type=s3
- druid.indexer.logs.s3Bucket=mybucket
- druid.indexer.logs.s3Prefix=druid/indexing-logs
+ #
+ # Indexing service logs
+ #
+ # Store indexing logs in an S3 bucket named 'druid-deep-storage' with the
+ # prefix 'druid/indexing-logs'
+ druid.indexer.logs.type=s3
+ druid.indexer.logs.s3Bucket=mybucket
+ druid.indexer.logs.s3Prefix=druid/indexing-logs
- #
- # Service discovery
- #
- druid.selectors.indexing.serviceName=druid/overlord
- druid.selectors.coordinator.serviceName=druid/coordinator
+ #
+ # Service discovery
+ #
+ druid.selectors.indexing.serviceName=druid/overlord
+ druid.selectors.coordinator.serviceName=druid/coordinator
- #
- # Monitoring
- #
- druid.monitoring.monitors=["com.metamx.metrics.JvmMonitor"]
- druid.emitter=logging
- druid.emitter.logging.logLevel=info
+ #
+ # Monitoring
+ #
+ druid.monitoring.monitors=["com.metamx.metrics.JvmMonitor"]
+ druid.emitter=logging
+ druid.emitter.logging.logLevel=info
- # Storage type of double columns
- # ommiting this will lead to index double as float at the storage layer
- druid.indexing.doubleStorage=double
+ # Storage type of double columns
+ # ommiting this will lead to index double as float at the storage layer
+ druid.indexing.doubleStorage=double
metricDimensions.json: |-
{
"query/time" : { "dimensions" : ["dataSource", "type"], "type" : "timer"}
@@ -109,20 +110,17 @@ spec:
brokers:
nodeType: "broker"
services:
- -
- spec:
+ - spec:
type: ClusterIP
clusterIP: None
- -
- metadata:
+ - metadata:
name: broker-%s-service
annotations:
service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0
spec:
type: LoadBalancer
ports:
- -
- name: service-port
+ - name: service-port
port: 8090
targetPort: 8080
druid.port: 8080
@@ -133,8 +131,7 @@ spec:
httpGet:
path: /status
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/broker
@@ -151,15 +148,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -178,8 +175,7 @@ spec:
druid.port: 8080
replicas: 1
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/coordinator
@@ -191,15 +187,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -217,8 +213,7 @@ spec:
druid.port: 8080
replicas: 2
ports:
- -
- name: random
+ - name: random
containerPort: 8084
runtime.properties: |-
druid.service=druid/historical
@@ -233,15 +228,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -259,8 +254,7 @@ spec:
druid.port: 8080
replicas: 1
ports:
- -
- name: random
+ - name: random
containerPort: 8083
runtime.properties: |-
druid.service=druid/overlord
@@ -273,15 +267,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
@@ -299,35 +293,25 @@ spec:
druid.port: 8080
replicas: 1
ports:
- -
- name: peon-0-pt
+ - name: peon-0-pt
containerPort: 8100
- -
- name: peon-1-pt
+ - name: peon-1-pt
containerPort: 8101
- -
- name: peon-2-pt
+ - name: peon-2-pt
containerPort: 8102
- -
- name: peon-3-pt
+ - name: peon-3-pt
containerPort: 8103
- -
- name: peon-4-pt
+ - name: peon-4-pt
containerPort: 8104
- -
- name: peon-5-pt
+ - name: peon-5-pt
containerPort: 8105
- -
- name: peon-6-pt
+ - name: peon-6-pt
containerPort: 8106
- -
- name: peon-7-pt
+ - name: peon-7-pt
containerPort: 8107
- -
- name: peon-8-pt
+ - name: peon-8-pt
containerPort: 8108
- -
- name: peon-9-pt
+ - name: peon-9-pt
containerPort: 8109
runtime.properties: |-
@@ -345,15 +329,15 @@ spec:
-Xmx1G
-Xms1G
volumeClaimTemplates:
- - metadata:
- name: data-volume
- spec:
- accessModes:
- - ReadWriteOnce
- resources:
- requests:
- storage: 2Gi
- storageClassName: gp2
+ - metadata:
+ name: data-volume
+ spec:
+ accessModes:
+ - ReadWriteOnce
+ resources:
+ requests:
+ storage: 2Gi
+ storageClassName: gp2
volumeMounts:
- mountPath: /druid/data
diff --git a/docs/api_specifications/druid.md b/docs/api_specifications/druid.md
index 106c6d98..986633ad 100644
--- a/docs/api_specifications/druid.md
+++ b/docs/api_specifications/druid.md
@@ -585,6 +585,18 @@ map[string]string
+priorityClassName
+
+string
+
+ |
+
+(Optional)
+ PriorityClassName Kubernetes native priorityClassName specification.
+ |
+
+
+
updateStrategy
@@ -1078,6 +1090,18 @@ Kubernetes policy/v1.PodDisruptionBudgetSpec
|
+priorityClassName
+
+string
+
+ |
+
+(Optional)
+ PriorityClassName Kubernetes native priorityClassName specification.
+ |
+
+
+
runtime.properties
string
@@ -1984,6 +2008,18 @@ map[string]string
|
+priorityClassName
+
+string
+
+ |
+
+(Optional)
+ PriorityClassName Kubernetes native priorityClassName specification.
+ |
+
+
+
updateStrategy
diff --git a/e2e/configs/druid-cr.yaml b/e2e/configs/druid-cr.yaml
index b744b7ff..a146d781 100644
--- a/e2e/configs/druid-cr.yaml
+++ b/e2e/configs/druid-cr.yaml
@@ -128,6 +128,7 @@ spec:
# Optionally specify for broker nodes
# imagePullSecrets:
# - name: tutu
+ priorityClassName: system-cluster-critical
druid.port: 8088
services:
- spec:
|