This is a Terraform project to deploy DigitalOcean droplets for my LPI classes
Du kannst nicht mehr als 25 Themen auswählen Themen müssen entweder mit einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

1.4KB

Terraform setup for DigitalOcean

This is a teraform setup for my LPI Labs. The servers are deployed on DigitalOcean. The DNS is automatically updated with the server names.

Prerequisites

  • Install Terraform on your local host:
$ wget https://releases.hashicorp.com/terraform/0.11.7/terraform_0.11.7_linux_amd64.zip
$ unzip terraform_0.11.7_linux_amd64.zip
$ sudo cp terraform /usr/local/bin

Instructions

  • Get the repo
$ git clone https://git.theo-andreou.org/Personal/lpi-deploy-digitalocean.git
$ cd lpi-deploy-digitalocean
  • Copy the terraform.tfvars.example to terraform.tfvars and setup your settings:
do_token = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
domain = "example.org"
count = 14

server_name = {
  "debian" = "lpi-deb"
  "centos" = "lpi-centos"
}

images = {
  "debian" = "debian-9-x64"
  "centos" = "centos-7-x64"
}

ssh_keys = [
    "xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx",
]

dns_server = "ns1.example.org"
dns_key_name = "control.ns1.example.org"
dns_key = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/xxxxxxxxxxxxxxxxxxxxxxxxxxx+xxxxxxxxxxxxxxxxxxxxx+xxx=="
  • Initialize your Terraform environment:
$ terraform init
  • Create a Terraform plan:
$ terraform plan -out lpi.plan
  • Apply the plan:
$ terraform apply "lpi.plan"

References