Ansible を使用して Azure で Linux 仮想マシンを管理する
Ansible を使用すると、環境でのリソースの展開と構成を自動化することができます。 この記事では、Ansible プレイブックを使って Linux 仮想マシンの起動と停止を行います。
前提条件
- Azure サブスクリプション:Azure サブスクリプションをお持ちでない場合は、開始する前に無料アカウントを作成してください。
Ansible のインストール: 次のいずれかのオプションを実行します。
- Linux 仮想マシンに Ansible をインストールして構成する
- Azure Cloud Shell の構成 - アクセスできる Linux 仮想マシンがない場合は、Ansible で仮想マシンを作成できます。
仮想マシンの停止
このセクションでは、Ansible を使って Azure 仮想マシンの割り当て解除 (停止) を行います。
Azure portal にサインインします。
Cloud Shell を開きます。
azure-vm-stop.yml
という名前のファイルを作成し、エディターで開きます。code azure-vm-stop.yml
以下のサンプル コードをエディターに貼り付けます。
- 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
{{ resource_group_name }}
および{{ vm_name }}
プレースホルダーを、実際の値に置き換えます。ファイルを保存し、エディターを終了します。
ansible-playbook を使用してプレイブックを実行します
ansible-playbook azure-vm-stop.yml
プレイブックを実行すると、次の結果のような出力が表示されます。
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 を使って起動します。
Azure portal にサインインします。
Cloud Shell を開きます。
azure-vm-start.yml
という名前のファイルを作成し、エディターで開きます。code azure-vm-start.yml
以下のサンプル コードをエディターに貼り付けます。
- 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
{{ resource_group_name }}
および{{ vm_name }}
プレースホルダーを、実際の値に置き換えます。ファイルを保存し、エディターを終了します。
ansible-playbook を使用してプレイブックを実行します
ansible-playbook azure-vm-start.yml
プレイブックを実行すると、次の結果のような出力が表示されます。
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