Управление виртуальными машинами Linux в Azure с помощью Ansible

Ansible позволяет автоматизировать развертывание и настройку ресурсов в среде. В этой статье описано, как запустить и остановить виртуальную машину Linux с помощью сборника схем Ansible.

Необходимые компоненты

Останов виртуальной машины

В этом разделе вы отмените выделение (остановите) виртуальной машины Azure с помощью Ansible.

  1. Войдите на портал Azure.

  2. Откройте Cloud Shell.

  3. Создайте файл azure-vm-stop.yml и откройте его в редакторе.

    code azure-vm-stop.yml
    
  4. Вставьте следующий пример кода в редактор.

    - 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. Замените заполнители {{ resource_group_name }} и {{ vm_name }} собственными значениями.

  6. Сохраните файл и закройте редактор.

  7. Запустите сборник схем с помощью команды ansible-playbook.

    ansible-playbook azure-vm-stop.yml
    
  8. После запуска сборника схем отобразятся результаты, аналогичные приведенным ниже.

    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
    

запуск виртуальной машины

В этом разделе вы запустите остановленную виртуальную машину Azure (т. е. выделение которой было отменено) с помощью Ansible.

  1. Войдите на портал Azure.

  2. Откройте Cloud Shell.

  3. Создайте файл azure-vm-start.yml и откройте его в редакторе.

    code azure-vm-start.yml
    
  4. Вставьте следующий пример кода в редактор.

    - 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. Замените заполнители {{ resource_group_name }} и {{ vm_name }} собственными значениями.

  6. Сохраните файл и закройте редактор.

  7. Запустите сборник схем с помощью команды ansible-playbook.

    ansible-playbook azure-vm-start.yml
    
  8. После запуска сборника схем отобразятся результаты, аналогичные приведенным ниже.

    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
    

Следующие шаги