-
The deployment takes no more than a minute
-
All clients are managed through systemd
-
The module takes care of the:
- EC2's setup, configuration & lifecycle
- Creation & management of the volumes that'll hold the data
-
Full examples can be found in the examples directory.
⚠️ Be mindful with the security group's configuration. All the examples are simplified to allow all external traffic, which in most cases isn't recommended.
MIT Licensed. See LICENSE for full details.
| Name | Version |
|---|---|
| terraform | >= 1.0 |
| aws | >= 5.0 |
| Name | Version |
|---|---|
| aws | 5.30.0 |
No modules.
| Name | Type |
|---|---|
| aws_autoscaling_group.this | resource |
| aws_ebs_volume.this | resource |
| aws_iam_instance_profile.this | resource |
| aws_iam_role.this | resource |
| aws_launch_template.this | resource |
| aws_security_group.this | resource |
| aws_ami.this | data source |
| aws_iam_policy_document.attach_ebs_volume_policy | data source |
| aws_iam_policy_document.policy_document | data source |
| aws_subnet.this | data source |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| ami | The base AMI to use for the Autoscaling grp | object({ |
{ |
no |
| clients | The list of ethereum clients to deploy | list( |
n/a | yes |
| compute | The EC2 configuration | object({ |
{ |
no |
| name | The generic name to apply across the different resources | string |
n/a | yes |
| security_group | The security group rules to apply to the Autoscaling grp | list(object({ |
[] |
no |
| subnet_id | The subnet to deploy the Autoscaling grp in | string |
n/a | yes |
| Name | Description |
|---|---|
| compute | Compute created for the client(s) |
| ebs | EBS volumes created for the client(s) |
| security_group | Security group created for the client(s) |