Puppetを触る必要が急にやって来たので以前にかっていた入門Puppetをひと通り呼んだのでその感想を
程よくまとまっている
Puppetや構成管理の何たるかがわからなくとも、一緒に手を動かしながら読み進めていくとPuppetとVagrantの簡単な使い方が自然と身についていきます。
自分が16章くらいまでしか読み進めなかったのもあるのですが、簡単な構成管理をするものであればこの本で十分に実装可能だと思います。
仕事で使うものとなるとさらに広範な知識が必要になると思います。この本を呼んだあとにPuppet Labをみると英語ですが情報がかなり豊富なのでいろいろ見れます。
躓いたところ
冪等性という「いつでもこの状態になっている」というものを担保するのが結構難しかったです。
これを呼んだきっかけが、rubyをソースからインストールためだったのでわりとexecだらけだったため、条件で処理を分ける必要がありました。基本的には難しいことはせず unlessやonlyifでにげてなんとかインストール後は何もコマンドが実行されない状態までもっていけました。
あと地味に変数をモジュールで持たせるのに苦労して結果
- 変数をまとめたクラス(modulename::classname)に変数(class_val)をつくる
- そのクラスを include する
- 呼び出すときは $modulename::classname::class_val でよぶ
みたいなことをしました。
サーバ構築が楽しくなる
今まで、サーバ構築あんま好きでも嫌いでもなかったんですが、作ったものが動いてく瞬間がわかりやすいのでこれは結構楽しいなと思いました。また、時々しか作ったサーバの設定を行わないので忘れることが多くその都度設定を確認してたんですが、これがあればこれ自体仕様になるので単純な良さがあります。
仕事で今回はrubyだけでしたが、自分用のサーバ設定をpuppetでやっていきたいと思います。