トップ «前の日記(2007-11-04(Sun)) 最新 次の日記(2007-11-06(Tue))» 編集

ぽっぺん日記@karashi.org


2007-11-05(Mon) [長年日記]

_ tentakelを使って、dnscacheサーバのLルートサーバを変更した

社内LANで動かしているdnscacheは複数台あるので、昨日知ったsudoの-Sオプションとtentakelを使って一気に書き換えてみた。

FreeBSDのports treeに入っているsysutils/tentakelはエラーを吐いて動かなかったので、最新のtentakelをsvnレポジトリから持ってきた。

> svn co http://svn.tue.mpg.de/tentakel/trunk tentakel

~/.tentakel/tentakel.confを設定。

set ssh_path="/usr/bin/ssh"
set metod="ssh"

group dns ()
	+dnscache1.example.com
	+dnscache2.example.com
	+dnscache3.example.com

group dns ()以下の設定で、社内LANにあるdnscacheサーバ(dnscache[1-3].example.com)をdnsグループとしてまとめている。

あとは、tentakelからdnsグループの各ホストのコマンドをこんな感じで叩いてあげるだけ。

> cd tentakel
> ./tentakel/py/tentakel -g dns "echo PASSWORD|sudo -S mv /usr/local/etc/dnsroots.global /usr/local/etc/dnsroots.global.orig"
> ./tentakel/py/tentakel -g dns "echo PASSWORD|sudo -S sed 's/198.32.64.12/199.7.83.42/g' /usr/local/etc/dnsroots.global.orig > /tmp/dnsroots.global"
> ./tentakel/py/tentakel -g dns "echo PASSWORD|sudo -S mv /tmp/dnsroots.global /usr/local/etc/"
> ./tentakel/py/tentakel -g dns "echo PASSWORD|sudo -S cp /usr/local/etc/dnscache.global /usr/local/etc/djb/dnscache/root/servers/@"
> ./tentakel/py/tentakel -g dns "echo PASSWORD|sudo -S svc -t /var/service/dnscache"
> ./tentakel/py/tentakel -g dns "echo PASSWORD|sudo -S rm /usr/local/etc/dnsroots.global.orig"

今回は3台が対象だったけれど、これが10台とか100台になれば格段に時間の節約になると思う。

参考

[]
本日のPingbacks(全0件)

トップ «前の日記(2007-11-04(Sun)) 最新 次の日記(2007-11-06(Tue))» 編集