入門Puppet - Automate Your Infrastructure
価格: ¥0
クラウドが一般的になってきた昨今、サーバ構成管理の自動化は、もはやそれなしでは考えられないほど当たり前のものになっています。Puppetは、そのためのフレームワークのひとつです。
Puppetは2005年のリリース以来、後発のChefとともに、サーバ構成管理の自動化に欠かせないフレームワークとして広く利用されてきました。とはいえ、ドキュメントが非常に充実してはいるもののその機能は膨大で、初心者にとって決してとっつきやすいものでないことは確かでしょう。現に、筆者の周りでも「Puppetを学習してみたいけど、どこから手をつけたらいいのか……」という声をよくききます。
クラウドの一般化によって、物理的な制約から離れ、サーバをあたかもプログラム上のオブジェクトであるかのように扱えるようになった現在、エンジニアにとって、Puppetのような自動化ツールを使いこなせるようになることは、技術スキルの向上に大きく寄与するでしょう。この本は、既にPuppetなどの自動化ツールを使いこなしているオペレーションエンジニアよりもむしろ、技術向上への意欲を燃やすアプリケーション開発者への入門となることを目指しています。
本書の目標は、この本を読んだ読者がPuppetの基本についてひととおり知り、オペレーションエンジニアの書いたmanifest(サーバのあるべき状態を記述した設定ファイルのようなもの。後述)に変更を加えたり、ある程度の規模のものなら自力でいちから書けるようになったりすることです。そのため、本書はあえてリファレンスとしての網羅性を目指しません。実際の学習段階で必要となる知識にしぼって説明します。
是非、本書を読みながら自分でも手を動かしてみて、一歩先行くエンジニアになってみませんか。
(本書「はじめに」より)
■ 目次
  1.  はじめに
  2.  なぜPuppetが必要なのか?
  3.  本書の方針
  4.  Vagrantで開発環境を用意する
  5.  Hello, Puppet!
  6.  nginxのmanifestを書く
  7.  パッケージをインストールする - package
  8.  yumリポジトリを登録する - yumrepo
  9.  サービスを起動する - service
  10. ファイルやディレクトリを作成する - file
  11. ユーザやグループを作成する - user/group
  12. 任意のコマンドを実行する - exec
  13. td-agentのmanifestを書く
  14. resource typeのグルーピング - class
  15. manifestに関連するファイルをまとめる - module
  16. サーバの役割を定義する Part.1
  17. サーバの役割を定義する Part.2
  18. manifestの共通部分をくくりだす
  19. 最低限必要なPuppet言語の構文を学ぶ
  20. システム状態をテストする - serverspec
  21. リモートホストに対してmanifestを適用する
  22. 再び、なぜPuppetが必要なのか?
  23. おわりに