Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/wnkz/dcos-terraform
DCOS on AWS with Terraform
https://github.com/wnkz/dcos-terraform
Last synced: 3 days ago
JSON representation
DCOS on AWS with Terraform
- Host: GitHub
- URL: https://github.com/wnkz/dcos-terraform
- Owner: wnkz
- License: mit
- Created: 2015-08-13T12:02:31.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2015-08-17T13:08:43.000Z (about 9 years ago)
- Last Synced: 2023-03-12T05:33:07.282Z (over 1 year ago)
- Language: HCL
- Size: 148 KB
- Stars: 4
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dcos-terraform
Deploy [DCOS](https://mesosphere.com/product/) on AWS with [Terraform](https://www.terraform.io/)## Disclaimer
This project is **not** affiliated with [mesosphere.com](https://mesosphere.com/) or [terraform.io](https://www.terraform.io/) ; there is absolutely **no** guarantee whatsoever.
You are 100% responsible for what you decide to run on you computer.The AWS resources deployed by this project are **not** free, you are the only responsible for any unplanned costs.
## What is this ?
Currently, [dcos-single-master](dcos-single-master) deploys DCOS 1.1 early access. I plan to add / update different version as DCOS evolves.
## Differences with CloudFormation template
This install differs a bit from what you can find at https://downloads.mesosphere.com/dcos/EarlyAccess/aws.html.
* Default instance type is `m4.xlarge` instead of `m3.xlarge`
* A 100 Go EBS volume is attached to every slave node. This is mainly because `m4` generation on AWS does not provide ephemeral disks anymore and is EBS optimized by default.## How to use ?
Like with DCOS with CloudFormation, you will need a SSH keypair ; create one and remember its name.
##### `terraform apply`
```
terraform apply -var 'key_name=PRIVATE_KEY_NAME' -var 'aws_access_key=YOUR_ACCESS_KEY' -var 'aws_secret_key=YOUR_SECRET_KEY' -var 'admin_location=YOUR_PUBLIC_IP/32'
```##### WARNING
If you do not specify an `admin_location` variable, access will be allowed to `0.0.0.0/0`
See [variables.tf](dcos-single-master/variables.tf) for all the variable you can change with the `-var` Terraform flag.
## Known issues
At the moment, and due to a Terraform bug with `create_before_destroy = true` (https://github.com/hashicorp/terraform/issues/2493) `terraform destroy` (and `terraform plan -destroy`) will not work as intended.
As a temporary workaround, you can do:
```bash
sed -i '' -e 's/create_before_destroy = true/create_before_destroy = false/g' dcos-single-master/*.tf
terraform destroy
sed -i '' -e 's/create_before_destroy = false/create_before_destroy = true/g' dcos-single-master/*.tf
```## TODOs
- [ ] Fix `create_before_destroy` issues
- [ ] Support multi master HA DCOS install
- [ ] More customization