LoginSignup
6
5

More than 5 years have passed since last update.

Ansible の Azure モジュールについて

Last updated at Posted at 2015-12-14

パラメータと使い方をメモしています。(version 2.0.0)
Azure も含めての利用方法はこちら Ansible で Azure 上にプロビジョニング!

Inventory

インベントリ(hosts)
127.0.0.1 ansible_connection=local

Playbook

プレイブック(playbook.yml)
---
- hosts: localhost
  gather_facts: no

  tasks:
  - name: Create Virtual Machine on Azure (for Windows)
    azure: 
      auto_updates: no  
      enable_winrm: yes
      endpoints: "3389" # 
      image: 'bd507d3a70934695bc2128e3e5a255ba__RightImage-Windows-2012R2-x64-v14.2'
      location: 'Japan West'
      management_cert_path: /home/vagrant/azure/manage.cer
      hostname: hogehoge
      name: hogehoge
      os_type: windows
      user: azureuser
      password: "Password_123"
      role_size: Basic_A2
      state: present
      storage_account:
      subscription_id:

Azure モジュール

Python Azure モジュール用意

Ansible で用意されている Azure モジュールは以下の環境でサポート。

  • Pyhon >= 2.6
  • Python azure module >= 0.8.0 (Ansible マニュアルは少し古い情報)

追加で Python の Azure モジュールをインストールしておく。

Ansible Azure モジュールパラメータ

以下は、必須および指定しておいたほうが良いパラメータをBoldとしている。

  • auto_update
    • 自動アップデートの有無
  • enable_winrm
    • winrm の有効化(これは基本的に yes 、デフォルトも yes)
  • endpoints
    • 外から仮想マシンへアクセス可能にするTCPポートを指定(カンマで複数可能、デフォルト
    • パブリックとプライベートで同じポート番号になる
  • hostname
    • /etc/hostname に書かれる、.cloudapp.net の name 部
  • image
    • 仮想マシンのイメージIDを指定(Azure CLI にて azure vm image list で確認可能)
  • location
    • 仮想マシンを稼働させるロケーション指定(Azure CLI にて azure vm location list で確認可能)
  • management_cert_path
    • 管理証明書のパスを指定(環境変数 AZURE_CERT_PATH で指定することも可能)
  • name
    • 仮想マシンと関連するクラウドサービスの名前を指定
  • os_type
    • OSタイプ windows or linux
  • password
    • Linux 仮想マシンのパスワード
  • reset_pass_atlogon
    • Windows 仮想マシンへ最初のログインの際に管理者バスワードをリセットするか否か
    • ResetPasswordOnFirstLogon パラメータは廃止されているため利用不可Fixed
  • role_size
  • ssh_cert_path
    • 仮想マシンにインストールするためのSSH公開鍵を含むX509証明書のパスを指定
  • state
    • 仮想マシンを作るのか消すか(デフォルトは present)
  • storage_account
    • Azure のストレージアカウント名
  • subscription_id
    • Azure のサブスクリプションID(環境変数 AZURE_SUBSCRIPTION_ID で指定することも可能)
  • user
    • Linux 仮想マシンのユーザ名
  • virtual_network_name
    • 仮想ネットワーク名
  • wait
    • Running 状態になるまでに待つか否か
  • wait_timeout
    • どのくらい待つか(秒、デフォルトは600)
  • wait_timeout_redirects
    • リダイレクトのためにどのくらい待つか(秒、デフォルトは300)

Ansible 実行

$ ansible-playbook -i hosts playbook.yml 

参考

6
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
5