その際に、Aサーバ(固定ip)が死んでいたら、Bサーバ(バックアック機・固定ip)にvaluedomainのddns機能を使って、ダイナミックにIPを
振り分けたいのですが、そのようなスクリプトなどを配布、もしくは作り方を掲載しているところはありませんでしょうか。
一応、nagiosからの監視情報を受け取って、死んでいる場合にはdiceで切り替えればいいのかなと思っていますが、
実際に組んでいるスクリプトなどがあればなと思いまして。
宜しくお願いします。
こんにちは。
nagiosは使ったことがないのでわかりませんが、php等が
実行できるのであれば、
http://dyn.value-domain.com/cgi-bin/dyn.fcg?d=ドメイン名&p=パスワード&h=ホスト名&i=IPアドレス(省略可)
で登録が成功すればOKのステータスが返ります。
自分はdice等外部ツールを使うのが面倒なので、サーバー起動時
に実行していますが・・
あまり参考にならない場合はすいません。
こんにちは
やっていることは同じですが、私の場合はwgetを利用しています。
固定IPの環境ではないので、crontabで以下を回しています。
*/60 * * * * wget -O - 'http://dyn.value-domain.com/cgi-bin/dyn.fcg?d=ドメイン名&p=パスワード&h=ホスト名' > /dev/null 2>&1
nagiosは利用したことがないのですが、落ちたときに特定のコマンドを実行することができるのであれば対応できそうかなと思います。
wgetでもいけますよね。その方が便利かも。
そういえば、大量のバーチャルドメインを運用しているのですが、その場合はひとつひとつddns対応していくしかないと思いますが、みなさんどうしているのだろ…
変更する際のドメイン管理や設定が大変なような気が…
大量のバーチャルドメインを運用しているのですが、その場合はひとつひとつddns対応していくしかないと思いますが、みなさんどうしているのだろ…
同じIPアドレスなんだから、一つだけ DDNS で、ほかは CNAME でそのホスト名のエイリアスにすればいいだけかと。
nagios は便利なツールだけど、Web一台だけなら大袈裟かな。
wget とかでも十分だと思う。
ある程度スクリプトが組める必要が有るけど。
>同じIPアドレスなんだから、一つだけ DDNS で、ほかは CNAME でそのホスト名のエイリアスにすればいいだけかと。
そうですね。ずっとAレコードで設定していたので、忘れていました。ありがとうございます。
nagiosは、それ以外にルータの監視やWINDOWSPCの監視などもしているため、現在は利用しております。
※追記です。
よくよく考えると、@example.comなど、MXレコードを設定している場合、
そのexample.comをCNAMEで設定してしまうと、MXレコードがCNAMEした先のドメインのMXレコードを見に行くようですが、
その場合はどうしたらいいのでしょうか?
dig example.com mx
; <<>> DiG 9.2.4 <<>> example.com mx
;; global options: printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 42549
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1
;; QUESTION SECTION:
;example.com. IN MX
;; ANSWER SECTION:
example.com. 56 IN CNAME host.example-b.com.
host.example-b.com. 65 IN MX 20 mail.example-b.com.
;; ADDITIONAL SECTION:
mail.example-b.com. 65 IN A ###.###.###.###
よくよく考えると、@example.comなど、MXレコードを設定している場合、
そのexample.comをCNAMEで設定してしまうと、MXレコードがCNAMEした先のドメインのMXレコードを見に行くようですが、
なんかちょっと設定方法に問題があるような気がするけど、
設定自体を出してくれた方が問題が分かりやすいかな。
それはそれとして、一般論として MX レコードに CNAME で定義されたホストを指定するのは推奨されない。
MX レコードは最終的に受け取りたい A レコードを持ったサーバー名を定義すればよい。
つまり何個ドメインがあっても、全てのドメインの MX レコードは同じホスト(そのドメイン内とは限らない)を指定することになる。
実例があったほうが分かりやすいか。
aaa.example.com. IN A 192.168.0.1 example.com. IN MX 10 aaa.example.com. example.net. IN MX 10 aaa.example.com. example.jp. IN MX 10 aaa.example.com.
BIND の zone ファイルの形式です。
ありがとうございます。
一応本題とは別の質問になるのかなと思い^^;
http://q.hatena.ne.jp/1180180887
こちらに書いておきました。
取り急ぎ、報告だけ。
※2007/05/28
追記です。
>MX レコードは最終的に受け取りたい A レコードを持ったサーバー名を定義すればよい。
>つまり何個ドメインがあっても、全てのドメインの MX レコードは同じホスト(そのドメイン内とは限らない)を指定することになる。
ようやく理解しました。
ドメインごとにWEBサーバはともかくメールのIPを切り分けて設定するのは難しいということで、
逆にすべてのドメインを同一の設定とするなら可能だということですね。
ありがとうございます。
Bサーバは、バックアップ用に常時起動で待機しているだけなのでしょうか?
また、メールとウェブに限定しても良いのでしょうか?
逆の発想で、DNSラウンドロビン(1つのホスト名に、複数のAレコードを設定)を使用する方法もありますよ。最近のブラウザでしたら、障害発生時には両方のIPアドレスにアクセスしてくれるようです。おまけに、通常時はサーバの負荷分散にもなります。
(参考) http://rblog-ent.japan.cnet.com/neta/2006/08/dns_ecfc.html
また、SMTPサーバについては、ちょっとした停止でしたら再送信してくれますので、Aだけ指定しておいた方がシンプルで簡単ではないでしょうか?むしろメールサーバを書き換えると、今度はAの復帰後に B→A転送 が必要ですよね。
逆の発想で、DNSラウンドロビン(1つのホスト名に、複数のAレコードを設定)を使用する方法もありますよ。最近のブラウザでしたら、障害発生時には両方のIPアドレスにアクセスしてくれるようです。おまけに、通常時はサーバの負荷分散にもなります。
そうなんですね。なるほど。
バックアップサーバは、基本的には違うことに現在は使っていますが、これは面白いですね。データそのものはrsyncサーバで同期を取ればいけるのかな。
基本的にはWEBだけでメールは別に少しなら落ちていても問題ない状態です。
なので、WEBが落ちた際を優先して考えています。
ドメインごとにWEBサーバはともかくメールのIPを切り分けて設定するのは難しい
いや、難しくは無いけどその個数分の設定は必要だからね。
今回は出来るだけ変更箇所を少なくしたいようだったから、その方法を提示したまで。
一応本題とは別の質問になるのかなと思い^^;
確かに本題とは別の質問なので間違いではないですが、あちこちややこしくなるのでこっちが終わってから立てたほうがよかったかもしれませんね。
確かに本題とは別の質問なので間違いではないですが、あちこちややこしくなるのでこっちが終わってから立てたほうがよかったかもしれませんね。
たしかにややこしくなってしまったかもしれません。
気をつけねばです。
そういえば、そうですよね。
固定ipですので、diceを使う必要がないと思いました。
http://dyn.value-domain.com/cgi-bin/dyn.fcg?d=ドメイン名&p=パスワード&h=ホスト名&i=IPアドレス
をサーバ監視している部分と連携出来ればよさそうです。