Skip to content

Commit 4afe59d

Browse files
authored
Merge pull request #308 from komljen/master_volume_size
Add support for master volume size
2 parents 2134a10 + a0ab933 commit 4afe59d

File tree

10 files changed

+17
-2
lines changed

10 files changed

+17
-2
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ Following parameters are available to customize the elastic cluster:
3636
- data-node-replicas: Number of data node replicas
3737
- zones: Define which zones to deploy data nodes to for high availability (_Note: Zones are evenly distributed based upon number of data-node-replicas defined_)
3838
- data-volume-size: Size of persistent volume to attach to data nodes
39+
- master-volume-size: Size of persistent volume to attach to master nodes
3940
- elastic-search-image: Override the elasticsearch image (e.g. `upmcenterprises/docker-elasticsearch-kubernetes:6.1.3_0`)
4041
- keep-secrets-on-delete (Boolean): Tells the operator to not delete cert secrets when a cluster is deleted
4142
- use-ssl: Use SSL for communication with the cluster and inside the cluster. Default value is true.
@@ -107,6 +108,7 @@ spec:
107108
client-node-replicas: 3
108109
data-node-replicas: 3
109110
data-volume-size: 10Gi
111+
master-volume-size: 10Gi
110112
java-options: -Xms256m -Xmx256m
111113
master-node-replicas: 2
112114
image-pull-secrets:
@@ -274,6 +276,7 @@ spec:
274276
client-node-replicas: 3
275277
data-node-replicas: 3
276278
data-volume-size: 10Gi
279+
master-volume-size: 10Gi
277280
java-options: -Xms256m -Xmx256m
278281
master-node-replicas: 2
279282
snapshot:

example/example-es-cluster-azure.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ spec:
1010
network-host: 0.0.0.0
1111
zones: []
1212
data-volume-size: 10Gi
13+
master-volume-size: 10Gi
1314
java-options: "-Xms1024m -Xmx1024m"
1415
snapshot:
1516
scheduler-enabled: false

example/example-es-cluster-gke.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ spec:
1515
zones:
1616
- us-east1-d
1717
data-volume-size: 10Gi
18+
master-volume-size: 10Gi
1819
java-options: "-Xms512m -Xmx512m"
1920
snapshot:
2021
scheduler-enabled: false

example/example-es-cluster-hostpath.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ spec:
1414
network-host: 0.0.0.0
1515
zones: []
1616
data-volume-size: 10Gi
17+
master-volume-size: 10Gi
1718
java-options: "-Xms512m -Xmx512m"
1819
snapshot:
1920
scheduler-enabled: false

example/example-es-cluster-ibm.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,7 @@ spec:
7171
- dal12
7272
- dal13
7373
data-volume-size: 10Gi
74+
master-volume-size: 10Gi
7475
java-options: "-Xms512m -Xmx512m"
7576
snapshot: # Not verified with IBM Cloud Object Storage
7677
scheduler-enabled: false

example/example-es-cluster-minikube.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ spec:
1717
network-host: 0.0.0.0
1818
zones: []
1919
data-volume-size: 10Gi
20+
master-volume-size: 10Gi
2021
java-options: "-Xms512m -Xmx512m"
2122
snapshot:
2223
scheduler-enabled: false

example/example-es-cluster-rook.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ spec:
1212
network-host: 0.0.0.0
1313
zones: []
1414
data-volume-size: 10Gi
15+
master-volume-size: 10Gi
1516
java-options: "-Xms256m -Xmx256m"
1617
snapshot:
1718
scheduler-enabled: false

example/example-es-cluster.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ spec:
1515
zones:
1616
- us-east-2b
1717
data-volume-size: 10Gi
18+
master-volume-size: 10Gi
1819
java-options: "-Xms512m -Xmx512m"
1920
snapshot:
2021
scheduler-enabled: false

pkg/apis/elasticsearchoperator/v1/cluster.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,10 @@ type ClusterSpec struct {
8787
// to the data nodes in the ES cluster
8888
DataDiskSize string `json:"data-volume-size"`
8989

90+
// MasterDiskSize specifies how large the persistent volume should be attached
91+
// to the master nodes in the ES cluster
92+
MasterDiskSize string `json:"master-volume-size"`
93+
9094
// ElasticSearchImage specifies the docker image to use (optional)
9195
ElasticSearchImage string `json:"elastic-search-image"`
9296

pkg/processor/processor.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,7 @@ func (p *Processor) refreshClusters() error {
161161
DataNodeReplicas: cluster.Spec.DataNodeReplicas,
162162
Zones: cluster.Spec.Zones,
163163
DataDiskSize: cluster.Spec.DataDiskSize,
164+
MasterDiskSize: cluster.Spec.MasterDiskSize,
164165
JavaOptions: cluster.Spec.JavaOptions,
165166
ClientJavaOptions: cluster.Spec.ClientJavaOptions,
166167
DataJavaOptions: cluster.Spec.DataJavaOptions,
@@ -395,7 +396,7 @@ func (p *Processor) processElasticSearchCluster(c *myspec.ElasticsearchCluster)
395396

396397
// Create Master Nodes
397398
for index, count := range zoneDistributionMaster {
398-
if err := p.k8sclient.CreateDataNodeDeployment("master", &count, baseImage, c.Spec.Zones[index], c.Spec.DataDiskSize, c.Spec.Resources,
399+
if err := p.k8sclient.CreateDataNodeDeployment("master", &count, baseImage, c.Spec.Zones[index], c.Spec.MasterDiskSize, c.Spec.Resources,
399400
c.Spec.ImagePullSecrets, c.Spec.ImagePullPolicy, c.Spec.ServiceAccountName, c.ObjectMeta.Name, c.Spec.Instrumentation.StatsdHost, c.Spec.NetworkHost,
400401
c.ObjectMeta.Namespace, c.Spec.JavaOptions, c.Spec.MasterJavaOptions, c.Spec.DataJavaOptions, c.Spec.UseSSL, c.Spec.Scheduler.ElasticURL, c.Spec.NodeSelector, c.Spec.Tolerations); err != nil {
401402
logrus.Error("Error creating master node deployment ", err)
@@ -422,7 +423,7 @@ func (p *Processor) processElasticSearchCluster(c *myspec.ElasticsearchCluster)
422423

423424
// Create Master Nodes
424425
if err := p.k8sclient.CreateDataNodeDeployment("master", func() *int32 { i := int32(c.Spec.MasterNodeReplicas); return &i }(), baseImage, c.Spec.Storage.StorageClass,
425-
c.Spec.DataDiskSize, c.Spec.Resources, c.Spec.ImagePullSecrets, c.Spec.ImagePullPolicy, c.Spec.ServiceAccountName, c.ObjectMeta.Name,
426+
c.Spec.MasterDiskSize, c.Spec.Resources, c.Spec.ImagePullSecrets, c.Spec.ImagePullPolicy, c.Spec.ServiceAccountName, c.ObjectMeta.Name,
426427
c.Spec.Instrumentation.StatsdHost, c.Spec.NetworkHost, c.ObjectMeta.Namespace, c.Spec.JavaOptions, c.Spec.MasterJavaOptions, c.Spec.DataJavaOptions, c.Spec.UseSSL, c.Spec.Scheduler.ElasticURL, c.Spec.NodeSelector, c.Spec.Tolerations); err != nil {
427428
logrus.Error("Error creating master node deployment ", err)
428429

0 commit comments

Comments
 (0)