はじめに

Verticaの起動時に、”Startup Failed, ASR Required”が発生し起動に失敗する場合があります。本記事では、同エラーが発生した場合のトラブルシューティングをご紹介します。

”Startup Failed, ASR Required”エラーの発生例
$ admintools -t start_db -d test -p test
Starting nodes:
    v_test_node0001 (XXX.XXX.XX.XX)
    v_test_node0002 (XXX.XXX.XX.XX)
    v_test_node0003 (XXX.XXX.XX.XX)
Starting Vertica on all nodes. Please wait, databases with a large catalog may take a while to initialize.
Node Status: v_test_node0001: (DOWN) v_test_node0002: (DOWN) v_test_node0003: (DOWN)

Node Status: v_test_node0001: (DOWN) v_test_node0002: (DOWN) v_test_node0003: (DOWN)
Found these errors in startup.logs on hosts:
hosts [‘XXX.XXX.XX.XX’, ‘XXX.XXX.XX.XX’, ‘XXX.XXX.XX.XX’] report: Startup Failed, ASR Required
Do you want to continue waiting? (yes/no) [yes] yes
Node Status: v_test_node0001: (DOWN) v_test_node0002: (DOWN) v_test_node0003: (DOWN)

Node Status: v_test_node0001: (DOWN) v_test_node0002: (DOWN) v_test_node0003: (DOWN)
Found these errors in startup.logs on hosts:
hosts [‘XXX.XXX.XX.XX’, ‘XXX.XXX.XX.XX’, ‘XXX.XXX.XX.XX’] report: Startup Failed, ASR Required
Do you want to continue waiting? (yes/no) [yes] yes

原因

本事象は、Verticaが不正に停止されたことよって、データが不完全な状態になった場合に発生します。お客様からは、Verticaを停止しない状態でOSを停止した場合に、本事象のお問い合わせをいただくことがあります。OSを停止する場合は、事前に「admintools」や「Management Console」を使用して、正しい手順でVerticaを停止してください。

対処方法

restart_dbコマンドに”-e last”オプションを付与して実行し、DBを再起動します。”-e last”オプションを使用するとリカバリが可能な最も直近のポイント(LGE:Last Good Epoch)の情報を使用しVerticaを起動します。

手順概要

Step1:ステータスがDOWNであることを確認
Step2:プロセスが残存していないことを確認
Step3:復旧可能時間を確認
Step4:”-e last”を指定して起動
Step5:ステータスがUPであることを確認

Step1:ステータスがDOWNであることを確認

以下のコマンドで、Verticaの全ノードが停止していることを確認します。

Step2:プロセスが残存していないことを確認

以下のコマンドを実行し、Verticaのプロセスが残存していないことを確認します。
※残存している場合は、Verticaのプロセスをkillしてください。

Step3:復旧可能時間を確認

epoch.logのLast good epochより最後にepochが書き込まれた時刻(復旧可能時刻)を確認します。
※epoch.logはVertica停止時に作成され、Vertica起動時に自動削除されます。

上記は、2024-07-02 17:58:51.007828+09時点まで復旧が可能です。「2024-07-02 17:58:51.007828+09」以降にデータの追加/更新をおこなっている場合は、DB復旧後、処理を再実行してください。

Step4:”-e last”を指定して起動

restart_dbコマンドに”-e last”オプションを付与してVerticaを起動します。

Step5:ステータスがUPであることを確認

以下のコマンドで、Verticaの全ノードが起動していることを確認します。

検証バージョンについて

この記事の内容はVertica 24.3で確認しています。

更新履歴

2024/08/22 本記事を公開