Hitachi

 Hitachi Application Server V10 ユーザーズガイドUNIX®用)


8.11 システムをスケールアウトする

業務処理量の増加が判明した場合や、将来予測される業務処理量に備える場合などに、増設したマシン(新設サーバ)にApplication Serverを構築して、システムをスケールアウトします。システムをスケールアウトするには、新設サーバにApplication Serverをインストールし、新設サーバのローカルホストから既存サーバのリモートホストへ接続するための設定をしたあと、Application Serverのセットアップを実施します。

前提条件

想定ユーザー

操作手順

  1. 新設サーバにApplication Serverをインストールします。

  2. リモートホストで、ドメイン管理サーバ(ローカルホスト)のホスト名を名前解決できるようにhostsファイルを編集します。

  3. ローカルホストで、パスワードファイルを作成します。

    AS_ADMIN_SSHPASSWORD=リモートホストのパスワード
  4. ローカルホストで、asadminユーティリティーコマンドのsetup-sshサブコマンドを実行して、暗号キー(SSLキー)を作成します。

    asadmin --passwordfile パスワードファイルのパス 
    setup-ssh --sshuser リモートホストのSSHユーザー名 リモートホスト名

    コマンドの実行結果を次に示します。

    Command setup-ssh executed successfully.
  5. ローカルホストで、asadminユーティリティーコマンドのcreate-password-aliasサブコマンドを実行して、パスワードに対するエイリアスを設定します。

    asadmin create-password-alias パスワードエイリアス名

    パスワードが求められた場合は、リモートホストのパスワードを入力してください。

    コマンドの実行結果を次に示します。

    Command create-password-alias executed successfully.
  6. ローカルホストで、手順3で作成したパスワードファイルを編集します。

    AS_ADMIN_SSHPASSWORD=${ALIAS=パスワードエイリアス名}
  7. ドメイン管理サーバを再起動します。

    asadmin restart-domain

    コマンドの実行結果を次に示します。

    Command restart-domain executed successfully.
  8. 新設サーバにApplication Serverをセットアップするため、asadminユーティリティーコマンドのcreate-node-sshサブコマンドを実行して、リモートホストに対するノードを追加します。

    asadmin --user ドメイン管理サーバのユーザー名
    --passwordfile パスワードファイルのパス 
    create-node-ssh --nodehost リモートホストのホスト名 
    --sshuser リモートホストのアカウント名 --sshkeyfile ~/.ssh/id_rsa 
    --installdir Application Serverのインストールディレクトリー/javaeeの絶対パス リモートホストのノード名

    リモートホストのノード名には、リモートホストに構築するノード名(ノードを識別するための任意の名称)を指定します。

    コマンドの実行結果を次に示します。

    Command create-node-ssh executed successfully.
  9. 新設サーバにApplication Serverをセットアップするため、asadminユーティリティーコマンドのcreate-prfサブコマンドを実行して、パフォーマンストレーサーを構築します。

    asadmin create-prf --node リモートホストのノード名 パフォーマンストレーサー名

    コマンドの実行結果を次に示します。

    Command create-prf executed successfully.
  10. 新設サーバにApplication Serverをセットアップするため、asadminユーティリティーコマンドのcreate-instanceサブコマンドを実行して、Java EEサーバ(サーバインスタンス)を構築します。

    asadmin create-instance --node リモートホストのノード名 
    --prf パフォーマンストレーサー名 
    --cluster クラスター名 サーバインスタンス名

    クラスター名には、構築済みのクラスター名を指定します。

    コマンドの実行結果を次に示します。

    Command create-instance executed successfully.
  11. ハードウェアロードバランサーを使用している場合は、asadminユーティリティーコマンドのcreate-webserverサブコマンドを実行して、新設サーバにWebサーバを構築します。

    ソフトウェアロードバランサーを使用している場合は、

    手順15

    の操作に進んでください。

    asadmin create-webserver --node リモートホストのノード名 Webサーバ名

    コマンドの実行結果を次に示します。

    Command create-webserver executed successfully.
  12. ハードウェアロードバランサーを使用している場合は、asadminユーティリティーコマンドのcreate-relationサブコマンドを実行して、新設サーバにサーバ間関連を設定します。

    asadmin create-relation --relationtype redirect 
    --from Webサーバ名 
    --to サーバインスタンス名 
    --properties サーバ間関連のプロパティー名=サーバ間関連のプロパティーの値 サーバ間関連の関連名

    リダイレクト関連の関連づけを設定する場合、静的コンテンツをWebサーバで処理し、静的コンテンツ以外のリクエストをJava EEサーバで処理するために、--propertiesオプションにpath、およびnetwork-listenerを指定します。

    (例)

    path=/apserver/:network-listener=http-listener-1

    pathには、スラッシュ(/)から始まるURLのパスを指定します。スラッシュだけの指定(path=/)はしないでください。この例では、http://xxxxxxxxxxx/index.htmlのようにURLのパスの先頭にapserverを含まないリクエストは、Webサーバの静的コンテンツにアクセスされます。また、http://xxxxxxxxxxx/apserver/sample/index.jspのようにURLのパスの先頭にapserverを含むリクエストは、http://yyyyyyyyyyy/sample/index.jspというURLでJava EEサーバにリダイレクトされます。

    network-listenerには、リダイレクト先のJava EEサーバのHTTPリスナー、またはHTTPSリスナーを示すネットワークリスナー名を指定します。Java EEサーバには、デフォルトでHTTPリスナーにhttp-listener-1、HTTPSリスナーにhttp-listener-2というネットワークリスナーが定義されています。

    コマンドの実行結果を次に示します。

    Command create-relation executed successfully.
  13. ハードウェアロードバランサーを使用している場合で、かつ、性能を考慮して静的コンテンツをWebサーバに配置する場合は、Webサーバのドキュメントルートディレクトリーに静的コンテンツを格納します。

    Webサーバのドキュメントルートディレクトリーは、

    Application Serverインストールディレクトリー/javaee/glassfish/nodes/ノード名/Webサーバ名/root/htdocs

    です。

  14. ハードウェアロードバランサーを使用している場合は、ハードウェアロードバランサーに対してリクエストの振り分けを設定します。

    リクエストを振り分ける設定については、使用しているハードウェアロードバランサーのマニュアルを参照してください。

  15. ソフトウェアロードバランサーを使用している場合は、asadminユーティリティーコマンドのcreate-relationサブコマンドを実行して、新設サーバにサーバ間関連を設定します。

    asadmin create-relation --relationtype redirect 
    --from Webサーバ名 
    --to クラスター名 
    --properties サーバ間関連のプロパティー名=サーバ間関連のプロパティーの値 サーバ間関連の関連名

    リダイレクト関連の関連づけを設定する場合、静的コンテンツをWebサーバで処理し、静的コンテンツ以外のリクエストをJava EEサーバで処理するために、--propertiesオプションにpath、およびnetwork-listenerを指定します。

    (例)

    path=/apserver/:network-listener=http-listener-1

    pathには、スラッシュ(/)から始まるURLのパスを指定します。スラッシュだけの指定(path=/)はしないでください。この例では、http://xxxxxxxxxxx/index.htmlのようにURLのパスの先頭にapserverを含まないリクエストは、Webサーバの静的コンテンツにアクセスされます。また、http://xxxxxxxxxxx/apserver/sample/index.jspのようにURLのパスの先頭にapserverを含むリクエストは、http://yyyyyyyyyyy/sample/index.jspというURLでJava EEサーバにリダイレクトされます。

    network-listenerには、リダイレクト先のJava EEサーバのHTTPリスナー、またはHTTPSリスナーを示すネットワークリスナー名を指定します。Java EEサーバには、デフォルトでHTTPリスナーにhttp-listener-1、HTTPSリスナーにhttp-listener-2というネットワークリスナーが定義されています。

    コマンドの実行結果を次に示します。

    Command create-relation executed successfully.