puppet

Puppetで商用製品のインストールを実行するには

PuppetにはFile, Cronなどの組み込みのリソースに加えて、Execという任意のコマンドを実行できるリソースがあるため、スクリプト化出来る項目については基本的に何でも実施できる。 ここでは、IBM HTTP Server(以下IHS)のインストールを自動化してみた。 IHS…

Puppet-LVMを使ってみた

PuppetでLVMを管理できるといろいろと便利そうなのだが、そのためのモジュールが見つかったので、使ってみた。(Puppetmaster: Fedora14, Puppetd: CentOS5.5 EPEL: puppet-0.25.5-1.el5) Puppet-LVMのリンク先はこちら。 https://github.com/puppetlabs/pupp…

CentOS5の、EPEL mongrelの依存性

CentOS5用に、EPEL mongrelの依存性を調べてみた。 Puppetのパフォーマンスアップに使えそうだ。。 Dependencies Resolved ================================================================================ Package Arch Version Repository Size ======…

データセンター増設の時にオープンソースの運用ツールがスケールするかを確認してみた

データセンターが増えるときに運用ツール側で運用変更が発生するかをまとめてみた。オープンソースだけなので、あくまで代表的な機能だけだが、、 orzオープンソースの運用ツール群は、ざっくり PNBCG-LAMP (LAMPは今回対象外)としてまとめてみた。なお、デ…

git, puppet, ganglia, funcの依存関係

CentOS5にEPELから、上記のツールを入れる際、直接yumが使えない環境だと手動でrpmをダウンロードする必要がある。後々何度も必要になりそうなので、yumで解決した内容を記述しておこう。。今後依存性が変わるかもしれないので注意 w (ganglia-gmond) Depend…

Puppetでホスト名ごとに作成するファイル名を変更するには

Puppetでマニフェストを作成する際、作成するファイル名をホスト名ごとに変更したい場合には、次のように書くと上手くいくらしい。 file { "/tmp/mmm_${hostname}": ensure => present, mode=>644, content => "aaa\n" } 更に、そこからノードに共通の名前に…

CentOS5.4へのホストOS移行について

現在KVMのホストOSには、少々古くなってきたFedora10を使用しているのだが、CentOS5.4が出たタイミングでホストOSを切り替えてもよいように思う。同時に現在ホストOS上にGanglia, Puppet, Nagios のサーバーが載っているのだが、ホストOSそのものの移行を考…

Red HatでのPuppet対応について(2)

さらに探してみたところ、Red Hatのプロジェクトには、Cobbler, Func, Puppetを組み合わせて、プロビジョニングを行う、genome というプロジェクトもあるようだ。 http://genome.et.redhat.com/現状、筆者の環境では、VMをおいているセグメントと、PC(DHCPを…

Red HatでのPuppet対応について

RHELには既にプロビジョニング用のRed Hat Network Satellite があることもあり、Puppet への対応はしないのかと思っていたが、Puppetのmanifestの作成用ツールをきちんと開発しているようだ。この分なら、RHEL 5.2 でrsyslog に対応したのと同じような感じ…

puppetによるクライアントPC管理(使用例)

システム自動管理ツールの puppet ( http://reductivelabs.com/trac/puppet/ ) はサーバーに対して使うのみならず、クライアントPCの管理にも有効と思われるのだが、本家サイトの使用例をみたところ、Google, The Ohio State University などで、Mac OS Xや,…

OpenSolaris2008.11 にpuppetを導入してみた

OpenSolaris 2008.11 にpuppetを導入してみたので、手順を残しておく。大まかな手順は次に従った。 http://reductivelabs.com/trac/puppet/wiki/PuppetSolaris rubyの導入は、CompanionDVDが必要となっていたが、Open Solarisでは、インストールDVD+インター…

Gangliaでインベントリ管理をやってみた

製品版の運用管理製品には、インベントリ管理として、各ノードのIPアドレス、ホスト名やミドルウェアごとのバージョンを確認できる機能がついている。同じことをFedora 付属のツールで行おうとしてみたのだが、手っ取り早いオプションとして、Ganglia のgmet…

Fedoraでの統合システム運用について整理してみた

前回までに何度か統合システム運用に属するパッケージについて書いてきたが、ここで、Fedora11までの現状についてまとめてみようと思う。なお、ここでいう統合システム運用は、多数のサーバーを楽に管理するパッケージのことで、 1. 監視(ネットワーク、サー…

puppet, nagios, ganglia でプロセス数監視 (2)

実際、puppet, nagios, ganglia でプロセス数監視を作ってみて、上手くいくことを確認した。 ww nagiosの追加設定: define service{ use generic-service hostgroup_name fedora-virt service_description ganglia_proc_sendmail check_command check_gangli…

puppet, nagios, ganglia でプロセス数監視

gmond で送付した内容を、nagios で監視できることを何回か前 ww に書いたが、 ganglia には、gmetric という、取得した値を合わせて送るためのコマンドが付属している。 このコマンドはcronで定義して、定期的に使うのが各種パラメータ(apache スレッド数、…

VMの設定状況の台帳について

大量にVMを載せていると、どのVMがどの用途向けだったかわからなくなってくる。いままではクライアントPCのtomboyで管理していたのだが、数が増えると確認するのが面倒になってきた。どちらにしろ、ノード名のリストが必要となることを考えると、puppetのマ…

puppetによるcron設定

puppetでは、cronジョブの状態を設定することができる。 class cron_test { cron { "cron_test" : ensure => present, command => "echo aaa >> /tmp/cron_test", user => 'root', hour => '*', minute => '*/3', } } この時、 /var/spool/cron/root の内容…

virt-clone & puppet

VM環境では、cpコマンドや、 virt-cloneを使ってVMのコピーが出来る。このため、セキュリティ設定、LDAP設定等を施したVMを設定しておき、VM構築時はそちらを使うのが一つの方法になる。ただし、この方法だと、 - VMのUUID - VMに渡すmac address - IPアドレ…

パッチ適用状況の監査について

某configuration management製品の仕様を確認していたところ、 "Fix適用状況の監査"なる項目が見つかった.内容としては、 提供したFixがあたっているかを確認する機能とのことらしい。puppet+yum+rsyslogの場合には、基本的にはpuppetのログで、アップデート…

puppet+rsyslog をやってみた

puppet使用ノードの /var/spool/cron/root */3 * * * * /usr/sbin/puppetd --server centos-nvidia.example.or.jp --test /etc/puppet/puppetd.conf の中に追記 [main] のどこかに syslogfacility = local0 /etc/rsyslog.conf に追記 local0.info @@ubuntu-i…

puppet+rsyslog

puppetのログはsyslogに出せるようなので、rsyslogでpuppet用のファシリティを作っておくと、デバッグに便利そうだ。 クライアント側で起こった事象は管理者側から見えないので…。

パッチ適用、ポリシー変更

いくつか前に ・(PCが社内LANに接続されていれば)パッチ適用が遠隔でできる ・(PCが社内LANに接続されていれば)遠隔で設定変更。ポリシー変更(パーソナルファイアーウォールなど)が自由にできる と書いたが、どちらもpuppetで実現可能だ.パッチ適用は、アッ…

client PC + Linux + バックアップ

デスクトップ仮想化でも使えば別だが、基本的にクライアントPCのデータバックアップは結構深刻な問題だと思う。 SANがつながっているはずもないので、基本的にはデータはLAN経由で取るしかないが、最近のディスクはノートPCでも軽く100GBを超えるので、まと…

puppet でダウングレード

puppet を使った際、upgradeは package: ensure => latest で自動化できそうなのだが、ではダウングレードはどうやるのだろか。基本的にはダウングレードはあまり必要にならないが、アップグレードした結果上手く動作しなくなることも実際のところよくある.(…