Terraform for the following configuration:
- OpenStack virtualised lab instances
- An OpenStack virtualised container registry instance
- Cinder volumes for instance storage
- Floating IPs for networking
This Terraform deployment reproduces the environment for a universe from nothing workshop on OpenStack infrastructure.
- A Neutron network the instances can attach to, with a router
- Plenty of resource quota
- Terraform installed (see instructions here)
Kayobe enables the deployment of containerised OpenStack to bare metal.
After cloning this repo, source the regular OpenStack rc file with the necessary vars for accessing the A Universe From Nothing lab project.
There are various variables available for configuration. These can be seen
in vars.tf
, and can be set in terraform.tfvars
(see sample file
terraform.tfvars.sample
).
Create the resources using Terraform:
terraform init
terraform plan
terraform apply -auto-approve -parallelism=52
To reprovision a lab machine:
terraform taint openstack_compute_instance_v2.lab[#]
terraform apply -auto-approve
where #
is the lab index which can be obtained from the web UI.
To destroy the cluster:
terraform destroy
SSH in to your lab instance by running and entering the provided password:
ssh lab@<lab-ip-address> -o PreferredAuthentications=password
The default password is the id of the lab instance. As such, it is recommended
that you run passwd
immediately to change the default password.
Make sure that nested virtualisation is enabled on the host:
egrep --color 'vmx|svm' /proc/cpuinfo
Look for vmx or svm coloured red in the output.
Ensure that the initialsation steps are complete by looking at the log:
tail -f a-seed-from-nothing.out
When complete, it should report an elapsed time as follows:
[INFO] 22 minutes and 3 seconds elapsed.
ssh [email protected]
docker ps
exit
Look at the steps involved in deploying Kayobe control plane:
less a-universe-from-seed.sh
Join the discussion at #openstack-kolla
channel on IRC.