The goal of this code is to supply the minimal ammount of information to quickly have working Ampere Tau2a instances on Google Cloud.
Addtional tasks performed by this code:
- Dynamically creating sshkeys to use when logging into the instance.
- Dynamically getting region, availability zone and image id..
- Creating necessary core networking configurations for the tenancy
- Rendering metadata to pass into the Ampere A1 instance.
- Launch multiple Ampere taut2a instances with metadata and ssh keys.
- Output IP information to connect to the instance.
To get started clone this repository from GitHub locally.
The easiest way to configure is to use a terraform.tfvars in the project directory. Please note that Compartment OCID are the same as Tenancy OCID for Root Compartment. The following is an example of what terraform.tfvars should look like:
project_id = "myterraform-123456"
location = "US"
This can also be used as a terraform module. The examples directory contains example code for module usage showing different operating systems booting with a custom cloud-init templates. Doing a clone of this repository and changing directory to one of the examples, placing a terraform.tfvars into that directory, and running a typical terrafornm workflow will produce a working virtual machine in the os that was specified in the main.tf that is located within the chosen example directory.
terraform init && terraform plan && terraform apply -auto-approve
tofu init && tofu plan && tofu apply -auto-approve
Once everthing as executed, properly you'll need to login. Currently I successfully login via my google cloud email account in the following format. Where the "@" symbal and "." are replaces with underscores.
for example:
ssh -i
Reference for OS images https://cloud.google.com/compute/docs/images/os-details