Administración de máquinas virtuales Linux en Azure con Ansible

Ansible permite automatizar la implementación y la configuración de recursos en un entorno. En este artículo, va a utilizar un cuaderno de estrategias de Ansible para iniciar y detener una máquina virtual Linux.

Requisitos previos

  • Suscripción de Azure: si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Detención de una máquina virtual

En esta sección, va a usar Ansible para desasignar (detener) una máquina virtual de Azure.

  1. Inicie sesión en Azure Portal.

  2. Abra Cloud Shell.

  3. Cree un archivo llamado azure-vm-stop.yml y ábralo en el editor:

    code azure-vm-stop.yml
    
  4. Pegue el siguiente código de ejemplo en el editor:

    - name: Stop Azure VM
      hosts: localhost
      connection: local
      tasks:
        - name: Stop virtual machine
          azure_rm_virtualmachine:
            resource_group: {{ resource_group_name }}
            name: {{ vm_name }}
            allocated: no
    
  5. Reemplace los marcadores de posición {{ resource_group_name }} y {{ vm_name }} por sus valores.

  6. Guarde el archivo y salga del editor.

  7. Ejecute el cuaderno de estrategias mediante ansible-playbook.

    ansible-playbook azure-vm-stop.yml
    
  8. Tras ejecutar el cuaderno de estrategias, debería ver resultados similares a los siguientes:

    PLAY [Stop Azure VM] ********************************************************
    
    TASK [Gathering Facts] ******************************************************
    ok: [localhost]
    
    TASK [Deallocate the Virtual Machine] ***************************************
    changed: [localhost]
    
    PLAY RECAP ******************************************************************
    localhost                  : ok=2    changed=1    unreachable=0    failed=0
    

Inicio de una máquina virtual

En esta sección, usará Ansible para iniciar una máquina virtual de Azure desasignada (detenida).

  1. Inicie sesión en Azure Portal.

  2. Abra Cloud Shell.

  3. Cree un archivo llamado azure-vm-start.yml y ábralo en el editor:

    code azure-vm-start.yml
    
  4. Pegue el siguiente código de ejemplo en el editor:

    - name: Start Azure VM
      hosts: localhost
      connection: local
      tasks:
        - name: Start virtual machine
          azure_rm_virtualmachine:
            resource_group: {{ resource_group_name }}
            name: {{ vm_name }}
            started: yes
    
  5. Reemplace los marcadores de posición {{ resource_group_name }} y {{ vm_name }} por sus valores.

  6. Guarde el archivo y salga del editor.

  7. Ejecute el cuaderno de estrategias mediante ansible-playbook.

    ansible-playbook azure-vm-start.yml
    
  8. Tras ejecutar el cuaderno de estrategias, debería ver resultados similares a los siguientes:

    PLAY [Start Azure VM] ********************************************************
    
    TASK [Gathering Facts] ******************************************************
    ok: [localhost]
    
    TASK [Start the Virtual Machine] ********************************************
    changed: [localhost]
    
    PLAY RECAP ******************************************************************
    localhost                  : ok=2    changed=1    unreachable=0    failed=0
    

Pasos siguientes