Ansible ESXiのDNSサーバ、ドメイン名、ホスト名を一括変更する

Ansibleを使用することで、ESXiのDNSサーバ、ドメイン名、ホスト名を一括変更することができます。

 

最初にIPアドレスだけ割り当てておいて、一括設定できるのが便利です。

 

基本は初期セットアップで設定することが多いので、ある程度、一括設定する内容をまとめないと工数削減にはならないかもしれません。

 

情報元はこちら

vmware_dns_config – Manage VMware ESXi DNS Configuration — Ansible Documentation

 

要件
このモジュールを実行するホストでは、以下の要件が必要です。

python> = 2.6

PyVmomi

 

 

change_hostname_to 
文字列 /必須
ESXiホストを変更する必要があるホスト名。

dns_servers 
リスト /必須
ホストが使用するように構成する必要があるDNSサーバー。

domainname
文字列 /必須
ESXiホストが離れている必要があるドメイン

hostname
ストリング
vSpherevCenterまたはESXiサーバーのホスト名またはIPアドレス
タスクで値が指定されていない場合は、VMWARE_HOST代わりに環境変数の値が使用されます。
Ansible2.6で追加された環境変数のサポート。

password
ストリング
vSpherevCenterまたはESXiサーバーのパスワード。
タスクで値が指定されていない場合は、VMWARE_PASSWORD代わりに環境変数の値が使用されます。
Ansible2.6で追加された環境変数のサポート。
エイリアス:pass、pwd

port
整数
2.5で追加
デフォルト:
443
vSpherevCenterまたはESXiサーバーのポート番号。
タスクで値が指定されていない場合は、VMWARE_PORT代わりに環境変数の値が使用されます。
Ansible2.6で追加された環境変数のサポート。

proxy_host 
ストリング
2.9で追加
すべてのHTTPSリクエストを受信して​​中継するプロキシのアドレス。
形式はホスト名またはIPです。
タスクで値が指定されていない場合は、VMWARE_PROXY_HOST代わりに環境変数の値が使用されます。
この機能は、v6.7.1.2018.12以降のバージョンのpyvmomiに依存します

proxy_port
整数
2.9で追加
すべてのHTTPSリクエストを受信して​​中継するHTTPプロキシのポート。
タスクで値が指定されていない場合は、VMWARE_PROXY_PORT代わりに環境変数の値が使用されます。

username
ストリング
vSpherevCenterまたはESXiサーバーのユーザー名。
タスクで値が指定されていない場合は、VMWARE_USER代わりに環境変数の値が使用されます。
Ansible2.6で追加された環境変数のサポート。
エイリアス:admin、user

validate_certs 
ブール値
選択肢:
番号
はい ←
SSL証明書が無効な場合に接続を許可します。false証明書が信頼されていない場合に設定します。
タスクで値が指定されていない場合は、VMWARE_VALIDATE_CERTS代わりに環境変数の値が使用されます。
Ansible2.6で追加された環境変数のサポート。
に設定されている場合はyes、Python>=2.7.9が特定のマシンにインストールされていることを確認してください。

 

 

===

- name: Configure ESXi hostname and DNS servers
  vmware_dns_config:
    hostname: '{{ esxi_hostname }}'
    username: '{{ esxi_username }}'
    password: '{{ esxi_password }}'
    change_hostname_to: esx01
    domainname: foo.org
    dns_servers:
        - 8.8.8.8
        - 8.8.4.4
  delegate_to: localhost

===

 

上記例のパラメータは不足するとエラーになります。

 

Ansible実践ガイド 第3版 impress top gearシリーズ