質問: サーバーの2台構成の必要性 こんにちは初めてメールさせていただきます。 掲示板用のサーバーを2台にするか一台にするかで悩んでおります。サーバー関連にはとても知識が無いのでよろしくお願いいたします。 使用は掲示板(商用)なので1台でも十分かと思うのですが皆様の意見をお聞かせください。 ■サーバーはpen4 2.40cghz,1gb,hd120gb、2mbps でとても高性能だと思います。理想としてはここにmysqldb,phpなどすべてを入れて運営したく思います(現在は2台で運営)。が... ただ、以前の管理者から1台のサーバー内にdbも同居させていると、負荷が多く、度々フリーズすることがあったため、負荷分散のために現在の2台構成に変更した。(webとdbを分けた) 2台構成の場合、表にphpやソフト..、後ろはmysqldbのみです。二つのサーバーは普通にlan接続です。 問題点としては: フリーズの原因が負荷からくるものだったかどうかがわからないことと、2台にしても負荷分散されないのではないか?という点です。 2台のサーバーがdual構成だったら負荷分散も考えられると聞きましたが、ただ別のサーバーにdbを置くだけだと負荷分散されないのではないでしょうか? ■またdbを別のサーバーに置くことでネットワークにタイムラグが発生するのではないのでしょうか?表示速度がおそくなることは避けたいです。 ■バックアップや故障の問題などにそなえてdbを分ける必要性はあるのでしょうか? もしできましたら、dbのみを別のサーバーで運営するメリットを教えていただきたく思います。通常サーバーの2台構成とはどういった場合のものをいうのでしょうか?個人的には1台のマシンが優れている場合、1台で十分かと思うのですが... 初心者なのでよろしくお願いいたします。
回答: 2台構成にするデメリットですね。 それは、いろいろな面で語れるので難しいのですが、私がポイントと思う部分をあげます。 1、サーバコストが2倍になる。 管理しなければならないサーバが2台になることに加え、スペース、使用電源も2倍です。当然セキュリティコストもまあ倍に近くなるでしょう。また、表のwebサーバはグローバルipを振っていて、裏はローカルipしか振ってない場合、裏サーバへisdnなどを引いたりしない限り、直接dbにアクセスできないので、場合によってはdbサーバをリブートしにサーバ設置場所までいかなくてはいけないかもしれません。1台だと当然ですがこういう心配はないですね。 2、実はデータベースサーバだけに過度の負荷がかかってたりする よくあるパターンですが、分けてみたらウェブサーバの負荷が実はたったの10%程度で、データベースサーバの負荷が80%を超えていた、なんてことがざらにあります。(その逆も)ので、例えばunix系であればtopコマンドなどで各デーモンの負荷具合を日常的にチェックしておくべきですね。仮に上記みたいなケースの場合は、むしろデータベースサーバを分散させるべきですし、アクセス数が多くてウェブサーバが悲鳴を上げているのであれば、ウェブサーバを増やして負荷分散すべきです。 3、バックアップがややこしくなったりする あなたのやっている掲示板に画像アップ機能があったりする場合など特にそうですが、ファイルアップロードはウェブサーバに保管され、データベースのファイルはデータベースサーバに保管されます。つまり、2サーバ両方から定期的にバックアップを取る必要がでてきて面倒です。1台だとこのあたりがかなり楽ですね。 このあたりのノウハウはウェブを探してもあまりないでしょうし(インストール方法とかはありますが運用についついてはね)、基本的にノウハウベースの知ってると非常に強い部分ですから、体験して覚えていくといいと思います。可能であればご自分でいろんなパターンをテストされるといいと思いますよ。 頑張ってください。