
私はVirtualBox VMをインストールしたUbuntu 10.10ホストを持っています。VirtualBoxには、主に同じ構成の2台のUbuntuマシンをインストールしました。2つのノード(これら2台の仮想マシン)で高可用性クラスターを実現しようとしていますが、このプロジェクトではホストマシンを混在させたくありません。
ここで、これら 2 つの仮想マシン間で Apache サービスを切り替えたいので、仮想ホストを作成しました。両方のマシンで /etc/apache2/sites-available/mywebsite を編集し、次の行を追加します。
<VirtualHost 55.55.55.55:80>
ServerAdmin [email protected]
ServerName mywebsite.com
DocumentRoot /var/www/mywebsite/
</VirtualHost>
55.55.55.55
これにより、の代わりに から Web サイトを起動するオプションが提供されますhttp://localhost
。ただし、これは 2 ノード クラスターでのみ機能し、ホスト マシンからは表示されません。どうすればよいでしょうか? 解決策はありますか?
長文になってしまい申し訳ありませんが、できるだけ多くの詳細をお伝えしたかったのです。
答え1
必要なのはロードバランサーロード バランサはウォッチドッグを使用して実サーバーの可用性を監視し、稼働中のサーバーにリクエストを送信します。
[編集]
2 つのオプションがあります。クライアントが別のコンピューターに接続して、実行中のサーバー (ロード バランサー) にリクエストを転送するか、サーバーを切り替えるときに IP アドレスを移動する必要があります。
同じコンピュータに複数の IP アドレスを割り当てることができます。2 つの IP アドレスを割り当てることをお勧めします。1 つは変更されない IP アドレス (リモート管理用)、もう 1 つはこのホストで Apache を起動するときに割り当てる IP アドレス (この55.55.55.55
場合はこれ) です。
代替案としては、Apache を単一のホストでのみ起動し、ロード バランサにこの事実を監視させるという方法があります。クライアントは常にロード バランサに接続します。単一の Apache サービスのみが実行される限り、ロード バランサは常にすべてのリクエストを単一のマシンに送信します。
追加の IP アドレスを割り当てるには、次のコマンドを使用します。
ifconfig eth0:1 xxx.xxx.xxx.xxx
「:1」は「eth0
(詳しくは)。