ubuntu puppet master&windows puppet clientの構築

2334 ワード

puppetはLinux、Unixプラットフォームの集中配置管理システムであり、独自のpuppet記述言語を使用して、構成ファイル、ユーザー、cronタスク、パッケージ、システムサービスなどを管理することができる.Puppet masterはすべてのノードタイプを定義し、各マシンまたは仮想マシンは1つのノードであり、ノード上のpuppet clientがpuppet masterと通信すると、自分の属するノードタイプが行うべき操作を取得し、本機で実行する.
Puppet masterは*nixマシンにインストールする必要があります.本稿ではUbuntuを使用してmasterを構築し、client側はwindows 7に搭載します.
   1.インストールruby:puppetの最下位はrubyで実現されるので、masterもclientもrubyをインストールします.
   sudo apt-get -y install irb libopenssl-ruby libreadline-ruby rdoc ri ruby ruby-dev git-core
からhttp://rubygems.org/pages/download最新のtgzパッケージをダウンロードし、
tar -xzf rubygems-2.2.4.tgz
cd rubygems-2.2.4
ruby setup.rb
2.puppet serverをインストールする:
wget https://apt.puppetlabs.com/puppetlabs-release-precise.deb
sudo dpkg -i puppetlabs-release-precise.deb
sudo apt-get update
sudo apt-get install puppetmaster
3.最新バージョンへの更新
sudo apt-get update
sudo puppet resource package puppet ensure=latest
sudo/etc/init.d/puppetmaster restart puppet serviceの再起動
Windows 7にpuppet clientをインストールするのは簡単です.rubyとpuppetを前後してインストールすればいいのですが、puppetをインストールするときにpuppet masterのマシン名を記入するインストールインタフェースがあります.デフォルト値はpuppetです.このnameをpuppet masterの本物のDNS名に変更してください.
次はclientとmasterが通信を確立します:clientは指定したmasterを探して、最初のアクセス時に証明書を送信して、masterは証明書を受け入れることに署名して、両端は互いに信頼する通信チャネルを創立して、後で証明書の認証をする必要はありません.このステップは通常うまくいかないので、clientとmasterはno-daemonモードを使用して、アプリケーションをフロントで実行すると、問題とエラーポイントがどこにあるかがはっきり見えます.
client: stop widows service--puppet, run command "puppet agent -t"
master: sudo/etc/init.d/puppetmaster stop
sudo puppet master --verbose --no-daemonize
エラーが発生した場合:Error:Could not run:Address already in use-bind(2)を実行し、「netstat-anpl|grep 8140」を実行して、どのプロセスが8140ポートを占有しているかを見つけ、kill-9 pidがプロセスを終了します.
masterが起動するとclientが起動し、masterでコマンドラインを実行します:sudo puppet cert--listはclient側の要求証明書を見ることができ、実行コマンド:sudo puppet cert--sign--allは証明書に署名して受け入れます.
構成が失敗した場合、最も一般的な解決策はclientとmasterの証明書を再生成することです.puppetサービスを停止し、既存の証明書を削除する必要があります.証明書が存在するディレクトリのコマンド動作を検索するには、次の手順に従います.sudo puppet master --configprint ssldir puppet agent --configprint ssldir

これで完成です