同一のノードのタスク

同一のノード(障害が発生したホストと同じホスト名、インターネット・アドレスおよびポート)を使用して、障害が発生したストレージ・ノードを置換する手順は次のとおりです。
  1. 前提条件情報は次のとおりです。

    1. 管理プロセスが稼働しているクラスタ内のマシンのホスト名とポート番号(レジストリ・ポート) (例: "host1"および5000)。

    2. 置換対象のストレージ・ノードのID(例: "sn1")。

      ノート:

      ユーザーは、管理CLI pingコマンドを使用して、障害が発生したストレージ・ノードのレジストリ・ポートおよびストレージ・ノード識別子を取得できます。
    3. 新しいストレージ・ノードを起動する前に、置換するストレージ・ノードを停止する必要があります。これは、管理者によって、または障害を通じて実行できます。

    ノート:

    次の手順では、ターゲット・ホストのKVROOTが空であり、有効なデータがないことを前提としています。新しいストレージ・ノード・エージェントが開始されると、そのエージェントがホストするサービスが開始され、他のホストからデータがリカバリされます。リカバリにかかる時間は、関連するシャードのサイズによって異なり、リカバリはバックグラウンドで実行されます。

  2. generateconfigコマンドを使用して、障害が発生したホストの構成ファイルを作成します。generateconfigコマンドは、NoSQLクラスタ内の任意のアクティブなホスト(マシン)から実行できます。

    generateconfigの使用方法は次のとおりです。

    > java -Xmx64m -Xms64m \
    -jar KVHOME/lib/kvstore.jar generateconfig \
    -host <hostname> -port <port> -sn <StorageNodeId> -target <zipfile> \
    -security  <path to security login file>
    パラメータ 必須 説明
    host はい 構成ファイルが生成される障害が発生したストレージ・ノードのホスト名。
    port はい 構成ファイルが生成される障害が発生したストレージ・ノードのレジストリ・ポート。
    sn はい 障害が発生したストレージ・ノードの識別子。
    target はい 作成するzipファイルのフルパス。
    security いいえ クライアント・セキュリティ構成ファイル。このパラメータは、ストアが保護されている場合のみ必須です。セキュリティ情報を含むファイルへの完全修飾パスを指定できます。

    generateconfigコマンドの詳細は、generateconfigを参照してください。

    たとえば:

    > java -Xmx64m -Xms64m \
    -jar KVHOME/lib/kvstore.jar generateconfig -host adminhost \
    -port 13230 -sn sn1 -target /tmp/sn1.config.zip \
    -security USER/security/admin.security

    前述のコマンドでは、ターゲット/tmp/sn1.config.zipが作成されます。これは、障害が発生したストレージ・ノードを再作成するために必要な構成を含むzipファイルです。新しく作成されたzipファイル(sn1.config.zip)の最上位ディレクトリは、ストアのKVROOTです。

    ノート:

    これは、リモート・アクセスでのセキュリティの構成に記載されているステップに従っていることを前提としています。

  3. ストレージ・ノード構成をターゲット・ホストでリストアします。

    1. zipファイル"sn1.config.zip"をターゲット・ホストにコピーします。

    2. アーカイブをターゲット・ホストのKVROOTディレクトリに解凍します。つまり、KVROOT/opt/kvrootの場合は、次のようにします。

      > cd /opt
      > unzip <path-to-sn1.config.zip>

      ノート:

      kvrootがすでに/optディレクトリの下に存在する場合は、構成ファイルを解凍する前に、kvrootディレクトリ内のすべての内容を削除します。
  4. ターゲット・ホストでストレージ・ノードを再起動します。

    ノート:

    SNAを開始する前に、各ノードで環境変数MALLOC_ARENA_MAX1に設定します。こうすることで、メモリー使用量が指定されたヒープ・サイズに制限されます。

    > java -Xmx64m -Xms64m \
    -jar KVHOME/lib/kvstore.jar start -root KVROOT

    ノート:

    ターゲット・ホストと障害が発生したノードのホスト名、ポート番号およびインターネット・アドレスは同じです。そのため、ストレージ・ノード・プールおよびストアのトポロジで変更を行う必要はありません。