OpenText Analytics Database 旧Vertica

技術情報サイト

Analytics Database

Vertica起動が「admintools was unable read /opt/vertica/config/admintools.conf」で失敗した場合の対処方法

公開日:
更新日:
アーキテクチャ
#トラブルシューティング
#admintools

はじめに

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プロセスの稼働例:
[root@ ~]# ps -ef | grep -i python | grep -v grep
dbadmin  180139 180084  3 12:20 pts/0    00:00:00 /opt/vertica/oss/python/bin/python /opt/vertica/bin/admintools

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 が存在していることを確認します。もし存在していない場合は、弊社サポートセンターへお問い合わせください。
$ ls -l /opt/vertica/config/admintools.conf.lock

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

admintools.conf.lock を admintools.conf.lock.bk にリネームします。
$ cd /opt/vertica/config
$ mv admintools.conf.lock admintools.conf.lock.bk
$ ls -l admintools.conf*

3.データベースの起動

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

$ admintools -t start_db -d test -p test

検証バージョンについて

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

更新履歴

2024/10/30 本記事を公開