tosin2013.kvm_cloud_init_vm

Rol de Ansible: Desplegar imagen de cloud init en KVM

Este rol ayuda a desplegar una nueva máquina virtual CentOS 7 en KVM.

Detalles

  • Descargar la imagen de cloud init.
  • Generar datos de usuario/meta de cloud init y la ISO de arranque.
  • Aumentar el tamaño de almacenamiento de root a 20G.
  • Limpiar cd-rom/ISO de arranque/datos de usuario/meta
  • Compatibilidad con ovsswitch
  • Se añadió el script deploy_kvm.sh al repositorio

Nuevo uso

sudo ./deploy_kvm.sh kvm_generation_configs/generic_server 
  • Ejecutar el playbook de ansible
ansible-playbook exampleplaybook.yml

Imagen de Cloud Init Probada

  • CentOS

Requisitos

Ninguno

Variables del Rol

Nombre Valor por defecto Requerido Descripción
kvm_install_host localhost no El host donde se instala KVM
kvm_vm_pool_dir /var/lib/libvirt/images no La ruta donde se almacenan las imágenes de KVM VM
vm_data_dir /root/kvm/vms no La ruta donde se almacenan la información de las VM
vm_recreate true no Establecer en falso si la misma VM existe
cloud_init_vm_image CentOS-7-x86_64-GenericCloud.qcow2 no Nombre de la imagen de cloud init
cloud_init_vm_image_link https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1809.qcow2 no Enlace para descargar la imagen de cloud init
cloud_init_user_data {{vm_data_dir}}/{{vm_name}}/user-data no Archivo de datos de usuario de cloud init
cloud_init_meta_data {{vm_data_dir}}/{{vm_name}}/meta-data no Archivo de metadatos de cloud init
cloud_init_iso_image {{vm_data_dir}}/{{vm_name}}/cidata.iso no Imagen de arranque de cloud init
vm_name CentOS_Base no
vm_local_hostname base.example.com no Nombre de host interno de la VM (puede ser el mismo que vm_hostname)
vm_hostname base.example.com no Nombre de host público de la VM
vm_public_key {{lookup('file','~/.ssh/id_rsa.pub')}} no Clave pública SSH para acceder a la VM (ocp/redhat, centos/(ssh))
vm_cpu 2 no
vm_memory 2048 no
vm_network_br virbr0 no Nombre del puente por defecto que usará la VM
vm_root_disk_size 20G no

Dependencias

Ninguna

Ejemplo de Playbook

- name: Ejemplo de Playbook
  hosts: localhost
  gather_facts: false
  tasks:
    - import_role:
        name: tosin2013.kvm_cloud_init_vm

Licencia

BSD/MIT

Información del Autor

Este rol fue creado en 2018 por Jooho Lee. Modificado por Tosin Akinosho

Acerca del proyecto

Deploy a VM(CentOS7) using cloud-init on KVM

Instalar
ansible-galaxy install tosin2013.kvm_cloud_init_vm
Licencia
bsd-3-clause
Descargas
71
Propietario
Associate Principal Solution Architect RedHat. Enthusiast in Cloud, DevOps, and AI. Specializing in AWS, GCP, Azure, Docker, Kubernetes, and Terraform.