terraform resources, modules and other configuration items
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Marius Pana 1c68ccc1b5
Merge pull request #1 from simplekube-ro/add_kubernetes_cluster
1 year ago
kubernetes-cluster add kubernetes cluster sample 1 year ago
terraform/triton new example scripts 2 years ago
triton update examples 2 years ago
.gitignore gitignore, remove swap file 2 years ago
README updated readme 2 years ago
README.md renamed readme 2 years ago

README.md

Terraform resources

Terraform templates and other resources/examples for use with spearhead.coud or other triton providers.

In the terraform directory you will find some templates to help get you started. Remove the tpl extension and modify to your liking.

Examples

Provision a vm

$ git clone https://github.com/spearheadsys/terraform-spearhead.cloud.git

edit the main.tf file

terraform {
  required_providers {
    triton = {
      source = "joyent/triton"
      version = "0.8.2"
    }
  }
}

provider "triton" {
    account = "username"
    key_id  = "key:id"
    url = "https://eu-ro-1.api.spearhead.cloud"
    key_material = "/path/to/id_rsa"
    insecure_skip_tls_verify = false
}

resource "triton_machine" "internal_resource_name" {
  // customize these if you need to create multiple instances
  // comment our the count if you need just one
  // remove the variable count.index from the name if so
  count   = var.instance_count
  name    = "linux-${count.index + 1}"
  package = "standard-2cpu-4ram-100disk"
  // choose on image (lx, hvm or smartos)
  image   = "b70d5484-5168-4ecb-8127-0a0c59c1d906"

/*
// Use these (provisioner file and remote-exec if you would like to 
// further customize or run specific commands once the instance 
// is provisioned

  provisioner "file" {
    source = "scripts/setup.sh"
    destination = "/var/tmp/setup.sh"
  }

  provisioner "remote-exec" {
    inline = [
      "bash /var/tmp/setup.sh",
    ]
  }
*/

  connection {
    type = "ssh"
    host = self.primaryip
    user = "ubuntu"
  }

/*
// use this to configure the Container Namer Service within triton and access
// your system(s) via a service name/tag defined in the variables.tf file
// you would then be able to access your system(s) via dns. For more details see
// [this](http://docs.spearhead.cloud/dns/)

  cns {
        services = ["${var.service_name}"]
  }
*/
}

Provision using terraform(hvm bhyve ubuntu 20.04.03)

$ terraform init
$ terraform plan
$ terraform apply

Creating images with Packer

coming soon...