Cloud Wrappers
This library contains items that help run Digital Rebar manage machines on public clouds. It uses Terraform tasks to create/delete machines and Ansible tasks join the machine to install the Digital Rebar runner. Once the runners starts, it will collect cloud specific data if a Metadata API is available.
TL;DR: cloud-provision
uses the v4.8 Resource Brokers to create and attach machines to Terraform accessible platform.
Requirements¶
Inbound Access¶
The Digital Rebar Server must be at a location that is accessible to the machines being provisioned. This is required because the machines must be able to download the join-up
script from the server using port 8090.
Outbound Access¶
Is NOT required unless you are using a cloud provider that requires SSH into the newly created machines.
As of v4.8, none of the major cloud providers (AWS, Azure, Google, Linode, Digital Ocean) required SSH to join-up.
Catalog Items¶
The Cloud Wrapper requires Contexts because it uses Runner and Terraform. If SSH is required then the Ansible Context is used.
Setting Up Cloud Brokers¶
When you create a Cloud Broker, you must set Security credentials for each cloud.
The cloud-profiles script in the RackN provision-content repo can be used to create the
AWS¶
aws/access-secret
aws/access-key-id
Additional values, e.g. region, image and instance type, have safe defaults but should be reviewed.
Google¶
- google/credential - this is a copy of contents from the JSON file Google provides
Additional values, e.g. region, image and instance type, have safe defaults but should be reviewed.
Libvirt¶
libvirt/uri
You can additionally provide libvirt/ssh-key if your libvirt instance is not local.
Linode¶
linode/token
Additional values, e.g. region, image and instance type, have safe defaults but should be reviewed.
Proxmox¶
See the Profile documentation for resource-proxmox-cloud
for more detailed use of the
Proxmox Resource Broker. Specifically; new clusters WILL fail with the default configuration,
and the operator MUST set alternative values for broker/set-pipeline
and broker/set-workflow
on the Cluster.
The following are required Resource Broker Params for Proxmox use:
proxmox/node
proxmox/user
proxmox/password
Optional Values¶
When possible, the machine on the cloud provider is given the name of the machine in Digital Rebar.
The reference terraform plan will create tags on the cloud provider based on the assigned profiles. It also creates one called "digitalrebar." This can be handy to find or manage the machines on the cloud provider.