Zabbix Applianceの導入
監視ソフトウェアとして広く使用されているZabbix。アプライアンス版は簡単に導入できるので検証用途等にも便利です。
本記事は、Zabbix Applianceの導入手順をまとめたものです。対象はZabbix 6系、仮想環境向けに配布されているアプライアンス版をHyper-V上に導入します。ESXiサーバでも同様のはずです。
本記事の目的
- Zabbixのアプライアンス版等の配布形態を把握する。
- Zabbix Applianceを導入する。
基本
Zabbixの導入方法の種類
Zabbixマニュアルによると、以下の導入方法があります。
- Linux各ディストリビューション向け配布パッケージ(RPM等)
- ソースからのコンパイル
- コンテナ(Dockerイメージ)
- 仮想アプライアンス(本記事の対象)
本記事では、仮想アプライアンス版について説明します。
Zabbixマニュアルの内容から、いくつか補足事項を要約します。
-
仮想アプライアンスは評価のために使用することができます。本番環境での利用は意図されていないようです。本番環境で使用するとライセンス違反になるという意味ではないです。
-
仮想アプライアンスには、Zabbixサーバ本体とMySQL DB、フロントエンド(Webサーバ)など、Zabbixの稼働に必要なコンポーネントがすべて含まれています。個々のコンポーネントのインストール作業が不要なので、デプロイと簡単な初期セットアップにより、すぐにZabbixを使い始められることが利点です。
-
仮想アプライアンスは、以下の形式で配布されています。
- VMWare (.vmx)
- Open virtualization format (.ovf)
- Microsoft Hyper-V 2012 (.vhdx)
- Microsoft Hyper-V 2008 (.vhd)
- KVM, Parallels, QEMU, USB stick, VirtualBox, Xen (.raw)
- KVM, QEMU (.qcow2)
その他、コンテナ版について詳細は本記事では触れませんが、過去に混同しやすい名称でコンテナ版のアプライアンスがリリースされていたので、留意点として後述しておきます。
Zabbix Applianceの導入
仮想ディスクイメージのダウンロード
ダウンロードページから、使用している仮想環境に合った仮想ディスクイメージをダウンロードします。
本記事では、Zabbix 6.0 LTSのHyper-V 2012用のイメージを使用しました(.vhdx)。
ダウンロード後、仮想環境のホストから参照可能なパスに格納します。
仮想アプライアンス用の仮想マシン作成
Hyper-V上で仮想マシンを新規作成し、準備したvhdxファイルを指定します。
- 具体的には、仮想マシンの新規作成ウィザードの「仮想ハードディスクの接続」画面で、「既存の仮想ハードディスクを使用する」を選択し、準備したvhdxファイルを指定します。
なお、ここで指定したvhdxファイルは、格納パスは変更されずそのまま仮想ディスクとして使用されますが、仮想マシン作成後に仮想マシン自体の格納パスを移動できるので、いったん気にせず進めても問題ありません。
その他、補足です。
- 「世代の指定」画面では、基本的に「第1世代」で問題ありません。
- 必要なメモリは、Zabbixマニュアルに1.5 GBと記載があります。もちろん後で変更できます。
- 「ネットワークの構成」で、DHCPが有効なDefault Swictchを指定します。
DHCPが無くても導入できそうですが、マニュアル上は最初のセットアップ時にはDHCPを使ってIPアドレスを取得することになっています。仮想マシン作成後、コンソールから固定IPアドレスを設定可能です。
仮想アプライアンスの起動と初期セットアップ
仮想マシンの作成が完了したら、仮想マシンを起動します。
基本的な手順はZabbixマニュアルに書かれている通りですが、概要と注意点を記載します。
-
仮想マシンを起動したら、コンソールを開きます。ログイン画面が表示されます。(ちなみにマニュアル記載のCentOSでなくAlmaLinuxでした)
-
Zabbix Applianceにログインする際のユーザ名とパスワードは、2 Zabbix configurationに記載があります。
アプライアンス内のLinux OSは、ユーザ名 root、パスワード zabbix でログイン可能です。 -
Zabbix Applianceのコンソールにログインすると、説明メッセージが表示されます。その後は通常のLinuxのシェルを使用できます。
-
ip addr show
コマンドで、Zabbix ApplianceがDHCP経由で取得したIPアドレスを確認します。 -
Hyper-Vホスト側でブラウザを起動し、
http://確認したIPアドレス
にアクセスすると、Zabbixのログイン画面が表示されます。ユーザ名 Admin、パスワード zabbix でログイン可能です。 -
固定IPアドレスを設定する場合は、1.3 Using a static IP addressの手順に従います。
注意点として、固定IPアドレス設定のために仮想マシンのコンソールで/etc/sysconfig/network-scripts/ifcfg-eth0
を編集する際、キーボードが英語配列になっているようです(環境や設定によると思います)。日本語キーボードを使用する場合、”=”は” ^ “のキー、”:”はShift+”;”のキーで入力できます。
以下を修正し、systemctl restart network
で反映されます。ip addr show
などで反映結果を確認できます。- BOOTPROTO=dhcp を BOOTPROTO=noneに変更
- 以下の行を追加
- IPADDR=IPアドレス
- PREFIX=CIDR形式のネットマスク長(24など)
- GATEWAY=ゲートウェイのIPアドレス
- DNS1=DNSサーバのアドレス(DNS2行を追加してもよい)
-
タイムゾーン設定のため、1.4 Changing time zoneの手順に従い修正します。
日本なら、cp /usr/share/zoneinfo/Japan /etc/localtime
です。 -
以上で初期セットアップ完了です。
http://IPアドレス
でZabbixの管理画面にアクセスし、Zabbixを使用できます。
詳細
その他の設定
-
仮想アプライアンスはrootでsshログインできるようになっています。セキュリティ上問題がある場合は修正しておきましょう。
-
必要に応じ、Webサーバ(nginx)の設定やファイアウォールの設定を変更しましょう。アクセス制限関連の設定です。
-
# dnf update zabbix*
にてzabbixのアップデートが可能です。# dnf update
で全パッケージをアップデートしても大丈夫かと思いますが、マニュアルには記載はありません。
(廃止済みの形態)コンテナ版Zabbixにおけるアプライアンス
コンテナ版についての詳細は本記事では触れませんが、過去に混同しやすい名称でアプライアンスがリリースされていたので、留意点として記載します。
Docker Hubに、all-in-oneコンテナ版の「zabbix-appliance」というものがありますが、この導入形態は既に廃止されました。
all-in-oneなので、MySQL DBやNginx Web サーバが1つのイメージに同梱されていて便利そうですが、コンテナ版Zabbixは、各コンポーネントのDockerイメージを組み合わせて構成する必要性があるそうです。
Important information:_ Zabbix Docker Appliance image has been decommissioned and will not be available for 3.0.31, 4.0.19, 4.4.7, 5.0.0 and newer releases. Please use a separate Docker image for each component instead of the all-in-one solution.
https://hub.docker.com/r/zabbix/zabbix-appliance