TOPへ
起票 2005.2.27/更新 2005.2.27
 目次へ  
   



バックアップについて 入れ換え



 

上の記事でミラーを組んでおいたバックアップマシンをデビューさせてメインにするという手順を記録した記事です。
1IPなのでNATでサーバー公開してありますが、その内側のIPの引っ越しです。
グローバルIPのサーバーのIPを引っ越す場合DNSのからみがあって少し複雑になりますがそれは、ちゃんと別に記事を置いてありますそれはこっち の 2005/1/13のところ。
じゃ記事をどうぞ。



サーバーの交換 -> IP変更

2003.4.6、サーバーメインマシンが壊れてしまいました。
どんな風に壊れたかというと、ハード的な故障は全く見つけられません。
HDDは正常です。
  ・WEBレスポンスがめちゃくちゃ悪い
  ・telnet , ssh にはまったく反応しない
  ・POPにもぜんぜん反応しない
  ・ローカルコンソールではログイン可能
  ・pingを飛ばすと、2分後位に反応する

とにかく実用になりません。
乗っ取られた形跡も無いですし・・・・

復旧も試みましたが、ここは潔く、マシンの入れ換えを行いました。
せっかくミラーサーバもあることだし。

その時の手順と、いくつかあった問題を記載しておきます。

まず、構成ですが、メインマシンのIPは 10.0.0.100 でミラーマシンは 10.0.0.101 。

日常的には rsync を用いて、ディレクトリごとミラーリングを行っていました。その操作は以前に記録した通りです。
主にミラーを取っていたのは、/home と /var です。
インストールする必要のあるモジュールはミラーリングでは動作しませんね。
いままでメインマシンにインストールした時に同時にインストールしてきました。
だからqmail や jvinなどの各モジュールなどは、ちゃんとインストール済み。
そうしないと緊急出動で切替えられないですね。

さて、改めて見てみますが、サーバーを入れ換えるに当たり採用できる方法は2つあります。

その1)ルーターのNATの向き先を 10.0.0.101 に変更し、サーバーには手を加えない。
  問題:
   その1、LAN内の設定を見直す必要がある。
   その2、ルーターの設定を変えるとフィルタリングの自動設定がはたらき、見直す必要がある。
その2)サーバーのアドレスを変える
  問題:あるかどうか?やったことないので。。。。
  
という訳で2の方法を選択しました。

(1)サーバーのアドレス変更
変更個所は2つ
/etc/sysconfig/network-scripts/ifcfg-eth0
 の中から
 IPADDR=10.0.0.101
 を修正

/etc/hosts
 の中から
 10.0.0.101 と記載されている所を修正

この変更の後再起動すればサーバーのアドレスは変ります。 特に問題ありません。簡単です。
(2)Apacheの変更

 普通の運用の場合は何もしなくても大丈夫なんです。でもバーチャルサーバーを立てているので、IPがconfigに記載してあります。
 テスト運用の時から 10.0.0.101 をセットしてあったのでコレを修正しました。
 

 /etc/httpd/conf/httpd.conf
 の中の
 NameVirtualHost 10.0.0.101
 と
 <VirtualHost 10.0.0.101>
 と書いてある数ヶ所(2ヶ所でした)
 を変更します。 これでOK
 これも簡単ですね。
 

(3)cronの設定

 cronの設定はすっかり忘れていました。
 crontab -e
 で前の仕事を設定します。まだ前のマシンが動作するのでまねして設定しました。できたらメモしておきましょう。
 私の場合、時間が来たらルーターがパケットを止めるtelnetなどをcronにさせていたのですが、その設定などを控えておくのを忘れていました。

(4)Telnetモジュールの設定
 これもインストールするのを忘れてたのでインストールしました。。手順は自分で以前に書いたのを参考にしてます。
(5)Apacheへのローカルアクセスでレスポンスが悪い件を修正

 別の記事の通り、hostsファイルにローカルなクライアントの名前を書き出して解決です。
 このへんが厳しくなったのはTurbo 7だからなのでしょうか?

(6)qmailのレスポンス不良

 これも別記事の通りで、bindの逆引きで解決しました。tcpserverの名前解決待ちのせいでした。

(7)mysqlへの書き込み不良
 mysqlはちゃんと動作させてあるはずだ・・・・と思ったらデータソースとなるApacheのログが、ちゃんとカスタマイズしておかなかったのでした。
 直しました。
(8)bind
 zoneファイルが古いままになってました。/varは同期していたと思ったのですがしてなかったのかな?
 簡単だから書き直しました。
(9)ユーザーアカウントの修正
  ちょっと盲点でした。
 /homeを同期させると当然ながらユーザーのメールボックスも同期されます。
 でも、ユーザーを作ってないのに /home を同期させてもメールが受信できません。
 /etc/passwdのリストにあるかな?ないや。
 ってなことで、事前にユーザーをを作ってなかった場合は一旦ディレクトリを削除してからuseraddして改めてファイルを持ってくる事。
(10)忘れちゃいけないsshの設定

 肝心な事を最初にしたのでした。
 ミラー処理の為に、rootでssh経由のログインが出来る様にしておいたのですが、これをやめないと危険ですね。
 ちゃんと変えました。詳細は過去記事を。


以上の変更で無事サーバーが継続して復活いたしました。