Skip to content
README.md 1.9 KiB
Newer Older
James's avatar
James committed
# mumble-server-aws-terraform-modular

Tested with Terraform v0.13.6.

This will deploy a mumble server (or murmur as it may be) onto an AWS t2.micro instance in the Sydney region, running Fedora 33 x64.

### Updating Cloudflare DNS record to instance public IP address
Upon deployment, the public IPv4 address of the EC2 instance that gets spun up will be inserted into a DNS record over at a Cloudflare hosted DNS zone. The case use for this is that users joining the server can simply remember or bookmark a specific hostname in their mumble client to connect to the server, with the server having the ability to be deployed & destroyed in an ephemeral manner only for when it's actually going to be used, so you're only incurring instance charges for when you're actually using it (when the EC2 instance is running). There would be no need for a static/reserved IP address for subsequent deployments. At present, Cloudflare do not charge for DNS hosting. You'd simply need a domain name setup inside Cloudflare, and you can forgo the costs of a reserved IP address over at AWS, or using a DNS zone at the AWS end.

James's avatar
James committed
*At present, the process to update the Cloudflare DNS zone A record runs on the EC2 instance itself via the startup script (or User Data as AWS call it). It's ideal to have this run locally instead, so that we can avoid any Cloudflare API keys being transported unnecessarily. Essentially, in the way it's been done for the Vultr version of this [here](https://git.jreed.cc/James/mumble-server-vultr-terraform)*

James's avatar
James committed
### Deploying
To deploy this instance, simply issue the following commands:
```
terraform init
terraform plan
terraform apply
```

### Destroying and clearing Cloudflare DNS record
To destroy the environment, simply issue:
```
terraform destroy
```

During this process, Terraform will trigger the ```cloudflare-clear-dns-record.sh``` script. This will simply set the DNS record over at Cloudflare to 127.0.0.1.