こんにちは、しずかです。6/4に X で Zabbix Team Japan (@zabbix_jp) から 「Zabbix7.0 LTSがリリースされました!」とのお知らせがありました。
#Zabbix 7.0 LTSがリリースされました!
— Zabbix Team Japan (@zabbix_jp) 2024年6月4日
Zabbixプロキシの冗長化や負荷分散、メトリクス取得の効率化や多要素認証対応など盛り沢山のバージョンです。
6/12(水)-14(金)に開催する #interop24 での展示や、 #shownet の監視も7.0で行っているので、是非ブースでも7.0を体験ください!
ということで、さっそくインストールして遊んでみました。
目次
はじめに
この記事の手順や構成については、あくまでも検証目的です。責任については負いかねますので、ご了承ください。 また、当社のサービス提供時の構築手順や、システム構成とは異なりますので、ご了承ください。
構成
EC2 1台、RDS 1台のシンプルな構成で試してみました。
EC2
項目 | パラメータ |
---|---|
OSイメージ | Ubuntu Server 24.04 |
アーキテクチャ | Arm |
Zabbix | 7.0.x LTS |
RDS
項目 | パラメータ |
---|---|
エンジン | MySQL 8.0.x |
カスタムパラメータグループ | ファミリー mysql8.0 を作成してアタッチ |
カスタムパラメータグループは、Zabbixインストール時に、一部MySQLのパラメータを変更する必要があります。そのため、リソース構築時にアタッチしておくと良いでしょう。
なお、記載のない部分は特にこだわりはありません。
リソースの準備
詳細は割愛しますが、以下の通りリソースを準備しておきます。
- VPC周りの作成 (VPC/サブネット/ルートテーブル/インターネットゲートウェイなど)
- セキュリティグループの作成 (EC2用、RDS用など)
- EC2インスタンスの作成
- RDSインスタンスの作成 (パラメータグループの作成とアタッチ)
パラメータグループのパラメータ編集
パラメータグループを作成後、以下のパラメータを指定の値に変更しておきましょう。
名前 | 値 |
---|---|
log_bin_trust_function_creators | 1 |
Zabbix Server 7.0 のインストール
インスタンスにログインし、適宜アップデートをかけておきましょう。
$ sudo su - # apt update # apt upgrade
次にブラウザで、Zabbixのサイトにアクセスします。
右上の ダウンロード
をクリック。
Zabbix Packages から プラットフォームを選択します。
ページをスクロールし、リポジトリの登録と各パッケージをインストールまで行います。
次に、c. Create initial database
では、RDSを利用するため、コマンドを変更する必要があります。
① については、RDSのエンドポイントの指定、マスターユーザを指定する必要があります。
コマンド例 # mysql -h <エンドポイント> -u <マスターユーザ> -p
②については、RDSを使用するため、ホストネーム部分でlocalhostを指定すると、接続することができません。 そのため、ホストネームについては指定せずに作成、並びに権限付与する必要があります。 パスワードはご自身で指定してください。
コマンド例 mysql> create user zabbix identified by '<password>'; mysql> grant all privileges on zabbix.* to zabbix;
次の log_bin_trust_function_creators
のパラメータ指定については、パラメータグループで変更しているので、ここでは変更不要です。
念のため反映されているか確認しておきましょう。
mysql> SHOW VARIABLES LIKE 'log_bin_trust_function_creators'; +---------------------------------+-------+ | Variable_name | Value | +---------------------------------+-------+ | log_bin_trust_function_creators | ON | +---------------------------------+-------+ 1 row in set (0.01 sec)
quit でデータベースとの接続は抜けてしまいましょう。
次にスキーマのインポートですが、先と同じようにRDSを利用するため、コマンドを変更する必要があります。
以下のように、RDSのエンドポイントの指定する必要があります。ユーザは先ほどcreate userした zabbix を使用します。
# zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -h <エンドポイント> --default-character-set=utf8mb4 -uzabbix -p zabbix
スキーマのインポートが完了したら、パラメータを元に戻します。 ただし、最初に変更した時と同じように、パラメータグループで変更します。
名前 | 値 |
---|---|
log_bin_trust_function_creators | 0 |
次に、zabbix_server.conf
を修正します。
RDSを使用するため、以下のパラメータの修正が必要です。
パラメータ | 値 |
---|---|
DBHost | RDSのエンドポイント |
DBPassword | create userした zabbix のパスワード |
最後にプロセスをリスタートさせて完了です。
Zabbix Webの日本語化とグラフの文字化け対応
デフォルトでは、Zabbix Webは日本語対応していません。OSにCentOSやRHLEを利用している場合、zabbix-web-japanese
のパッケージが利用できます。
しかし、Ubuntuを利用している場合、現時点では同様のパッケージ配布はされてないようです。
以下の手順で日本語化とグラフの文字化けを対応することができます。
Zabbix Webの日本語化
# dpkg-reconfigure locales
以下のUIが表示されるので、ja_JP.UTF-8 UTF-8
を探して スペース
を押下してチェックを入れます。
選択したら、Tab
を押下して Enter
を押下してください。
以下の画面に遷移しますので、ja_JP.UTF-8
を選択して、<Ok>
にカーソルを合わせて、Enter
を押下してください。
CLI上に以下の出力があれば完了です。
Generating locales (this might take a while)... en_US.UTF-8... done ja_JP.UTF-8... done Generation complete.
以上で、Zabbix Webの日本語化の対応が完了です。
グラフの文字化け対応
上記の方法でZabbix Webの日本語対応を行った場合、グラフの文字化けが発生してしまいます。 以下の方法で対処することができます。 まずはパッケージのインストールをします。
# apt install fonts-mplus
次に以下のコマンドを実行します。
update-alternatives --install /usr/share/zabbix/assets/fonts/graphfont.ttf zabbix-frontend-font /usr/share/fonts/opentype/mplus/Mplus2-Regular.otf 20
以下のコマンドを実行して、Mplus2-Regular.otf
に *
が付いていることを確認してください。ついていればそのまま Enter
を押下します。
# update-alternatives --install /usr/share/zabbix/assets/fonts/graphfont.ttf zabbix-frontend-font /usr/share/fonts/opentype/mplus/Mplus2-Regular.otf 20 update-alternatives: using /usr/share/fonts/opentype/mplus/Mplus2-Regular.otf to provide /usr/share/zabbix/assets/fonts/graphfont.ttf (zabbix-frontend-font) in auto mode root@ip-10-10-12-166:~# root@ip-10-10-12-166:~# update-alternatives --config zabbix-frontend-font There are 2 choices for the alternative zabbix-frontend-font (providing /usr/share/zabbix/assets/fonts/graphfont.ttf). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/share/fonts/opentype/mplus/Mplus2-Regular.otf 20 auto mode 1 /usr/share/fonts/opentype/mplus/Mplus2-Regular.otf 20 manual mode 2 /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf 10 manual mode Press <enter> to keep the current choice[*], or type selection number: #
以上で、グラフの文字化け対応が完了です。
Zabbix Web のセットアップ
まずは ダウンロードページの最後に残っていた、各プロセスの再起動と自動起動の設定をします。
次にEC2インスタンスのパブリックIP または パブリックDNS を確認し、Webブラウザでアクセスします。
http://<パブリック IP or DNS>/zabbix
Default language のプルダウンから japanese (ja_JP)
を選択し、 Next Step
をクリックします。
すべての項目が OK
であることを確認し、次のステップ
をクリックします。
次にデータベースの接続設定では、データベースホストの項目で RDSのエンドポイント
を指定します。その他の項目も適宜入力し、次のステップ
をクリックします。
次の設定も、適宜入力し、次のステップ
をクリックします。
設定内容を確認し、問題なければ、次のステップ
をクリックします。
最後に以下の画面が表示されればセットアップ完了です。終了
をクリックします。
ログイン画面が表示されたら、デフォルトのユーザ/パスワードでログインします。
ユーザー名 | パスワード |
---|---|
Admin | zabbix |
ダッシュボードが表示されれば完了です!
さいごに
今回はEC2とRDSを利用して、Zabbix 7.0 の環境を構築してみました。 Zabbix6.0などこれまでのインストール方法とほぼ同じ感覚で、構築できると思います。 次回はZabbix7.0での新機能の検証をしてみます。
最後まで読んでいただき、ありがとうございました。
静 優(執筆記事の一覧)
オンプレからクラウドに転身したインフラエンジニア