こんにちは、しずかです。Zabbix Agent 2のエージェントを再インストールした際のエラーとその対処について、解説していきます。
エラー内容
Windows Server 2022 で、Zabbix Agent 2(v6.0.27) をアンインストールし、MSIファイルを使って再インストールを試みたところ、下記のエラーに遭遇しました。
メッセージは以下の通りです。レジストリキーが既に存在してるため、エラーが発生しているようです。
Error :
Zabbix_agent2 : ERROR: failed to install Zabbix Agent 2 as service: failed to report service into the event log: SYSTEM\CurrentControlSet\Services\EventLog\Application\Zabbix Agent 2 registry key already exists
レジストリについては、マイクロソフト社のドキュメントを参照してください。
レジストリの構造 - Win32 apps | Microsoft Learn
また本エラーについては、Zabbixサポートに既にISSUE報告されているようです。
https://support.zabbix.com/browse/ZBX-20971
対処
対処の概要は、既に登録されているレジストリキーを削除することで、再インストールすることができます。 ただし手順については、公式の手順ではございませんので、責任については負いかねますこと、ご了承ください。
では、手順について説明していきます。まずはレジストリ エディターを起動します。
Winキー+R で開く場合は、regedit
で起動できます。
レジストリ エディターを起動すると、以下の画面が表示されます。
左ペインから先のエラーメッセージにあった SYSTEM\CurrentControlSet\Services\EventLog\Application\Zabbix Agent 2
を探していきます。
しかし、レジストリ エディターに馴染みのない私は、初手でつまづきました。。。HKEY_~
がいくつかあって、どこにあるのかわかりませんでした。。。
なので、検索していきます。編集 > 検索 (Ctrl + F) から検索していきます。
検索は少し時間がかかるようです。
ありました。HKEY_LOCAL_MACHINE
配下にあったようです。
Zabbix Agent 2を右クリックから削除
を選択します。
キーの削除の確認のポップアップが出るので、はい
を選択します。
これで削除は完了です。 MSIファイルを起動し、再インストールしてみると、インストールできるようになっているかと思います。
エラーが発生する原因
なぜエラーが発生してしまったのか、調査してみました。 Windows版のZabbixエージェントを削除するとき、2つの方法があります。
- コマンドプロンプトで
sc delete <サービス名>
- MSIファイルを起動しアンインストール
今回、調査した結果、1. の方法でアンインストールした際に、レジストリキーが残ってしまうことを確認しました。 2. の方法でアンインストールした際は、特にエラーもなく、再インストールができました。
Zabbix Agent 2 のMSIファイルでの削除方法
Zabbixエージェントがインストールされている状態で、MSIファイルを起動すると以下の画面が表示されます。Remove
を選択するとアンインストールできます。
確認画面が表示されるので、再度 Remove
をクリックします。
アプリケーションを閉じるかどうか聞かれますので、状況に応じて選択し、OK
をクリックします。
以下が表示されたら、Finish
をクリックして、削除完了です。
さいごに
今回の環境では、Windows Server 2022、Zabbix Agent 2 (v6.0.27) で確認しています。 Zabbixエージェントを再インストールする場面もあまり多くはないかと思いますが、誰かの役に立てれば幸いです。
静 優(執筆記事の一覧)
オンプレからクラウドに転身したインフラエンジニア