セイテクエンジニアのブログ かつて山市良と呼ばれたおじさんのブログ vol.45 BOMを担ぐおじさん、Zabbixと戯れる
2024年09月24日配信
2024年09月24日更新
執筆者:山内 和朗
システムの運用管理やサーバー監視の分野では、オープンソースソフトウェア(OSS)の「Zabbix」が“最強”でしょうとよく聞きます。誰でも一度は最強を目指すものですが、最愛に比べたら最強なんて。これから最愛になる予定(ならなければならない)の弊社製品「BOM for Windows」のことをもっとよく知るために、まずは最強の敵(友)であるZabbixを知っておこうということで、まったく事前知識のない状態からZabbixを試用しながら、BOMとの比較などできたらと思います。
“Zabbixは、オープンソースソフトウェア(OSS)の統合監視ソリューションの1つです。Zabbixは、サーバー、ネットワーク機器、クラウドサービス、IoTセンターなどあらゆるリソースからデータを収集して、ヘルス状態を監視し、アラートを通知して、パフォーマンスを可視化することができ、しかもOSSなので無料で使用できます。”とはインターネットを少し検索して得た情報を簡単にまとめたものです。
あらゆるものを監視でき、あらゆる規模に対応でき、カスタマイズ性と拡張性に優れている点では確かに“最強”だと思いますし、OSSなので無料、しかも監視対象の上限や機能制限なく、フル機能が無料という点で“人気”が高いのも頷けます。
Zabbix社のWebサイト(https://www.zabbix.com/jp/)を見ると、ドキュメントが充実しているのはもちろん、日本語を含む書籍も多数出版されています。書籍の多さだけを見ても、その人気が分かります。一方で、分厚い書籍はその扱いの難しさを示しているようでもありますし、書籍のレビューを見ても多くのユーザーがZabbixの理解やその使いこなしに苦労しているようにも感じます。ちなみに、Zabbixよりも歴史の長い※1BOMに関する書籍は出版されていません。
※1 Zabbix 1.0は2001年リリース、BOMの前身であるBack Office Monitorの販売開始は1996年です。
これからZabbixを試用するのですが、前提知識がまったくない状態からのスタートです。当面はインターネットから得らる情報だけを頼りに試行錯誤していくことになるでしょう。
さて、何から始めましょう。まずはインストールしてみないと何も始まりません。Zabbixのダウンロードページ(https://www.zabbix.com/jp/download)を見ると、さまざまなプラットフォーム(Linux、クラウドイメージ、Dockerコンテナー、物理/仮想アプライアンス※2)に導入できるようです。
※2 物理アプライアンスとしては、Zabbix搭載アプライアンス、Zabbixプロキシ搭載アプライアンスとして販売されています。検証用仮想アプライアンス(無料)はZabbixのダウンロードサイトからISOイメージまたはVMイメージとしてダウンロード可能です。運用向け仮想アプライアンスの利用権は、Zabbix Enterpriseサポート&サブスクリプション(有料)で提供されます。
Zabbix Enterprise Appliance|zabbix.com
Zabbix Enterpriseサポート&サブスクリプション|zabbix.com
今回は評価用に、私個人専用のHyper-Vベースのラボ環境に仮想マシン(VM)を作成し、Ubuntu Server 24.04 LTSをインストールしました。Zabbixのシステム要件(→ZABBIX Documentation)によると、最小構成(Small)では2コアCPU、8GBとなっています。VMのメモリやCPU数は後から変更できるので、とりあえず、4コアCPU、8GBメモリを割り当てた第2世代のVMを作成しました。また、ラボ環境の閉じたネットワークはDHCPでIPアドレスを管理しているのですが、変更されないように割り当てられたリースを予約に追加しておきました(画面1)。通常は、監視サーバーに対しては固定のIPアドレスを割り当てることをお勧めします。また、Hyper-V上のLinux VMについては、以下のメモで説明している設定も行いました。
メモ. Hyper-V上のLinuxゲストの最適化
画面1 Zabbixのインストール用にHyper-Vベースのラボ環境に用意したLinux VM(Ubuntu 24.04 LTS)
Zabbixのダウンロードページ(https://www.zabbix.com/jp/download)では、「Zabbix Packages」を選択し、「1 Zabbixサーバーのプラットフォームを選択」でZabbixのバージョン、Linuxディストリビューション、OSバージョン、Zabbixコンポーネント、データベース、Webサーバーをお好みにあわせて選択していくと(画面2)、その下の「2 Install and configure Zabbix for your platform」に具体的なコマンドラインが記述されたインストールが選択した内容に合わせて示されます(画面3)。なお、Zabbixの最新バージョンは2024年6月初めにリリースされたばかりの7.0 LTSCであり、このブログではこのバージョンを前提として説明します(このブログ執筆時点ではバージョン7.0.2)。ちなみに、Zabbix 6.4まではGPLv2(GNU General Public License version 2)の下でリリースされていましたが、Zabbix 7.0以降はAGPLv3(GNU Affero General Public License version 3)に変更されました。無料のOSSであることには変わりません。
画面2 「1 Zabbixサーバーのプラットフォームを選択」でプラットフォームを好みに合わせてこのように選択
画面3 プラットフォームの選択に合わせてインストール手順が示される
Zabbixのダウンロードサイトの手順2に示された手順に従って操作すれば、誰でも簡単にインストールすることができそうです。手順はrootシェル(#)のコマンドラインで記載されています。Linuxに不慣れな人で、sudoユーザー(sudoグループのメンバーまたはsudoers登録ユーザー)で作業している場合は、コマンドラインの先頭にsudoを追加する必要がある点に注意する必要があるかもしれません。
さっそく示された手順に従ってインストールを進めていきます。しかし、すぐに「c. Create initial database」で躓きました。「Can't connect to local MySQL server...」というエラーが表示されたのです。
今回、「1 Zabbixサーバーのプラットフォームを選択」ではデータベースとして「MySQL」、Webサーバーとして「Appache」を選択しました。手順2-bのapd installコマンドの実行でインストールされた依存関係のある追加パッケージを確認すると、Apache(apache2パッケージ)のインストールは行われていましたが、MySQLについてはMySQLクライアント(mysql-clientパッケージ)のみがインストールされていて、MySQL本体(mysql-server)はインストールされませんでした。手順2-cの最初に書いてある「Make sure you have database server up and running.」は、MySQLサーバーについては自分で用意しておいてねと言っているようです。次のコマンドラインを実行して、MySQLサーバー(mysql-serverパッケージ)をインストールしてから進めると(画面4)、手順2-cから最後の2-fまでインストールを手順を完了することができました(画面5)。
$ sudo apt install mysql-server |
画面4 mysql-serverパッケージは自分でインストールする必要があった。apache2およびmysql-clientパッケージについては、手順2-bのapt installコマンドで依存関係のある追加パッケージとしてインストールされる
画面5 リモートのコンピューター(WindowsまたはデスクトップのあるLinux)のWebブラウザーからZabbix UI Webページに接続する
ZabbixとBOM for Windowsは、監視ツールという点では同じカテゴリですし、監視できる項目も多くが共通しています。しかし、システム要件、導入方法、監視モデルは大きく異なり、単純に比較することはできません。比較すること自体、適切かどうかわかりませんが、弊社にとっては気になる競合監視ツールであり連携可能なツール(→ BOM Ver.8.0 - 機能一覧)でもあります。というわけで、多少無理があることもあるかもしれませんが、毎回、いろいろと比較していきたいと思います。今回は、監視サーバーのOS要件とインストールについて比較してみました。
Zabbixの監視サーバーへのインストールは、物理/仮想アプライアンスやクラウドイメージ、Dockerコンテナーを用いない限り、概ね今回説明したような感じです。Zabbixの監視サーバーは、Linuxにのみ導入できます。Windows Serverに導入することはできません(エージェントはサポート)。Linuxに慣れていれば多少戸惑うことはあっても難しいことはありません。しかし、Linuxに不慣れな人にはハードルが高いかもしれません。そして、初期セットアップは、これで終わりではありません。Zabbix UI Webページのダッシュボードを表示するまでには、もう少しセットアップ手順が残っています(次回に紹介します)。
Zabbixで監視(ローカル以外の監視)を行うには、今回インストールした監視サーバーに加えて、監視対象へのエージェントのインストール(またはエージェントレス)、そして監視サーバーへのホストの登録が必要です。なお、インストールページは一部日本語化されていますが、手順のほとんどは英語のままですし、Zabbix 7.0 LTSのドキュメントは日本語化されていません。この先、Zabbix 6.xの日本語化ドキュメントと最新のドキュメントを行き来しながら設定していくことになりそうです。
一方、自立分散型サーバー監視ソフトである「BOM for Windows」には、監視サーバーという概念がありません。すべての監視対象のWindows ServerにBOMをインストールしてローカル監視するのが基本です。そのインストールはWindoowsインストーラー形式であり、難しいところは何もありません(画面6)。インストール完了後に自動開始する「システム設定ウィザード」と「初期設定ウィザード」を完了すればすぐに監視を開始できます。インストールから初期設定まで、インストールを実行する人に特別なスキルは必要なく、最短10分もあれば監視を開始できます。
画面6 BOMのインストールは、Windowsインストーラー形式で誰にでも簡単(実際にはインストーラーが開始するとランチャーは自動的に閉じます。この画面は合成です)
BOMの導入のために、前提となるソフトウェア、例えば、データベースを用意する必要はありません(オプション製品であるアーカイブデータベースやレポートデータベースを導入する場合は必要です)。BOMを導入したWindows Serverを集中監視コンソールを用いて集中的に監視することもできますし、BOMをインストールできない環境にはエージェントレスの代理監視で対応できます。ローカル監視、エージェント監視で監視できる項目に違いはほとんどありません。BOMのソフトウェアはWindows Serverにのみ対応しており、Windows Serverの監視専用というイメージを持たれるかもしれませんが、「Linuxオプション」によるLinuxサーバーのリモート監視、および「VMwareオプション」によるESXi/vSphereのリモート監視、Ping監視、ポート監視、SNMPトラップを利用したネットワーク機器の監視も可能です。
2024年10月31日 | vol.56 はじめてのAzure REST API|Azure&Entra IDスクリプト大作戦(3) |
---|---|
2024年10月29日 | メモ. AlmaLinux(RHEL系)をVMwareからHyper-VへV2V移行するには |
2024年10月28日 | vol.55 サービスプリンシパルによる非対話型認証|Azure&Entra IDスクリプト大作戦(2) |
2024年10月25日 | メモ. Hyper-Vのもう1つの可用性オプション、Hyper-Vレプリカ |
2024年10月24日 | vol.54 Azure&Entra IDの情報取得、スクリプト大作戦 |
2024年10月22日 | メモ. Windows 11 24H2の新規インストール、正しいはずのパスワードが弾かれる(追加情報あり) |
2024年10月21日 | vol.53 Zabbixにあって、BOMにないもの、代用できるもの|BOMおじさんとZabbix(9) |
2024年10月18日 | メモ. クラスター対応更新(CAU)ってこんな感じ |
2024年10月17日 | vol.52 Webサイト/アプリの稼働監視|BOMおじさんとZabbix(8) |
2024年10月15日 | vol.51 更新の監視と管理|BOMおじさんとZabbix(7) |