はじめに

admintoolsからVerticaを起動する時に、”admintools was unable read /opt/vertica/config/admintools.conf”が発生し起動に失敗する場合があります。本記事では、同エラーが発生した場合のトラブルシューティングをご紹介します。

“admintols was unable read”の発生例:
$ admintools -t start_db -d test -p test
admintools was unable read /opt/vertica/config/admintools.conf
due to a conflict with another process that was writing to this
file. Please retry or if necessary remove the .lock file
in the config directory
 

原因

本事象は、admintools を実行した時に生成されるロックファイル(admintools.conf.lock) が残存している場合に発生します。admintools.conf.lock が残存する原因は、以下のとおりです。

admintools.conf.lock の残存例:
・稼働中の Management Console が強制停止された
・Management Console が接続している、VerticaDBが強制停止された
・VerticaDBを停止せずに、OSが停止された
・admintools を制御している python プロセスがハングした(*)
(*)pythonプロセスの稼働例:

admintools.conf.lock とは

admintools.conf.lock は、admintools が複数のプロセスから実行された場合に、処理重複を避けるために作成されるファイルです。admintools の実行直後に作成されて、通常は1秒未満で自動削除されます。

admintools.conf.lock は、Vertica10.0.0-2 以前のバージョンで作成されますが、Vertica10.0.0-3 以降のバージョンでは作成されないように変更されました。

admintools.conf.lock が作成される操作

admintools.conf.lock は、admintools を実行するすべての操作で作成されます。Management Console による定期情報収集(DBの状態確認等)でも内部的に、admintools が実行されています。

admintools の操作例:
 DB起動 / DB停止 / DBの状態確認 / DB情報の一覧表/ DB作成 / DB削除 / テーブルの最適化
/ クラスターのリバランス / ノード追加 / ノード削除 / 再起動ポリシーの設定

対処方法

本事象が発生した場合は、admintools.conf.lock をリネームしてください。

1.admintools.conf.lock の存在確認

admintools.conf.lock が存在していることを確認します。もし存在していない場合は、弊社サポートセンターへお問い合わせください。

2.admintools.conf.lock のリネーム

admintools.conf.lock を admintools.conf.lock.bk にリネームします。

3.データベースの起動

データベースを起動します。「-d」の後にDB名、「-p」の後にパスワードを指定します。

検証バージョンについて

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

更新履歴

2024/10/30 本記事を公開