aws-docker-swarm

dzangolab/aws-docker-swarm/dzangolab

Terraform Module HCL DZANGOLAB
Install
module "aws-docker-swarm" {
source = "dzangolab/aws-docker-swarm/dzangolab"
version = "0.1.12"
}
plain text: /constructs/tfmod-dzangolab-aws-docker-swarm-dzangolab/install.txt
⭐ Source on GitHub 📦 Registry page
README

AWS EC2 Docker Swarm Cluster This terraform module creates a Docker Swarm cluster using AWS EC2 instances. It optionnally creates a gluster cluster and/or enables an EFS. Providers | Name | Version | |------|---------| | aws | ~> 2.23 | | null | n/a | | template | n/a | Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:-----:| | ami | Ubuntu Server 18.04 LTS AMI | string | "ami-09a4a9ce71ff3f20b" | no | | availability\_zone | The availability zone in which to create EC2 instances | string | "ap-southeast-1a" | no | | connect\_via\_private\_address | Whether connection to the servers should be made via the private ip address (true) or the public ip address (false) | bool | false | no | | connection\_timeout | Timeout for connection to servers

Inputs (28)
NameTypeDescriptionDefault
swarm_namestring required
eip_allocation_idstringThe allocation ID of the Elastic IP address required
key_pair_namestringThe name for the key pair required
envstringThe environment of the current deployment required
worker_volume_delete_on_terminationstringWhether root volume should be destroyed on worker instance terminationtrue
gluster_volume_sizestringSize of the gluster volume in gibibytes (GiB)1
private_key_pathstringSSH private key path for ssh connection."~/.ssh/id_rsa"
manager_instance_typestringManager instance type"t3a.large"
worker_instance_typestringWorker instance type"t3a.large"
manager_volume_typestringThe type of root volume of manager intances"gp2"
enable_glusterstringSet to true in order to enable glusterfalse
swarm_manager_namestringName to use for naming manager nodes"manager"
swarm_worker_countstringNumber of worker nodes1
amistringUbuntu Server 18.04 LTS AMI"ami-09a4a9ce71ff3f20b"
manager_volume_sizestringThe size of root volume of manager instance in gibibytes (GiB).8
swarm_worker_namestringName to use for naming worker nodes"worker"
vpc_cidrstring"192.168.0.0/24"
availability_zonestringThe availability zone in which to create EC2 instances"ap-southeast-1a"
manager_volume_delete_on_terminationstringWhether root volume should be destroyed on manager instance terminationtrue
subnet_main_cidrstring"192.168.0.0/24"
worker_volume_sizestringThe size of root volume of worker instance in gibibytes (GiB).8
connect_via_private_addressstringWhether connection to the servers should be made via the private ip address (trufalse
ssh_public_keysstringSSH public keys to add to instances""
ssh_userstringUser for logging into nodes (ansible)"ubuntu"
Outputs (6)
efs_dns_name — DNS name of the provisioned AWS EFS
swarm_manager_public_ips — The manager nodes public ipv4 adresses
swarm_manager_private_ips — The manager nodes private ipv4 adresses
swarm_worker_public_ips — The worker nodes public ipv4 adresses
swarm_worker_private_ips — The worker nodes private ipv4 adresses
ansible_inventory — Content of Ansible inventory
Resources (15)
aws_ebs_volumeaws_efs_file_systemaws_efs_mount_targetaws_eip_associationaws_instanceaws_internet_gatewayaws_key_pairaws_main_route_table_associationaws_route_tableaws_route_table_associationaws_security_groupaws_subnetaws_volume_attachmentaws_vpcnull_resource
Details
FrameworkTerraform Module
LanguageHCL
Version0.1.12
Cloud DZANGOLAB
★ Stars1
Forks0
Total downloads786
Inputs28
Outputs6
Resources15
LicenseMIT
Namespacedzangolab
Updated