同一のノードのタスク
-
前提条件情報は次のとおりです。
-
管理プロセスが稼働しているクラスタ内のマシンのホスト名とポート番号(レジストリ・ポート) (例: "host1"および5000)。
-
置換対象のストレージ・ノードのID(例: "sn1")。
ノート:
ユーザーは、管理CLI pingコマンドを使用して、障害が発生したストレージ・ノードのレジストリ・ポートおよびストレージ・ノード識別子を取得できます。 -
新しいストレージ・ノードを起動する前に、置換するストレージ・ノードを停止する必要があります。これは、管理者によって、または障害を通じて実行できます。
ノート:
次の手順では、ターゲット・ホストのKVROOTが空であり、有効なデータがないことを前提としています。新しいストレージ・ノード・エージェントが開始されると、そのエージェントがホストするサービスが開始され、他のホストからデータがリカバリされます。リカバリにかかる時間は、関連するシャードのサイズによって異なり、リカバリはバックグラウンドで実行されます。
-
-
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です。ノート:
これは、リモート・アクセスでのセキュリティの構成に記載されているステップに従っていることを前提としています。
-
ストレージ・ノード構成をターゲット・ホストでリストアします。
-
zipファイル
"sn1.config.zip"
をターゲット・ホストにコピーします。 -
アーカイブをターゲット・ホストの
KVROOT
ディレクトリに解凍します。つまり、KVROOT
が/opt/kvroot
の場合は、次のようにします。> cd /opt > unzip <path-to-sn1.config.zip>
ノート:
kvroot
がすでに/opt
ディレクトリの下に存在する場合は、構成ファイルを解凍する前に、kvroot
ディレクトリ内のすべての内容を削除します。
-
-
ターゲット・ホストでストレージ・ノードを再起動します。
ノート:
SNAを開始する前に、各ノードで環境変数
MALLOC_ARENA_MAX
を1
に設定します。こうすることで、メモリー使用量が指定されたヒープ・サイズに制限されます。> java -Xmx64m -Xms64m \ -jar KVHOME/lib/kvstore.jar start -root KVROOT
ノート:
ターゲット・ホストと障害が発生したノードのホスト名、ポート番号およびインターネット・アドレスは同じです。そのため、ストレージ・ノード・プールおよびストアのトポロジで変更を行う必要はありません。