アカウントOracleアカウントサインアウトOracleアカウントアカウントを管理して、パーソナライズされたコンテンツにアクセスできます。アカウントを作成クラウド・アカウントクラウド・ダッシュボードへのアクセス、ご注文の管理など、さまざまな操作を行えます。11の新機能であるネットワーク仮想化機能とを組み合わせて、単一システム上に仮想サーバーをセットアップする方法を紹介します。Tomcatの仮想サーバー・インスタンスをセットアップする例を紹介します。Solarisゾーンとネットワーク管理の基礎知識が必要です。OTNは、オラクルのテクノロジーについて理解し、十分な情報を得た上で決断を下すために活用できる場所です。さまざまな記事、ダウンロード可能なソフトウェア、ドキュメントなどが揃っています。ご登録いただき、業務に必要なテクニカル・リソースを入手してください。Solarisオペレーティング・システムに、レイヤー3とレイヤー4のロードバランシング機能を提供します。ILBはネットワーク(IP)レイヤーとトランスポート(TCP/UDP)レイヤーで動作します。ILBは、クライアントからの着信要求を傍受し、要求を処理するバックエンド・サーバーを一連のロードバランシング・ルールに基づいて決定し、選択されたサーバーに要求を転送します。ILBはオプションで健全性検査を実行し、選択されたサーバーが着信要求を処理できるかどうかを確認してロードバランシング・アルゴリズムに必要なデータを提供します。Return(DSR)およびネットワーク・アドレス変換(NAT)の動作モードをサポートします。コマンドライン・インタフェース(CLI)によるILB管理を可能にします。健全性検査によるサーバー監視機能を提供します。フルNATモードを使用する理由の1つは、ILBボックスの外部に特別なルートを設定する必要がないことです。ILBボックスは部署Aが管理しているものの、バックエンド・サーバーとネットワークは別の部署が所有している場合、部署AはフルNATモードを使用してロードバランシングを実行できます。すべての要求はまずILBボックスに送信されます。ILBでは、要求の着信先IPアドレスをバックエンド・サーバーが所有するIPアドレスに変更し、要求の発信元IPアドレスをILBが所有するアドレスに置き換え、要求をバックエンド・サーバーに転送します。バックエンド・サーバーは、要求が内部システムから送信されたかのように処理します。そのため、バックエンド・サーバーに特別な設定をする必要はなく、特別なルートを設定する必要もありません。このインタフェースを使用して、ロードバランシング・ルールの構成、オプションの健全性検査の実行、および統計の表示が可能です。ilbadmおよびほかのサード・パーティ製アプリケーションは、libilb内に実装されている機能をILBの管理に使用できます。このデーモンは、次のタスクを実行します。IPサービスを参照してください。Tomcat仮想サーバーの例この例では、ハーフNATモードを使用します。トラフィックがILBに到達すると、リアル・サーバーの着信先IPアドレスはILBによって書き換えられます。発信元IPアドレスはそのままです。Solarisの管理:IPサービスの"ILBの動作モード"を参照してください)。Tomcatサーバーを実行する2つのゾーンにまたがる仮想サーバー(IPアドレス10.0.2.20)に着信したトラフィックをロードバランシングします。図1に示すとおり、ロードバランサ自体はマルチホーム・ゾーン(ilb-zone)として構成されます。ilb-zone(10.0.2.16/24)の1つのインタフェースは外部ネットワークに接続されています。1つのインタフェース(192.168.1.21/24)は、同じシステムでホストされている仮想ネットワークに接続されています。ILBは、ロードバランシング・ルールの仮想IPアドレス(VIP)として、アドレス10.0.2.20を参照します。最初のステップとして、次の各ゾーンに一連の仮想ネットワーク・インタフェース(VNIC)と仮想スイッチ(etherstub)を作成します。Tomcatサーバーを実行する2つのゾーンとILBゾーンとを接続するシステム内の仮想ネットワークとして動作します。Tomcatサーバーにはアクセスできません。各ゾーンにファイル・システムがない場合は、次のコマンドを実行します。rpool/zones次に、リスト1の手順に従ってILBゾーンを作成します。ILBゾーンの作成リスト2の手順に従って、2つのサーバー・ゾーン、server1-zoneとserver2-zoneを作成します。ILBゾーン(ilb-zone)のインストールゾーンを構成し終えたら、構成済みのゾーンをインストールする必要があります。ここではデフォルトのゾーン・システム構成を使用し、最初の起動時に対話方式でいくつかの質問に答えていきます。1つのゾーン(この例ではilb-zone)のインストールが完了したら、ゾーンのクローンを数秒で簡単に作成できます。ゾーンのインストールilb-zoneを起動し、いま作成した各ゾーンのステータスを確認します。console]ゾーンにログインすると、すぐにシステム構成ツールのプロンプトが表示されます。この対話型ツールを使用して、さまざまなシステム構成タスクを順番に実行して行きます。この例では、ilb-zoneゾーンに対して次の構成を使用します。ホスト名はilb-zoneとします。ネットワーク・インタフェースilb0のIPアドレスは10.0.2.16/24、デフォルト・ルートは10.0.2.2とします。ネットワーク・インタフェースilb1のIPアドレスは192.168.1.21/24とします。ネーム・サービスは、グローバル・ゾーンに構成されている同じネーム・サーバーを使用するDNSを使用するように構成します。システム構成ツールを使用して構成できるのは、1つのネットワーク・インタフェースのみです。ここではilb0を構成します。初期構成が適用されたら、ゾーンにログインし、次の手順に従ってilb1の構成を追加する必要があります。1つ目のサーバー・ゾーン(server1-zone)のインストール1つ目のサーバー・ゾーンserver1-zoneを、ilb-zoneのクローンとして作成します。ゾーンのクローンを作成したら、server1-zoneを構成し、server1-zoneのクローンとしてserver2-zoneを作成します。ilb-zoneを停止し、クローンを作成します。次に、新たにクローンを作成したserver1-zoneにログインし、このゾーンの最終的な構成を完了します。console]最初のゾーンのときと同様にシステム構成ツールが起動するので、次のとおりにserver1-zoneの最終的な構成を実行します。ホスト名はserver1-zoneとします。ネットワーク・インタフェースserver1のIPアドレスは192.168.1.50/24、デフォルト・ルートは192.168.1.21とします。ネーム・サービスはnoneに設定します。ILBは、外部ネットワーク(ilb0経由)とプライベート・ネットワーク(ilb1経由)の間のトラフィックを転送するエージェントとして動作します。そのため、IP転送サービスが必要です。この例ではIPv4アドレスを使用するので、リスト4に示すとおり、ilb-zone非グローバル・ゾーン(ゾーンを起動してログインする必要があります)でIPv4転送のみ有効にする必要があります。ILBゾーンからのインターネット・アクセスの確認ILBゾーンilb-zoneの中から外部にpingを実行できるかどうかテストします。Tomcatであるため、リスト5に示すとおり、パッケージ・マネージャpkgを使用してserver1-zoneにTomcatをインストールする必要があります。グローバル・ゾーンを経由するすべての接続をパッケージ・マネージャが代行するため、server1-zoneでのネットワーク接続は不要です。別のゾーンにソフトウェアがインストールされている場合、ソフトウェアはローカルにキャッシュされます。ない場合は、ネットワーク上に構成されているパッケージ・リポジトリから、グローバル・ゾーン経由でソフトウェアがダウンロードされます。SMFサービスのtomcat6インスタンスを次の方法で有効化する必要があります。http:tomcat6現在のステータスの概要を把握するため、グローバル・ゾーンから各ゾーンをリストします。実行されていることを確認するには、グローバル・ゾーンからserver1-zoneに到達できる必要があるため、新しいルートを追加します。-pコマンドを使用してルートの変更を行います。Tomcatサービスに、グローバル・ゾーンからilb-zone経由で到達できるようになります。Tomcatサーバーのインスタンスが正常に実行されているため、server2-zoneに別のインスタンスを簡単に作成できます。リスト6に示すとおり、まずserver1-zoneを停止してからそのクローンを作成し、その後、両方のゾーンを起動して新しいserver2-zoneにログインします。Tomcatインスタンスの作成もう一度システム構成ツールを使用して、次のとおりにserver2-zoneの構成を完了します。ホスト名はserver2-zoneとします。ネットワーク・インタフェースserver2のIPアドレスは192.168.1.60/24、デフォルト・ルートは192.168.1.21(ilb-zoneのインタフェースilb1)とします。ネーム・サービスはnoneに設定します。Tomcatはすでに起動し実行された状態になります(server2-zoneからsvcsを使用して確認します)。Tomcatインスタンスにはグローバル・ゾーンからも到達できます。11にはアプリケーション・インスタンスを短時間で効率的にデプロイできる方法があり、クラウド型の環境に理想的であることがすぐにわかります。Tomcatの2つのインスタンスがそれぞれのゾーンで実行されている状態になったので、ゾーン間のトラフィックを調整するロードバランシング機能を設定します。ILBゾーンilb-zoneで、リスト7の手順に従ってパッケージ・マネージャ(pkg)を使用してILBパッケージをインストールします。Tomcatインスタンスにサーバー・グループtomcatgroupを定義します。192.168.1.60次のステップでは、ロードバランシング方法を定義します。通常は、一連の手順の中でこのステップがもっとも手間がかかります。最初に、永続性を持つtomcatrule_rrという名前の単純なルールを定義して有効化します。このルールは、"ラウンドロビン"方式のロードバランシング・アルゴリズムとハーフNATネットワーク・トポロジーを使用して、着信先の仮想IPアドレスとポート番号(10.0.2.20:80)宛ての着信パケットをtomcatgroupサーバー・グループの着信先に一致させます。80リスト8に示すとおり、-fオプションを使用すると、作成した新しいルールのさらに詳細な情報を表示できます。最後に、VIPアドレス10.0.2.20を着信先とするパケットのうち、ネットワーク・インタフェースilb0に送信する必要のあるパケットがどれかを外部に通知する必要があります。次のコマンドを使用して、ilb0のMACアドレスをilb-zoneで調べる必要があります。0MACアドレス(この例では2:8:20:4e:fa:fd)がわかったら、arpを使用してインターネットからMACアドレスへの変換(公開、永続的)を適用する必要があります。TomcatのWelcomeページが表示されるかどうかを確認します。TomcatのWelcomeページ表示されれば成功です。ところが、どちらのインスタンスから表示されたのかわかりません。これを簡単に確認する方法があります。Tomcatのドキュメント・ルートにあるスクリプト例の1つ、/var/tomcat6/webapps/examples/jsp/snp/snoop.jspを変更します。Tomcatインスタンスのサーバー・ホスト名を出力するようにします。"+ina.getHostName());%>変更を加えたら、仮想IPアドレスhttp://10.0.2.20/examples/jsp/snp/snoop.jsp上のスクリプトを起動して、図5に示しているような結果を確認できます。簡単なILBルールにはサーバーの健全性検査を含めなかったため、有効性は限定的です。いうのも、ロードバランサが停止しているサーバーに要求を転送しないようにする必要があるからです。pingプローブ、TCPプローブ、UDPプローブ、ユーザー定義のスクリプトがあります。Tomcatインスタンスの健全性を確認する必要があるため、リスト9に示す簡単な健全性検査スクリプトを記述します。健全性検査スクリプトこのスクリプトは、サーバーにpingを送って<meta>ヘッダーが返されるかどうかを確認するという単純なものです。リスト9を見ると、スクリプト変数$2があることもわかります。ILBには、スクリプトで使用できる変数が多数あります。失敗を返すまでにスクリプトが待機する最長時間(秒数)server1-zone上でスクリプトを実行し、次に示すように、成功を示す0が返されることを確認できれば、スクリプトの実行に問題ないことを簡単に再確認できます。0スクリプトが正常に実行できたら、次に示すようにilbadmを使用して、スクリプトと健全性検査のルールを関連付けられます。/opt/ilb/hc-tomcatこの例では、最長2秒間、応答を待機しながら、10秒に1回スクリプトを実行します。この健全性検査を作成したら、既存のILBルールを変更する必要があります。現在、ILBは既存のルールの変更をサポートしていないため、リスト10に示すように、既存のルールをまず削除してから新しいルールを作成します。新しいルールが作成されると、健全性検査はすぐに有効になります。show-hc-resultを使用して簡単に取得できます。1111上の結果を見てわかるとおり、すべてが正常に動作しており、サーバーは両方とも応答しています。サーバーの1つが停止したらどうなるでしょうか。Tomcatインスタンスを無効にし、どのような現象が発生するか確認してみましょう。http:tomcat6もう一度、ilb-zoneからステータスを確認します。Tomcatインスタンスに送信されています。11の組込み機能である統合ロードバランサ(ILB)は、レイヤー3とレイヤー4のロードバランシング機能を備えています。ILBは、クライアントからの着信要求を傍受して、要求を処理するバックエンド・サーバーを一連のロードバランシング・ルールに基づいて決定し、選択されたサーバーに要求を転送するため、アプリケーションの耐障害性を高める強力な方法と言えます。統合ロードバランサの製品ドキュメントを参照してください。11のリソースは次のとおりです。SystemsのFacebookとTwitterをフォローして確認してください。