Puppet 入門 マニフェスト基本的なリソース編 02

はじめに

Mackerel🐟 を触っていて・・・Blogの更新が遅れてしまったまるちゃん です。

こちらのストーリーでは、実際に Apache を使って解説しています。

また、説明ではなく・・・実際に描いてみる事が一番理解しやすいと僕は思っています。

Apache を使ったコード解説

内容としては

  1. 基本的なコードの実行方法
  2. Apache パッケージのインストール
    • package リソースタイプの使用
  3. 設定ファイルの置き換え
    • file リソースタイプの使用
  4. Apacheを起動/自動起動を有効に設定
    • service リソースタイプの使用

1: package,2: file,3: service の3つのResources Typeを使ってマニフェスト(manifest)を記載していきます。

事前準備

Listen 8081 に変更されているだけのexampleコードです。

このストーリーで使うコードの例です。

ファイル名 : apache_install.pp

基本的なコードの実行方法

ドライランによるマニフェストの実行

最後に --noop を付けると実行をしてくれますが、実際にはシステムに反映はされません。

マニフェストの実行

Apache パッケージのインストール

コード部分

解説

  • package { 'httpd': ~ }
    • インストールをするパッケージ名を指定
  • ensure => installed,
    • 状態を指定
      • installed/present : インストール
      • absent : アンインストール

設定ファイルの書き換え

解説

  • file {'/etc/httpd/conf/httpd.conf': ~ }
    • 書き換え先ファイルへのパスを指定
  • owner,group,mode
    • chown,chmod
  • source => '/root/src/Apache_Default.conf',
    • フルパスでソースとなるファイルへのパスを指定
  • require => Package['httpd'],
    • 依存関係の指定
    • 指定したリソースが適用されたあと、自身のリソースを実行

Apacheを起動/自動起動を有効に設定編

コード部分

解説

  • service {'httpd': ~ }
    • サービス名を指定
  • ensure => running,
    • running/true : サービスを起動
    • stopped/false : サービスを停止
  • enable => true,
    • true : 自動起動する
    • false : 自動起動しない
  • hasrestart => true,
    • subscribe で指定したリソースによる動作を指定
    • true : 再起動を可能
    • false : 再起動しない
  • subscribe => [ ~ ]
    • 指定したリソースに変更点が入った場合は、自身を再起動
  • File['/etc/httpd/conf/httpd.conf'],
    • どこのファイルをトリガーにするかを指定

おまけ Nginx のインストール

準備

ファイル名 : nginx_install.pp

実行
 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA