第1章 概要

Puppet は、システム設定の適用および管理を行うためのツールです。Puppet はシステム情報 (ファクト) を収集し、この情報を使用して、モジュールセットでカスタマイズされたシステム設定を作成します。これらのモジュールには、パラメーター、条件付き引数、アクション、テンプレートが含まれます。Puppet は、ローカルシステムのコマンドラインツールとして使用されるか、またはサーバーが Puppet マスターとして機能し、Puppet エージェントを使用して複数のクライアントシステムに設定を適用するクライアント/サーバー関係において使用されます。これにより、新たにプロビジョニングしたシステムが (個別または同時に) 自動的に設定される方法が提供され、特定のインフラストラクチャーが作成されます。

1.1. Puppet ワークフローの定義

Puppet は、以下のワークフローを使用して設定をシステムに適用します。

  1. 各システムに関するファクトを収集します。これらのファクトには、ハードウェア、オペレーティングシステム、パッケージバージョンなどの情報が含まれます。各システムの Puppet エージェントは、この情報を収集して、Puppet マスターに送信します。
  2. Puppet マスターは各システムのカスタム設定を生成し、Puppet エージェントに送信します。このカスタム設定はカタログと呼ばれます。
  3. Puppet エージェントは、設定をシステムに適用します。
  4. Puppet エージェントは、変更の適用済みおよび変更の失敗を示す Puppet マスターにレポートを送り返します。
  5. サードパーティーアプリケーションは、Puppet の API を使用してこれらのレポートを収集できます。