RHEL8 beta で Python3 を入れて Ansible から操作できるようにする

まずは subscribe しておきます。

Python3 を入れます。RHEL8 beta では最初から Python がインストールされていないので、Ansible からいじることができません。

(追記) platform-python を使うのが筋のようです。

無事入りました。

/usr/libexec/platform-python を参照させるのがいいみたいです。一応確認してみます。

Python が入ったということで、実際に Ansible Tower から接続してみます。まずはインベントリを定義。ansible_python_interpreter は ansible 2.8 からは自動で検出してくれるそうです。

認証情報を設定して、ad hoc コマンドの ping モジュールで繋いでみます。

これで無事繋がることがわかりました。よしよし。

ESXi 上の RHEL7 をいじる

ESXi 6.7 を立てまして、RHEL 7.6 を5台インストールしました。これを Ansible からいじってみます。

まずはインベントリの取得から。

https://github.com/ansible/ansible/blob/devel/contrib/inventory/vmware_inventory.py

を使ってみました。vmware_inventory.py と vmware_inventory.ini を取得してきます。

vmware_inventory.ini を編集して設定します。このように作ってみました。

実行してみます。かなり大きな JSON が返ってきました。いまの ESXi には RHEL7 や RHEL8beta、Kali Linux が入っています。

vmware-inventory コマンドを使って、ダイナミックインベントリとして読めることを確認します。–graph か –list を指定すると、インベントリとして読み取った結果を表示することができます。グループ分けもされていることがわかります。

この RHEL7.6 のグループ5台に対して、subscribe して yum update してみる playbook を書いてみました。

実行してみます。

無事処理できました。ログインして確認してみます。

いい感じですね!