OSS編~Puppetでサーバ設定管理①~

こんにちは! JQです。

前回は『 EMR編~ELBのアクセスログをEMRで解析~ 』と題して、ELBの新機能であるアクセスログ機能で取得したデータをEMRで解析を試してみました。

今回は『OSS編~Puppetでサーバ設定管理①~』と題して、サーバ設定管理ツールのPuppetを試してみたいと思います。

Puppetとは

Rubyで構築されたスタンドアロンおよびクライアント/サーバー構成のサーバ設定管理ツールです。

Puppet Labsという企業が開発しており、オープンソース版と商用版の「Puppet Enterprise」の2つがあります。

今回はAmazonLinuxで試してみます。

設定

1.インストール

yumコマンドにてインストールします。

○サーバ側

1$ sudo yum -y install puppet-server

以下の部分を有効にします。

1$ sudo vim /etc/sysconfig/puppetmaster2PUPPETMASTER_MANIFEST=/etc/puppet/manifests/site.pp3PUPPETMASTER_LOG=syslog

空のマニフェストファイルを用意して起動します。

1$ sudo touch /etc/puppet/manifests/site.pp2$ sudo /etc/rc.d/init.d/puppetmaster start3$ sudo chkconfig puppetmaster on

○クライアント側

1$ sudo yum -y install puppet

以下を設定します。

1$ sudo vim /etc/sysconfig/puppet2PUPPET_SERVER=[サーバドメイン]3PUPPET_LOG=/var/log/puppet/puppet.log

起動します。

1$ sudo /etc/rc.d/init.d/puppet start2$ sudo chkconfig puppet on

2.認証設定

サーバ側で認証を行います。

1$ sudo puppetca --list2  "ip-xx-xxx-xxx-xx.ec2.internal" (4A:82:5F:39:B1:82:F4:CE:82:F2:97:4D:DA:99:9B:A8)

証明書を有効にします。

1$ sudo puppetca --sign ip-xx-xxx-xxx-xx.ec2.internal

3.マニフェストの設定

サーバ側でマニフェストを設定していきます。

最初に作成したsite.ppに実行する設定を記述します。

今回は空のファイルを作成してみたいと思います。

1$ sudo vim /etc/puppet/manifests/site.pp2exec { 'test':3  command => '/bi

n/touch /home/ec2-user/test.txt’

}

4.確認

クライアントで確認してみます。

下記コマンドで直ぐに反映してみます。

1$ sudo /etc/rc.d/init.d/puppet reload

成功していればファイルが作成されます!

1$ ls /home/ec2-user/2test.txt

いかがでしたでしょうか?

次回は『 OSS編~Puppetでサーバ設定管理②~ 』と題して,Puppetのマニフェストをもう少し詳しく触れてみたいと思います。

お楽しみに!!!

この記事を書いた人

aws-recipe-user