cc_staff
1,486
edits
No edit summary |
No edit summary |
||
Line 5: | Line 5: | ||
<!--T:2--> | <!--T:2--> | ||
To automate the creation of cloud VMs, volumes, etc. [https://wiki.openstack.org/wiki/Heat Heat], [[Terraform]], or the [[OpenStack python API]] can be used. To install and configure settings and software within the VM [https://cloudinit.readthedocs.io/en/latest/ cloud-init] is used. | |||
Cloud-init files are used to initialize a particular VM and run within that VM. They can be thought of as a way to automate tasks you would perform at the command line while logged into your VM. They can be used to perform tasks such as updating the operating system, installing and configuring applications, creating files, running commands, and create users and groups. Cloud-init can be used to setup other provisioning tools such as [https://docs.ansible.com/ ansible] or [https://puppet.com/ puppet] to continue with the software and VM configuration if desired. | |||
Heat templates are even more powerful, they can be used to automate tasks performed in the OpenStack dashboard such as creating multiple VMs at once, configuring security groups, creating and configuring networks, and creating and attaching volumes to VMs. Heat templates can be used in conjunction with Cloud-init files, once Heat has created the VM it can pass a cloud-init file to that VM to perform setup tasks and even include information about other resources dynamically in the CloudInit files (e.g. floating IPs of other VMs). | |||
Both cloud-init and Heat templates use the [https://en.wikipedia.org/wiki/YAML YAML] file format. | |||
==Enabling CVMFS on your VM== <!--T:3--> | ==Enabling CVMFS on your VM== <!--T:3--> |