• 締切済み

サーバーの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台で十分かと思うのですが... 初心者なのでよろしくお願いいたします。

みんなの回答

  • daikun99
  • ベストアンサー率0% (0/1)
回答No.4

後ろのDBサーバへの接続方法ですか。 仮にですが、RedHat系のlinuxを使ってると想定しますと、mysqlのポートは3306がデフォルトなので、そのポートを簡易FireWallで通してあげないといけませんね。 確かデフォルトであいてないので。 xinetdは関係ないんじゃないかと。 いずれにせよ、ウェブサーバから mysqlコマンドにてDBサーバにアクセスできるようになってないとどうしようもないので、mysqlの外部ポート番号を変更してないようでしたら3306を通してみてください。

ryu27763
質問者

お礼

daikun99様 アドバイスありがとうございます。 まったくの初心者で3306をキーに検索したらけっこう情報が見つかりました。特にグーの中にも同じような内容の質問がありましたので下に記述させていただきます。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1435971 (もし同じようなアドバイスを求めておられる方がおられたら↑を参照してください。) 皆様色々とありがとうございました。後は、自力で何とか...がんばります。

回答No.3

高性能だから1台でいい。というのはちょっと違うと思います。 利用形態によりますが、掲示板用途であればWebサーバはそれほど負荷率は上がらないです。 対照的にデータベースは青天井で負荷が上がります。 (CPUやメモリよりも、HDDが段違いに遅いのが原因ですが・・・・) そのためレスポンスを良くする為にDBを分離するのは定石だと思いますよ。

ryu27763
質問者

お礼

daikun99様、foo_barYAS様 貴重なアドバイスありがとうございます。 2台構成で行こうと決めました。 そこで、表のweb用サーバーから、後ろのmysqlDB用サーバーへの接続方法でひっかかっています。とりあえず両方のサーバーにmysqlをインストールしたのですが、後ろのmysqlDBにはどのようにアクセスすればいいのでしょうか? 現在アクセスが拒否されてしまいます。セキュリティーと思うのですが...xinetdは設定したので、他に触らなくてはいけない場所があれば教えてください。もし、そのような内容を説明しているサイトがあれば、教えていただければ幸いです。 まったくの初心者なので、うんざりされるかも知れませんが、よろしくお願いいたします。

ryu27763
質問者

補足

WEb用サーバーからDB用サーバーへのアクセス方法でひっかかっています

  • daikun99
  • ベストアンサー率0% (0/1)
回答No.2

2台構成にするデメリットですね。 それは、いろいろな面で語れるので難しいのですが、私がポイントと思う部分をあげます。 1、サーバコストが2倍になる。 管理しなければならないサーバが2台になることに加え、スペース、使用電源も2倍です。当然セキュリティコストもまあ倍に近くなるでしょう。また、表のwebサーバはグローバルIPを振っていて、裏はローカルIPしか振ってない場合、裏サーバへISDNなどを引いたりしない限り、直接DBにアクセスできないので、場合によってはDBサーバをリブートしにサーバ設置場所までいかなくてはいけないかもしれません。1台だと当然ですがこういう心配はないですね。 2、実はデータベースサーバだけに過度の負荷がかかってたりする よくあるパターンですが、分けてみたらウェブサーバの負荷が実はたったの10%程度で、データベースサーバの負荷が80%を超えていた、なんてことがざらにあります。(その逆も)ので、例えばunix系であればtopコマンドなどで各デーモンの負荷具合を日常的にチェックしておくべきですね。仮に上記みたいなケースの場合は、むしろデータベースサーバを分散させるべきですし、アクセス数が多くてウェブサーバが悲鳴を上げているのであれば、ウェブサーバを増やして負荷分散すべきです。 3、バックアップがややこしくなったりする あなたのやっている掲示板に画像アップ機能があったりする場合など特にそうですが、ファイルアップロードはウェブサーバに保管され、データベースのファイルはデータベースサーバに保管されます。つまり、2サーバ両方から定期的にバックアップを取る必要がでてきて面倒です。1台だとこのあたりがかなり楽ですね。 このあたりのノウハウはウェブを探してもあまりないでしょうし(インストール方法とかはありますが運用についついてはね)、基本的にノウハウベースの知ってると非常に強い部分ですから、体験して覚えていくといいと思います。可能であればご自分でいろんなパターンをテストされるといいと思いますよ。 頑張ってください。

  • daikun99
  • ベストアンサー率0% (0/1)
回答No.1

商用掲示板の規模によるでしょう。 例えば、アクセス数が非常に多くてサーバのCPU負荷率が高すぎる場合、またはサーバのメモリが足りないくらいwebサーバやデータベースがリソースを食うような状態だと、サーバを2台構成にするメリットは出てきます。 要は、webサーバとデータベースごとに別々のCPUとメモリ空間が使えることになるので、負荷は見事にサーバレベルでは分散されます。 ただ、アクセス数に対応するための負荷分散的には何も解決されてないです。 ひとことで負荷分散といっても、データベースをレプリケーション構成にしたり、ウェブサーバを逆プロキシを使ったり、サーバ自体をロードバランス構成にしたりなど、さまざまな方法がありますが、 基本的には トラブル時のダメージをいかに少なくするか、 または 大量のアクセスにいかに耐えれるようにするか、 この2点(あとあるとすればセキュリティのためかな)しかありません。 原因がわからないのに果たして負荷分散になるのかどうか、についてですが、2台構成にする余裕があるのであればしたほうが楽だと思いますよ。ダウン原因の究明も楽になりますしね。 DBを分けることでネットワークタイムラグが出るかどうかですが、100Mbps以上のLANでつながれている場合、ほとんどないと思います。 ただ、データ量によるとは思いますが。 バックアップ目的で、ということであれば、 mySQLであればウェブサーバのほうにスレーブのレプリケーションDBを作ればいいと思います。(ただ、これは結果的にアクセスの負荷分散、サーバの負荷分散的にはマイナスになります) 自分のお勧めは、毎日1回DBサーバでフルバックアップを取り、あとは5分おきとか10分おきとかにトランザクションログをrsyncなどでwebサーバにトランザクションログをコピーすることです。レプリケーションよりかは精度が落ちますが、処理は軽いです。 いずれにせよ、アクセス数によってまったく考え方がかわりますし、DBのバックアップを取るのならばいろいろと方法はあります。 何がしたいのか、もう一度整理したほうがいいと思いますよ。 あと、pen4 2.4CということはPCサーバですよね?PCサーバの中でもすでに速いほうではないでしょう。平均くらいですよね。まあ、PCサーバは所詮おもちゃですし。 ちょっとした出会い系サイトレベルであれば、この程度のCPUだとあっという間に重くなるでしょうね。 参考になれば。

ryu27763
質問者

お礼

daikun99様 早速のお返事ありがとうございます。 とても参考になります。 はじめの質問に足しておくべきでしたが、2台構成にするデメリットとは何でしょうか?2台構成にする余裕があるのであればしたほうがよいとのご意見、私もなるほどそうだなと思いました。 ただ、実はこんな決定的なデメリットがある、などご意見お聞かせくださいませ。 質問がとびとびになり大変申し訳ありません。 よろしくお願いいたします。

関連するQ&A

  • DBサーバを二台設置したときの扱い方について

    質問させて頂きます。 MySQLを用いたDBサーバを二台設置します。 WebサーバからDBサーバにアクセスしてデータを取得するとき 不整合などは生じないでしょうか? 負荷分散が一番の目的のようなので、クラスタリングになるのかと思い この疑問に至っています。 また、DBのレプリケーションでも負荷の若干の分散は行えるのでしょうか? 通常DBは二台設置すると上に言われましたが、扱い方などは私に一任されており どのように扱えばいいのか悩んでおります。 どうぞご教授の程お願いいたします。

  • RemoteAppサーバの構成について

    Windows 2008 R2でRemoteAppサーバを構成しようと考えてるんですが RemoteAppサーバを複数台構成する場合にはRD接続ブローカは必要なのでしょうか? できるだけ簡素に作りたいと考えており、RemoteAppサーバを複数台並べてNLBで負荷分散 できたらと思ってます。 RemoteAppなのでセッションを閉じるときはアプリを×ボタンで閉じるときになるので デスクトップと違い、作業環境を残しておく必要はないからRD接続ブローカはいらない のでは?(ここは使用者を説得する必要があります。) という考えです。 NLBを用いた構成で疑問なのは、接続が一部のサーバに偏らないか? ということです。サーバへの接続数で負荷分散したいのですが、それができず 長時間使う人間と短時間で済ます人間が運悪く振り分けられた場合 一部のサーバはスカスカなのに、接続数が多いサーバに振分けないか心配してます。 アドバイスお願いします!!

  • 自宅のWebサーバーを2台構成にしたい

    現在はNTT東日本のルーター(Web Caster V110)を利用しています。 負荷分散のためWebサーバーを2台構成にしたいと思っているのですが、 NATの設定がポートに対して1つのIPしか割り当てられません。 この場合、何らかの機器(ディスパッチャー?)が必要だと思うのですが、 どうしたら良いのでしょうか?

  • ファイヤーウォール→WEBサーバー→DBサーバーの構成のサーバーでサー

    ファイヤーウォール→WEBサーバー→DBサーバーの構成のサーバーでサーバーへのアクセス数が増えるとファイヤーウォールの負荷も増えるのでしょうか。またアクセス数が増えた時ファイヤーウォールを負荷分散するのは得策でしょうか。

  • WebサーバとDBサーバ 2台構成にしようと・・・

    現在、1台のPCでWebサービスを運用しています。 初心者なりに色々調べながらやっていますが、なんとか安定したサービスは 提供しているつもりです。 現在1台のPCでLinux+Apache+PostgreSQL+PHPという構成で運用しているのです が、DBへの参照・更新が多いので、WebサーバとDBサーバ、といったように物 理的に分けてしまえば多少負荷が抑えられるのでは?もっと快適なサービスを 提供できるのでは?などといった単純な考えでいます。 結局、そのような方法は、多少でも効果が見込めるものなのでしょうか? それと、実際に分けるとなった際の方法が全く分からないので、その辺を 詳しく解説したようなサイトがあればご紹介下さい。 ちなみに、画像用配信用にイメージサーバ?も準備しようかなと考えて います。 補足 ロードバランサなども考えましたが、現状、そこまで用意する必要は無い だろうという勝手な判断です。 LinuxはFedora 6です。DBサーバにしようと思っているPCは現在動いている サーバより性能は少し落ちます。

  • WebサーバとDBを何故たすきがけ構成にするのか

    Webシステムのサーバ構成が、2台構成で各サーバを仮想化してWebサーバとDBサーバが構成されています。 サーバA:Webサーバ1、DBサーバ1 サーバB:Webサーバ2、DBサーバ2 のような感じです。 これで、Webサーバ1がDBサーバ2を見て、Webサーバ2がDBサーバ2を見る構成となっています。 たすき掛け上の構成にしなくてはいけない理由は何でしょうか? 不勉強で申し訳ないのですが、どなたか理由を教えていただけると助かります。

  • 負荷に耐えられる回線とサーバ

    私、個人サイトとして、いくつか掲示板運営しております。 レンタルサーバを借りてそこにperlのCGIを置いて運営してるんですが、アクセス量の問題で出て行ってくれといわれてしまいました。でサーバ会社をいくつも契約してトラフィックを分散していたのですが、使いづらく金額もばかになりません。 そこで、レンタルサーバではなく自宅サーバにしようかと思うのですが、自宅の回線でトラフィックに耐えられるかどうかお聞きしたいのです。また、自宅サーバは初めてですが、負荷にサーバがハード的に耐えられるかお聞きしたいのです。 現在の掲示板の合計のアクセス量としては 一日合計30万PV前後 一日転送量5GB前後 perlのCGIはJAVAで書き直してDBとつなげて使用するつもりです。 oracleが無料で使用できるようになったらしいのでDBはoracleにしようと思ってます。OSはFREEBSDかREDHATにしようと思ってます。 1-光回線やADSL回線で上記条件のサイト運営は可能でしょうか? もし不可能なら光回線やADSL回線を何回線も契約しても無理でしょうか?データセンターなどにハウジングするしかないのでしょうか? 2-上記条件に適したサーバとしてはどんなスペックが要求されるでしょう?(搭載メモリ量やCPU等) 自宅サーバにする場合はUPSとRAIDぐらいは使おうと思ってます。 自分でサーバを組むのと既成のサーバを買うのではどちらがよいでしょう?もし既成のサーバを買うとしたらお勧めのモノなどを教えていただけないでしょうか? 3-サーバの数は一台で大丈夫でしょうか?無理なら何台くらい必要になるでしょう? 4-全部の金額を合わせるとどのくらいになるのでしょうか? 詳細なところも含めて教えていただけると大変たすかります。 (回線代大体いくらサーバ購入代大体いくら等) お手数ですがどうかわかるかたよろしくお願いいたします。

  • 1サーバに対する複数インスタンスについて。

    質問の仕方が悪いかもしれませんが、通常SQLServer1つに対して、いくつくらいまでDBを作成、運用するものなのでしょうか? 現在、1SQLServerに対して、5つくらいのDB(サブシステム)を構成しようとしています。 本来であるならば、1サーバに対して、1DBか、2つくらいのDBが適切なのかもしれませんが、何かそのあたりの仕様みたいなものはあるのでしょうか?(適正値) サーバが複数台あり、DBを分散させて構成するか、1つにまとめるか迷っています。 どなたか、参考になることをご教授いただけないでしょうか?

  • DBサーバー負荷分散と多重化

    Linux、PHP、MySQLの構成の商用サーバーでアクティブ系スタンバイ系の登録用DBサーバーを制御するのにハブとスイッチどちらを使うのが一般的ですか。また参照用DBサーバー(10台)を負荷分散するときロードバランサを使うと思いますがよく使う製品の製品名が知りたいのですが誰か知りませんか。

  • レンタル掲示板構築の環境仕様について

    携帯用のスレッド式レンタル掲示板の運営を考えています。 雰囲気的には http://look2.info/ のようなものになります。 そこで構築の環境仕様が定まらず皆様のお力をお借りできればと思い今回投稿させていただきました。 掲示板のシステム環境は [LAMP]Linux Apache Mysql Php を予定しています。 サーバー環境は Xeon 3.6GHz×2 8GB 146GB(SCSI×3 RAID5) を予定しています。 ヒットすることを想定での運営となると 負荷に備えサーバーを分散することが賢明と考えました。 上記URLでは、 サブドメインを振り当てたサーバーの追加方法を行っているように思うのですが、 当方では固定ドメインでの運営をしたく思います。 掲示板というサイトの性質上、ラウンドロビンも有効ではありません。 負荷分散装置の利用も考えましたが、 データベースをどのように利用したら良いのかわかりません。 他に最適な環境仕様がございましたらご教授ください。 よろしくお願いいたしますm(_ _)m