インターネットシステムには障害がつきものです。人為的なミスもあれば、ハードウエアが自然に故障することもあります。これらを事前に想定して防止をすることも重要ですが、障害をなくすことはまず不可能です。
起きてしまった障害の被害を最小限に食い止めるため、いかに早くシステム管理者がこれに気づき、正しい対処をすることが重要になります。しかし人力で監視するのは無理があります。
そのため、システムとネットワークを監視するアプリケーションがあります。指定されたホストやサービスを監視し、障害や復旧時に通知します。システムへの負荷は微々たるものですし多少制約があっても使っておいて損はないと考えます。
今回は、システムを監視する、Nagiosサーバをインストールして立ち上げるまでをやってみたいと思います。
オンラインで利用できる監視サービスもありますが、自前でNagiosサーバを立ち上げると、たくさんのホストの設定の管理もやりやすくなりますし、細かく監視設定ができます。
以下のように、サーバの細かい項目を定期的にチェックしてくれるので、障害時にどの部分が具合が悪いのかの手掛かりにもなります。
(loadaverage、ログインしているユーザ数、httpが応答するか、ping、ディスク容量、SSHサーバが立ち上がっているか、Swap領域が圧迫されていないか、プロセス数が異常に多くないか、……さらにシステムに合わせた監視も追加できます。)
インストール
CentOSにインストールすることにします。
yumパッケージなど見当たりませんのでソースからインストールします。
http://nagios.sourceforge.net/docs/3_0/quickstart-fedora.html
が簡潔に書いてくれているのでこの通り進めます
準備
# yum install httpd php # yum install gcc glibc glibc-common # yum install gd gd-devel |
アカウント
# /usr/sbin/useradd -m nagios # passwd nagios # /usr/sbin/groupadd nagcmd # /usr/sbin/usermod -a -G nagcmd nagios # /usr/sbin/usermod -a -G nagcmd apache |
インストール
- ソースをダウンロードする適当なディレクトリに移動
- http://www.nagios.org/download/からNagios最新版のtarファイルをダウンロード
例)
# wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.4.3.tar.gz |
- 解凍&コンパイル&インストール
# tar xzf nagios-3.4.3.tar.gz # cd nagios # ./configure --with-command-group=nagcmd |
>*** Configuration summary for nagios 3.4.3 11-30-2012 ***:
>インストール設定が表示されるので確認する。
# make all # make install # make install-init # make install-config # make install-commandmode |
- デフォルトの受取先を設定
# vi /usr/local/nagios/etc/objects/contacts.cfg |
> email nagios@localhost ; <この行のnagios@localhostを自分のメールアドレスに置き換える。
# make install-webconf |
- ベーシック認証を作る
# htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin |
- httpd/conf.d/nagios.confなどがセットされているので読み込ませる
# service httpd restart |
同様にNagios pluginsの最新版のtarファイルをダウンロード
# wget http://prdownloads.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.16.tar.gz |
- 解凍&コンパイル&インストール
# tar xzf nagios-plugins-1.4.16.tar.gz # cd nagios-plugins-1.4.16<br /># ./configure --with-nagios-user=nagios --with-nagios-group=nagios # make # make install |
Nagiosを起動
# chkconfig --add nagios # chkconfig nagios on |
- 設定ファイルをチェック
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg |
上記の文法チェックでエラーなどがなければ起動
# service nagios start |
- Webブラウザでアクセスして確認する
Nagiosサーバの管理画面が立ち上がっているので、Webブラウザから確認します。
http://「ドメイン名 or IPアドレス」/nagios/
Basic認証は先ほど設定したnagiosadmin/パスワードになります。
- つながらなければ、FireWallやSELinuxを見直す。
ブラウザで見てみます。
左メニューの「Services」をクリックするとこのような画面になっています。
自分自身を監視し始めた状態です。デフォルトで5分間隔で各項目をチェックしますので、しばらくすると以下のような状態になります。もしならなければ、OKのところが、黄色や赤になり先ほど設定したメールアドレスに通知のメールが来ているはずです。
これらの項目の設定情報は
/usr/local/nagios/etc/nagios.cfg |
と
/usr/local/nagios/etc/objects/localhost.cfg |
に書いてあります。
もし、変更したい場合があったら上記ファイルを編集後、
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg |
をしてエラーが出ないのを確認してから
# service nagios restart |
します。
次回は、このサーバに、他のサーバも監視対象に追加していきたいと思います。
PICK UP
-
タグ: ご祈祷, コラム, リモートワーク, 仕事始め, 伏見稲荷, 八坂神社, 初詣, 北海道神宮, 商売繁盛, 年始行事, 神田明神
仕事始めの日に神田明神へ初詣|公式note -
タグ: Firebase, GA4, Googleアナリティクス, アプリ計測, アプリ開発, コラム, データ分析, データ活用, プッシュ通知, ユーザー行動, リモートコンフィグ
Google アナリティクス for Firebaseで計測するために必要なステップ -
タグ: エンジニア採用, キャリア採用, コミュニケーション, コラム, ブログ, リモートワーク, ワーケーション, 文化, 環境
2025年1月の募集職種一覧! エンジニア職からビジネス職まで採用強化中!|株式会社イー・エージェンシー公式note -
タグ: エンジニア募集, オウンドメディア, コラム, ビジネス職, リモートワーク, レコメンドエンジン, 中途採用, 働きやすい環境, 採用強化, 社内文化, 翻訳ツール
【オープン社内報 2025年1月号】イー・エージェンシー プレミアムニュース -
タグ: みどり市, エッセンシャルオイル, コラム, ワーケーション, 地域おこし協力隊, 地域活性化, 地方創生, 林業体験, 移住促進, 群馬県, 酒蔵見学
みどり市ワーケーションツアーに参加して、IT業界の私が林業の現場に触れられた!|公式note -
タグ: it業界, インバウンド支援, イーエージェンシー, コミュニケーション, コラム, データ活用, ビジネス目標, 人と人との繋がり, 新年の挨拶, 有楽町オフィス, 経営メッセージ
【新年のご挨拶】2025年もよろしくお願いします!|公式note