Skip to content

Commit c2b54a5

Browse files
author
Marcel Zięba
authored
Merge pull request #2190 from eddycharly/allow-sc
feat: allow overriding the storage class used for prometheus pvc
2 parents 34b4a7a + 61e4e65 commit c2b54a5

File tree

3 files changed

+5
-1
lines changed

3 files changed

+5
-1
lines changed

clusterloader2/pkg/config/cluster.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ type PrometheusConfig struct {
103103
PushgatewayManifests string
104104
StorageClassProvisioner string
105105
StorageClassVolumeType string
106+
PVCStorageClass string
106107
ReadyTimeout time.Duration
107108
}
108109

clusterloader2/pkg/prometheus/manifests/prometheus-prometheus.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
{{$PROMETHEUS_MEMORY_SCALE_FACTOR := DefaultParam .CL2_PROMETHEUS_MEMORY_SCALE_FACTOR $PROMETHEUS_MEMORY_LIMIT_FACTOR}}
66
{{$PROMETHEUS_NODE_SELECTOR := DefaultParam .CL2_PROMETHEUS_NODE_SELECTOR ""}}
77
{{$PROMETHEUS_TOLERATE_MASTER := DefaultParam .CL2_PROMETHEUS_TOLERATE_MASTER false}}
8+
{{$PROMETHEUS_PVC_STORAGE_CLASS := DefaultParam .PROMETHEUS_PVC_STORAGE_CLASS "ssd"}}
89

910
apiVersion: monitoring.coreos.com/v1
1011
kind: Prometheus
@@ -68,7 +69,7 @@ spec:
6869
storage:
6970
volumeClaimTemplate:
7071
spec:
71-
storageClassName: ssd
72+
storageClassName: {{$PROMETHEUS_PVC_STORAGE_CLASS}}
7273
resources:
7374
requests:
7475
# Start with 10Gi, add 10Gi for each 1K nodes.

clusterloader2/pkg/prometheus/prometheus.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ func InitFlags(p *config.PrometheusConfig) {
7070
flags.StringEnvVar(&p.ManifestPath, "prometheus-manifest-path", "PROMETHEUS_MANIFEST_PATH", "$GOPATH/src/k8s.io/perf-tests/clusterloader2/pkg/prometheus/manifests", "Path to the prometheus manifest files.")
7171
flags.StringEnvVar(&p.StorageClassProvisioner, "prometheus-storage-class-provisioner", "PROMETHEUS_STORAGE_CLASS_PROVISIONER", "kubernetes.io/gce-pd", "Volumes plugin used to provision PVs for Prometheus.")
7272
flags.StringEnvVar(&p.StorageClassVolumeType, "prometheus-storage-class-volume-type", "PROMETHEUS_STORAGE_CLASS_VOLUME_TYPE", "pd-ssd", "Volume types of storage class, This will be different depending on the provisioner.")
73+
flags.StringEnvVar(&p.PVCStorageClass, "prometheus-pvc-storage-class", "PROMETHEUS_PVC_STORAGE_CLASS", "ssd", "Storage class used with prometheus persistent volume claim.")
7374
flags.DurationEnvVar(&p.ReadyTimeout, "prometheus-ready-timeout", "PROMETHEUS_READY_TIMEOUT", 15*time.Minute, "Timeout for waiting for Prometheus stack to become healthy.")
7475
}
7576

@@ -187,6 +188,7 @@ func NewController(clusterLoaderConfig *config.ClusterLoaderConfig) (pc *Control
187188
mapping["PROMETHEUS_APISERVER_SCRAPE_PORT"] = clusterLoaderConfig.PrometheusConfig.APIServerScrapePort
188189
mapping["PROMETHEUS_STORAGE_CLASS_PROVISIONER"] = clusterLoaderConfig.PrometheusConfig.StorageClassProvisioner
189190
mapping["PROMETHEUS_STORAGE_CLASS_VOLUME_TYPE"] = clusterLoaderConfig.PrometheusConfig.StorageClassVolumeType
191+
mapping["PROMETHEUS_PVC_STORAGE_CLASS"] = clusterLoaderConfig.PrometheusConfig.PVCStorageClass
190192
snapshotEnabled, _ := pc.isEnabled()
191193
mapping["RetainPD"] = snapshotEnabled
192194

0 commit comments

Comments
 (0)