次に、Ansible(の依存)のビルドに必要なパッケージを入れる。openssl-develさらに、AnsibleからのSSH接続で(鍵ではなくて)パスワードを使う場合に必要なパッケージも入れる。sshpasssshpassの依存としてopensshも入った。3にはpipが付いてなかったので、別途入れる。python3-pipでも入る。)で、ようやくAnsibleインストール。ansible依存するPyNaClのビルドに20分くらいかかるのでゆっくり待つと、インストール完了するはず。2.5.4がインストールされた。AnsibleでJinja2のipaddrフィルターを使うために、もう一つPyPiパッケージ入れる。netaddrPackerテンプレート作成ビルドは、OSインストールメディアのISOファイルを使うVirtualBoxのビルダであるvirtualbox-isoを指定して書いた。Commandをテンプレートに書くことで、インストーラのGUIを操作してやることもできるけど、RHEL系ならKickstartを使うのが楽。Kickstartの定義ファイルは、普通に手動でOSをインストールした後、/root/anaconda-ks.cfgを採取して、必要に応じて編集して作る。今回作ったのはこれで、このスレを参考に、Minimalインストールから、Wifiのファームウェアとか要らないのを抜いてる。1.10のクラスタを全手動で構築するのをAnsibleで全自動化した」ときのPlaybookを実行するやつを公式マニュアル見ながら適当に書いて、ポストプロセスも適当に書いて、できたのがこれ。ControlMaster=noを入れているのは、この問題に対応するため。MSYSのショートカットからターミナルを開いて、Packerを実行してみたら以下のエラー。コマンドが見つかりませんWindowsのPathが通ったところにPackerバイナリを置いておいてもMSYS2からは見えない。packerバイナリのフルパス(今回はC:\Users\kaitoy\Desktop\bin\にインストールしてたのでそのパス)を指定してやる。%PATH%と、今度は、ansible-playbookが無いと言われる。ansible-playbookはansibleパッケージに入っていて/usr/bin/にインストールされているんだけど、Windows界で動いているPackerからはLinuxのPATHが見えないので、見つけられない。AnsibleのPlaybookのパスなど、Packerが妙な気を利かせてWindowsのフルパスにしてansible-playbookに渡してくれちゃうので、それをLinuxなパスに変換してやる必要がある。いうことで、以下のようなラッパスクリプトを書いて、カレントディレクトリに置くことにした。%args%以上でちゃんと実行できるようになった。以下を実行すればいい。buildに-debugを渡すと、内部の処理ステップごとに停止するようになり、デバッグしやすい。一回実行したらゴミができて、次回実行時にエラーになるので、以下でクリーンアップする必要がある。~/.ssh/known_hosts因みに、上記known_hostsを消し忘れると以下のようなエラーになる。1.8のアクセス制御について。あとDashboard。dockerKubernetes1.8のクラスタを構築する。