hkane8の技術ブログ

主にIT技術系で調査したこと等を備忘として記載します

【技術やってみた】Zabbix 4.0 DB(MySQL)を、新規構築したZabbix6.0から利用できるか

概要

Zabbix 4.0で利用していたDB(MySQL8.0)を、別に構築したZabbix6.0サーバから参照した時に、利用できるのかを検証してみた。

結果

検証した結果では、別構築したZabbix6.0サーバのホスト名とIPアドレスを、Zabbix4.0で動作していたサーバと同じホスト名、IPアドレスにすればZabbix6.0の管理画面は起動できた。ただし、Zabbix4.0の管理画面は利用できなくなった。

環境

Mac OS Monterey 12.4

・UTM v4.4.4

・UTM上の以下仮想マシン3台で検証。

 

実行内容

  1. 「orecentos7」にアクセスして、Zabbix 4.0 の管理画面を表示
  2. Zabbix4.0で利用していたDB「oredb」を「orecentos8a」でも利用する設定にして、「orecentos8a」でZabbix6.0を起動してみた。
  3. Zabbixサーバのログファイルを確認。DBに格納された情報がZabbixバージョン4なので、アップグレードが自動で開始した。

  4. update処理が進む

  5. DB処理の権限が不足しているエラーメッセージが出力されてた

  6. DB処理の権限を付与するために、oredbのMySQLに接続して以下を実行。
    SET GLOBAL log_bin_trust_function_creators = 1;
  7.  ZabbixのDB更新が実行開始された。

  8. 更新は進む

  9.  エラーメッセージ。Zabbixサーバは、orecentos7、192.168.64.2で登録されているためと思われる。

  10. この時点で、Zabbix4.0の管理画面も見れない状態になった。DB情報がZabbix6.0になっているエラーメッセージが表示された。

  11. 「orecentos7」は停止して、「orecentos8a」のホスト名を「orecentos7」、IPアドレスを「192.168.64.2」に変更して、OS再起動。Zabbixは自動起動されて、無事エラーなしで起動できた。

  12. Zabbix6.0の管理画面も表示できた。

  13. 「oredb」のMySQLに接続し、権限付与したDB定義を忘れずに元に戻した。
    SET GLOBAL log_bin_trust_function_creators = 0;

 

以上です。