はじめに
本記事について
AnsibleでWindowsを操作する準備をする を参考に Mac で実行する場合に必要だった手順をまとめた記事です
書いてあること & やったこと一覧
- Mac に Ansible をインストールするところから win_ping が実行できるところまで
- Homebrew で Ansible をインストール
- pip インストール、アップデート
- pip で pywinrm をインストール
- Mac から Windows への ping
- win_ping 実行
書いてないこと
- Windows 側の設定
環境
Mac ( Ansible を実行する側 )
- macOS Mojave ( 10.14.6 )
- Homebrew 2.1.13
- Ansible 2.8.5
- Python 3.7.4
- pip 19.2.3
Windows ( Ansible を実行される側 )
- Windows 10 Home 1903
手順
Ansible インストール
Homebrew で Ansible をインストール
brew install ansible
Python のインストールでエラーになった場合
Homebrewで入れたPythonでのlinkエラー問題 のコマンドを実行で解決した
pip インストール
Ansible のインストールで入った Python には pip が同梱されてなかったので python2.7.10でpip:command not foundになる。 を参考に pip インストール
pywinrm インストール
sudo pip install pywinrm
pywinrm のインストールでエラーになった場合
pip のインストール直後だったからか openssl 関連でエラーになった
pip 自身をアップデートしてから再度実行したら成功した
sudo pip install -U pip
参考: https://github.com/ansible/ansible/issues/34056
※違うものだけど解決したから多分根本は一緒?
Mac から Windows に対して ping
Windows 側に Ansible 周りの設定をしたら一応疎通確認する
win_ping 実行
インベントリファイルを作成し、 win_ping を試す
ansible -i hosts windows -m win_ping
fork でエラーになる場合
ここ に書いてあった通りに環境変数を設定したら解決した
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
おわりに
出そうなエラーをほとんど踏んだ気がしますが無事 Mac から Windows が Ansible るようになりました
時間ができたら こっち( WinRM 接続じゃなくて ssh 接続板 ) も試してみたい