本記事の概要
可用性を求められるサーバを運用していた場合、障害発生時に早期発見して対応する必要があります。
しかし、手動で常にサーバの状態を確認すると膨大な手間と時間が掛かり、サーバが複数台あった場合は一つ一つのサーバの状態を確認することはできません。
そのような課題はオープンソースの監視ソフトウェアであるzabbixを導入することで解決できます。
zabbixの機能を用いることで障害発生時に自動でアラートメールを送ることができますので、正常にサーバの状態を確認する手間をなくして、障害発生時に早急に対応できます。
サーバの監視に困っている方のために、私が格安でzabbixの構築作業を請け負います。
本記事では、zabbix構築をご依頼いただく際の認識合わせとして、「zabbixサーバ構築の流れ」と「前提条件」を記載します。
本記事に記載いただいた内容をご確認いただき、ココナラ(coconala)の「稼働監視のためのzabbixサーバを構築」にて発注処理をお願いします。
zabbixサーバ構築の流れ
サーバの可用性を上げたり、障害発生時に検知したい場合、zabbixサーバを構築して監視することは有効な手段です。
私にzabbixサーバの構築を依頼していただける場合、ココナラ(coconala)の「稼働監視のためのzabbixサーバを構築」を購入していただいた後に、以下の流れで作業します。
「パラメータシートの作成」と「zabbixエージェントの導入」は実施しない可能性があるため、背景の色を薄くしています。
各工程の概要は以下の通りです。
(1) ヒアリングシートの送付
私が作成したヒアリングシートをお客様に送付します。
ヒアリングシートでは、以下の内容を確認させていただきます。
・OSや管理画面の認証情報
・監視対象の機器の情報
・監視項目(死活監視、TCP通信ポート応答、CPU使用率等)のアラート条件
・アラート発生時の通知先のメールアドレス
(2) ヒアリングシートの記入
お客様にて、ヒアリングシートの記入をお願いします。
私の方で推奨の設定を記載した方がよろしければ、ご連絡お願いします。
(3) クラウド環境契約
お客様にて、zabbixサーバを構築するためのクラウド環境の契約をお願いします。
「さくらインターネット(VPS環境)」、「ConoHa VPS」、「AWS」を3つのいずれかのクラウド環境を契約する場合は、必要でしたら私が手順の提示などで契約の支援をすることができます。
クラウド環境を契約していただいたら、OSにログインするための情報を私に教えてください。
(4) パラメータシートの作成(オプション対応)
必要に応じて、私がパラメータシートを作成して、後日お客様に送付します。
パラメータシートのフォーマットのみ欲しい場合はココナラ(coconala)の「zabbixのパラメータシートのフォーマットを販売」にて購入手続きをしてください。
※パラメータシートの作成はオプション対応となります。
(5) zabbixエージェントの導入
CPU使用率やメモリ空き容量やログ監視などをする場合、監視対象サーバにzabbixエージェントをインストールする必要があります。
必要に応じて、お客様にて、監視対象サーバにzabbixエージェントのインストールをお願いします。
zabbixエージェントのインストール手順は「zabbixの推奨の監視項目とzabbix agentのインストール」をご確認ください。
(6) zabbixサーバ構築
私がzabbixサーバの構築、監視設定、動作確認をします。
前提条件(zabbixサーバでの監視項目)
zabbixは様々なデータを取得でき、それを条件にしてアラートを発生させることができます。
今回は「Linux OS用の監視」と「Windows OS用の監視」と「Webサーバ用の監視」の3つの監視設定のテンプレートを準備しますので、監視対象のサーバにどのテンプレートを適用するか選択してください。
【Linuxサーバ用の監視】
Linuxサーバの監視設定は以下の通りです。
監視項目 | 監視の目的 | データ取得方法 |
---|---|---|
死活監視(ping監視) | OSI参照モデルの3層(ネットワーク層)の正常性監視 | zabbixからping通信 |
TCP通信ポート応答監視 | OSI参照モデルの4層(トランスポート層)の正常性監視 | zabbixからTCP通信 |
CPU使用率 | OSの負荷状況の監視 | zabbix agentを用いた取得 |
メモリの空き容量 | OSの負荷状況の監視 | zabbix agentを用いた取得 |
ディスク使用率 | ディスクの空き容量が十分であることを監視 | zabbix agentを用いた取得 |
プロセス監視 | 重要なプロセスが起動していることを確認 | zabbix agentを用いた取得 |
ログファイル | アプリケーションのエラーログが出力されていないことを監視 | zabbix agentを用いた取得 |
ファイルの更新 | セキュリティとして不正にファイルが更新されたことを監視 | zabbix agentを用いた取得 |
【Windowsサーバ用の監視】
Windowsサーバの監視設定は以下の通りです。
監視項目 | 監視の目的 | データ取得方法 |
---|---|---|
死活監視(ping監視) | OSI参照モデルの3層(ネットワーク層)の正常性監視 | zabbixからping通信 |
TCP通信ポート応答監視 | OSI参照モデルの4層(トランスポート層)の正常性監視 | zabbixからTCP通信 |
CPU使用率 | OSの負荷状況の監視 | zabbix agentを用いた取得 |
メモリの空き容量 | OSの負荷状況の監視 | zabbix agentを用いた取得 |
ディスク使用率 | ディスクの空き容量が十分であることを監視 | zabbix agentを用いた取得 |
サービス監視 | Windowsのサービスが起動していることを監視 | zabbix agentを用いた取得 |
プロセス監視 | 重要なプロセスが起動していることを確認 | zabbix agentを用いた取得 |
ログファイル | アプリケーションのエラーログが出力されていないことを監視 | zabbix agentを用いた取得 |
Windowsイベントログ | Windowsイベントログにエラーログが出力されていないことを監視 セキュリティとしてセキュリティログを監視して不正ログインを監視も推奨 | zabbix agentを用いた取得 |
ファイルの更新 | セキュリティとして不正にファイルが更新されたことを監視 | zabbix agentを用いた取得 |
【Webサーバ用の監視】
Webサーバの監視設定は以下の通りです。
監視項目 | 監視の目的 | データ取得方法 |
---|---|---|
HTTPステータスコード | Webページが正常に動作しているかHTTPステータスコードの値(200番)を監視 | zabbixからHTTP又はHTTPSで通信 |
前提条件(zabbixサーバのシステム構成)
以下のソフトウェアを用いて、zabbixサーバを構築します。
- CentOS Stream 8、またはUbuntu 20.04.1 LTS
- Zabbix 5.0LTS
- Apache (Webサーバ用のソフトウェア)
- MySQL (データベース用のソフトウェア)
前提条件(納品物)
zabbixサーバを構築完了後に、以下の内容を納品しますので、問題なけれ検収処理をお願いします。
- ヒアリングシート
- zabbixサーバ
- zabbixサーバの構築手順
- パラメータシート(※オプションを追加された場合のみ)
zabbix関連の記事
zabbix関連の記事は以下の通りです。
必要に応じて、ご確認ください。
No | タイトル | 記事の概要 |
---|---|---|
1 | zabbixのハンズオン形式での勉強 (構築、監視設定、アラート確認) | zabbixのおすすめの勉強方法をご紹介します。 |
2 | 仮想基盤構築(Virtualboxインストール) 〇Virtualboxバージョン6 〇Virtualboxバージョン7 | zabbixサーバを構築するための準備として、 仮想基盤のソフトウェアであるVirtualboxを インストールします。 |
3 | zabbixサーバのインストール 〇zabbixバージョン5.0 [仮想環境に構築] CentOS Stream 8、Ubuntu 20.04 [クラウド環境に構築] さくらインターネット、ConoHa VPS、 カゴヤ 〇zabbixバージョン6.0 [仮想環境に構築] CentOS Stream 8 〇zabbixバージョン7.0 [仮想環境に構築] CentOS Stream 9 | zabbixサーバを構築します。 |
4 | zabbixの監視設定の流れ | zabbixの監視設定の流れを理解します。 |
5 | zabbixの推奨の監視項目と zabbix agentのインストール ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | zabbixにて監視する推奨の項目と、 監視対象サーバにzabbix agentを インストールする手順を理解します。 |
5-1 | 死活監視(ping監視) ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | 死活監視の設定をします。 |
5-2 | TCP通信ポート応答監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | TCPの通信ポートの応答有無を監視する 設定をします。 |
5-3 | CPU使用率監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | サーバのOSのCPU使用率を監視する 設定をします。 |
5-4 | メモリ空き容量監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | メモリの空き容量を監視する設定をします。 |
5-5 | ドライブのディスク空き容量監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | ドライブのディスク空き容量を 監視する設定をします。 |
5-6 | プロセス監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | プロセスの停止を監視する設定をします。 |
5-7 | ログファイル監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | ログファイル中に特定のメッセージが 出力されたか監視します。 |
5-8 | ファイルの変更(チェックサム)監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | ファイルの内容が変わったことを 監視します。 |
5-9 | Windows OSのサービス状態監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | Windows OSのサービスの起動状態を 監視します。 |
5-10 | Windowsイベントログ監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | Windowsイベントログに特定のログが 出力されたか監視します。 |
5-11 | Webシナリオ(Webページ監視) ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | Webアクセス時のHTTPステータスコードが 200番であることを監視します。 |
5-12 | SNMP trap監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | 機器から送信されたSNMP trapを 受信したことを監視します。 |
5-13 | ネットワーク機器監視 ・zabbixバージョン5.0の場合 ・zabbixバージョン6.0の場合 ・zabbixバージョン7.0の場合 | ネットワーク機器の監視設定をします。 |
6 | zabbixの監視データの確認と メール通知設定 | 監視データの確認方法を理解します。 また、障害発生時のアラートメールの 通知設定をします。 |
7 | zabbixの詳細設計書(パラメータシート)の サンプル | zabbixのパラメータシートのサンプルを 記載します。 |
8 | 【仕事依頼】zabbixサーバの 要件定義、設計、構築 | zabbixの構築作業をご依頼いただける場合の 作業の流れなどを記載します。 |
zabbix関連の書籍
zabbixに関する設定を網羅的および詳細に学びたい場合、以下の書籍がおすすめです。
ページ数が多い書籍ですので、分からないことを調べる辞書の役割にもなります。