Automating VM creation: Difference between revisions

Jump to navigation Jump to search
no edit summary
No edit summary
No edit summary
Line 5: Line 5:


<!--T:2-->
<!--T:2-->
The below virtual machine (VM) setup files are intended to be used to quickly create VMs and clusters of VMs. The files come in two forms, [https://wiki.openstack.org/wiki/Heat Heat] templates, and [https://cloudinit.readthedocs.io/en/latest/ CloudInit] files; both use the [https://en.wikipedia.org/wiki/YAML YAML] file format. CloudInit 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. 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 CloudInit files, once Heat has created the VM it can pass a cloudInit 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).
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-->
cc_staff
1,486

edits

Navigation menu