Skip to content

Commit ca22cf2

Browse files
committed
Merge pull request #3688 from carmstrong/ec2-customize_volume_sizes
feat(contrib/ec2): add support for custom volume sizes
2 parents 4de2c90 + 2aa7027 commit ca22cf2

2 files changed

Lines changed: 33 additions & 5 deletions

File tree

contrib/ec2/deis.template.json

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,21 @@
103103
"Default": "internet-facing",
104104
"AllowedValues" : [ "internet-facing", "internal" ],
105105
"ConstraintDescription" : "must be either 'internet-facing' for public use, or 'internal' for private use"
106+
},
107+
"RootVolumeSize": {
108+
"Description": "Desired size of the root volume, in GB",
109+
"Type": "Number",
110+
"Default": "50"
111+
},
112+
"DockerVolumeSize": {
113+
"Description": "Desired size of the Docker volume, in GB",
114+
"Type": "Number",
115+
"Default": "100"
116+
},
117+
"EtcdVolumeSize": {
118+
"Description": "Desired size of the etcd volume, in GB",
119+
"Type": "Number",
120+
"Default": "10"
106121
}
107122
},
108123

@@ -271,15 +286,15 @@
271286
"BlockDeviceMappings" : [
272287
{
273288
"DeviceName" : { "Fn::FindInMap": [ "RootDevices", { "Ref": "EC2VirtualizationType" }, "Name" ] },
274-
"Ebs" : { "VolumeSize" : "50", "VolumeType": { "Ref": "EC2EBSVolumeType" } }
289+
"Ebs" : { "VolumeSize" : { "Ref": "RootVolumeSize" }, "VolumeType": { "Ref": "EC2EBSVolumeType" } }
275290
},
276291
{
277292
"DeviceName" : "/dev/xvdf",
278-
"Ebs" : { "VolumeSize" : "100", "VolumeType": { "Ref": "EC2EBSVolumeType" } }
293+
"Ebs" : { "VolumeSize" : { "Ref": "DockerVolumeSize" }, "VolumeType": { "Ref": "EC2EBSVolumeType" } }
279294
},
280295
{
281296
"DeviceName" : "/dev/xvdg",
282-
"Ebs" : { "VolumeSize" : "10", "VolumeType": { "Ref": "EC2EBSVolumeType" } }
297+
"Ebs" : { "VolumeSize" : { "Ref": "EtcdVolumeSize" }, "VolumeType": { "Ref": "EC2EBSVolumeType" } }
283298
}
284299
]
285300
}

docs/installing_deis/aws.rst

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ Customize cloudformation.json
7979
-----------------------------
8080

8181
Any of the parameter defaults defined in deis.template.json can be overridden by setting the value
82-
in `cloudformation.json`_. For example, to configure all of the optional settings:
82+
in `cloudformation.json`_. For example, to configure all of the options to non-default values:
8383

8484
.. code-block:: console
8585
@@ -102,11 +102,24 @@ in `cloudformation.json`_. For example, to configure all of the optional setting
102102
{
103103
"ParameterKey": "ELBScheme",
104104
"ParameterValue": "internal"
105+
},
106+
{
107+
"ParameterKey": "RootVolumeSize",
108+
"ParameterValue": "100"
109+
},
110+
{
111+
"ParameterKey": "DockerVolumeSize",
112+
"ParameterValue": "1000"
113+
},
114+
{
115+
"ParameterKey": "EtcdVolumeSize",
116+
"ParameterValue": "5"
105117
}
106118
107119
108120
The only entry in cloudformation.json required to launch your cluster is `KeyPair`, which is
109-
already filled out. The defaults will be applied for the other settings.
121+
already filled out. The defaults will be applied for the other settings. The default values are
122+
defined in deis.template.json.
110123

111124
If updated with update-ec2-cluster.sh, the InstanceType will only impact newly deployed instances
112125
(`#1758`_).

0 commit comments

Comments
 (0)