-
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) |