Sun GlassFish Enterprise Server 2.1 高可用性 (HA) 管理ガイド

HADB のアップグレード

HADB は、ソフトウェアのアップグレードによっても中断されることのない「常時有効な」サービスを提供するように設計されています。この節では、データベースをオフラインにしたり、可用性の低下を招いたりすることなく、新しいバージョンの HADB にアップグレードする方法について説明します。これは、オンラインアップグレードと呼ばれます。

以下の節では、HADB インストールをアップグレードする方法について説明します。

ProcedureHADB をより新しいバージョンにアップグレードする

  1. 新しいバージョンの HADB をインストールします。

  2. 「HADB パッケージの登録」の説明に従って、新しい HADB バージョンを登録します。

    HADB パッケージを HADB 管理ドメインに登録すると、HADB パッケージのアップグレードや変更が容易になります。管理エージェントは、ソフトウェアパッケージが配置されている場所や、ドメイン内のホストに関するバージョン情報を常時監視します。デフォルトのパッケージ名は、V の文字で始まり、hadbm プログラムのバージョン番号が含まれた文字列です。

  3. データベースが使用するパッケージを変更します。

    以下のコマンドを入力します。


    hadbm set PackageName=package
    

    ここで、package は、新しい HADB パッケージのバージョン番号です。

  4. 「HADB パッケージの登録の解除」の説明に従って、既存の HADB インストールの登録を解除します。

  5. 必要に応じて、管理エージェントの起動スクリプトを置き換えます。

    詳細については、「管理エージェントの起動スクリプトの置き換え」を参照してください。

  6. 「HADB アップグレードの確認」の説明に従って、結果を確認します。

  7. (省略可能) 古い HADB バージョンのバイナリファイルを削除します。

    HADB が正しくアップグレードされたことを確認したら、古い HADB パッケージを削除できます。

HADB パッケージの登録

hadbm registerpackage コマンドを使用して、管理ドメイン内のホストにインストールされている HADB パッケージを登録します。HADB パッケージはまた、hadbm create を使用してデータベースを作成するときにも登録できます。

hadm registerpackage コマンドを使用する前に、ホストリスト内のすべてのホストですべての管理エージェントが設定および実行されていること、管理エージェントのリポジトリが更新用に使用できること、および同じパッケージ名ですでに登録されているソフトウェアパッケージがないことを確認してください。

コマンド構文は次のとおりです。

hadbm registerpackage --packagepath=path [--hosts=hostlist] [--adminpassword=password | --adminpasswordfile=file] [--agent=maurl] [[package-name]]

package-name オペランドがパッケージの名前です。

次の表は、特殊な hadbm registerpackage コマンドオプションを示しています。ほかのコマンドオプションについては、「セキュリティーオプション」および 「一般的なオプション」を参照してください。

表 10–1 hadbm registerpackage のオプション

オプション 

説明 

--hosts=hostlist

-H 

コンマで区切られているか、または二重引用符で囲まれ空白で区切られている、ホストのリスト。 

--packagepath=path

-L 

HADB ソフトウェアパッケージへのパス。 

たとえば、次のコマンドは、ソフトウェアパッケージ v4 をホスト host1、host2、および host3 に登録します。

hadbm registerpackage 
--packagepath=hadb_install_dir/SUNWHadb/4.4 
--hosts=host1,host2,host3 v4

応答は次のようになります。

Package successfully registered.

--hosts オプションを省略した場合は、ドメイン内で有効になっているすべてのホストにそのパッケージが登録されます。

HADB パッケージの登録の解除

hadbm unregisterpackage コマンドを使用して、管理ドメインに登録されている HADB パッケージを削除します。

hadbm unregisterpackage コマンドを使用する前に、次の点を確認してください。

コマンド構文は次のとおりです。

hadbm unregisterpackage  
--hosts=hostlist  
[--adminpassword=password | --adminpasswordfile= file]  
[--agent= maurl]  
[package-name ]

package-name オペランドがパッケージの名前です。

--hosts オプションについては、「HADB パッケージの登録」を参照してください。--hosts オプションを省略した場合は、パッケージが登録された、有効になっているホストがホストリストのデフォルトになります。ほかのコマンドオプションについては、「セキュリティーオプション」および 「一般的なオプション」を参照してください。


例 10–2 HADB の登録解除の例

ドメイン内の特定のホストからソフトウェアパッケージ v4 の登録を解除するには、次のコマンドを実行します。

hadbm unregisterpackage --hosts=host1,host2,host3 v4

応答は次のようになります。

Package successfully unregistered.


管理エージェントの起動スクリプトの置き換え

新しいバージョンの HADB をインストールすると、/etc/init.d/ma-initd にある管理エージェントの起動スクリプトの置き換えが必要になる場合があります。ファイル HADB_install_dir/lib/ma-initd の内容を確認してください。古い ma-initd ファイルと異なっている場合は、古いファイルを新しいファイルに置き換えます。

ProcedureHADB アップグレードの確認

次の手順に従って、HADB が正しくアップグレードされていることを確認します。

  1. 稼働している HADB プロセスのバージョンを確認します。

    すべての HADB ノードに次のコマンドを入力して、HADB バージョンを表示します。

    new-path/bin/ma -v

    new-path/bin/hadbm -v

    ここで、new-path は新しい HADB インストールへのパスです。

    この結果、新しい HADB バージョン番号が表示されるはずです。

  2. データベースが稼働していることを確認します。

    次のコマンドを入力します。

    new-path/bin/hadbm status -n

    アップグレードに成功すると、running 状態のすべての HADB ノードが表示されます。

  3. HADB を使用している製品の設定が新しい HADB パスに変更されている必要があります。

  4. HADB を使用している製品に対して、あらゆるアップグレードの評価を実行します。