Ubuntu12.04にShinkenをインストールして構成してVPSインスタンスを監視する方法
ステータス:非推奨
この記事では、サポートされなくなったバージョンのUbuntuについて説明します。 現在Ubuntu12.04を実行しているサーバーを運用している場合は、サポートされているバージョンのUbuntuにアップグレードまたは移行することを強くお勧めします。
理由: Ubuntu 12.04は2017年4月28日に保守終了(EOL)に達し、セキュリティパッチまたはアップデートを受信しなくなりました。 このガイドはもう維持されていません。
代わりに参照してください:このガイドは参照として役立つ場合がありますが、他のUbuntuリリースでは機能しない場合があります。 可能な場合は、使用しているUbuntuのバージョン用に作成されたガイドを使用することを強くお勧めします。 ページ上部の検索機能を使用して、より新しいバージョンを見つけることができます。
序章
Shinkenは、柔軟性、スケーラビリティ、および使いやすさを強化するためにPythonで書き直された、NagiosCoreに基づくオープンソースの監視フレームワークです。 ShinkenはNagiosと完全に互換性があり、書き直したり調整したりせずに外出先で使用できるプラグインと構成をサポートしています。
真剣には配布の制限はありません。 DMZを介して、さらには複数のデータセンターにまたがって、LANLANに拡張できます。
Shinkenは、Nagiosの従来の監視機能を超えて、資産の分散型で可用性の高い監視、VMwareトポロジとさまざまなハイパーバイザー(Xen、KVMなど)のスマートで自動な管理を可能にし、Amazon EC2でホストされるアプリケーション(mysqlなど)を監視できます。 &Apache)自動的に。
ShinkenはNagiosの5倍の速度であると考えられており、簡単にインストールできる多数の監視パッケージが付属しているため、サーバー、サービス、およびアプリケーションの監視をより迅速に開始できます。
このガイドでは、2つの液滴を構成します。 1つはサーバーとして構成され、もう1つはクライアントとして構成されます。 どちらもUbuntu12.04LTSを実行します。
真剣サーバーのインストール
自動インストールスクリプトを使用してサーバーから始めます。
curl -L http://install.shinken-monitoring.org | /bin/bash
インストールスクリプトは、ユーザーとグループを作成します。 すべての依存関係をインストールしてから、Shinkenのインストールを処理します。
インストールが完了すると、真剣WebUIにアクセスできます。 http://X.X.X.X:7767
とクレデンシャル admin/admin
. 構成フォルダは次の場所にあります。 /usr/local/shinken/etc
.
真剣サーバーの事前設定
真剣の構成プロセスに飛び込む前に、そのWebUIを保護する必要があります。
モジュールのWebUIを編集してみましょう。
nano /usr/local/shinken/etc/shinken-specific.cfg
まず、 auth_secret
、および交換 CHANGE_ME
強力なパスワードによる:
define module {
modules Apache_passwd, ActiveDir_UI, Cfg_password, PNP_UI, Mongodb, Glances_UI
manage_acl 1
play_sound 0
host 0.0.0.0
module_type webui
allow_html_output 0
max_output_length 100
module_name WebUI
auth_secret CHANGE_ME
port 7767
}
ファイルを保存して閉じます。
次に、管理者ユーザーも強力なパスワードを取得する必要があります。 そのために、彼のデフォルトのパスワードを秘密の強力なパスワードに置き換えます。 contacts.cfg
ファイル :
nano /usr/local/shinken/etc/contacts.cfg
define contact{
use generic-contact
contact_name admin
email shinken@localhost
pager 0600000000 ; contact phone number
password admin
is_admin 1
}
インストーラーが必要なすべての依存関係とモジュールのインストールを処理する場合でも、webuiでユーザー設定を処理および保存するためにmongodbサポートをインストールする必要があります。そうしないと、WebUIに次のような醜い警告メッセージが表示されます。
エラー:Mongodbのようにユーザー設定を保存するためのWebUIモジュールを定義していません。 このページはご利用いただけなくなります!
Mongodbサポートをインストールするには:
cd /usr/local/shinken
./install -a mongodb
真剣サーバーの設定
このシナリオでは、Ubuntu 12.04監視対象ホスト(Shinkenスレーブ)を宣言し、SNMPをインストールして構成してから、カスタムコミュニティ文字列を使用して監視することから始めます。
SNMPテンプレートは、次のチェックを処理します。
-
5分ごとのホストチェック:サーバーが稼働していることをpingで確認します
-
ディスクスペースを確認してください
-
負荷平均を確認する
-
CPU使用率を確認してください
-
物理メモリとスワップの使用状況を確認する
-
ネットワークインターフェイスのアクティビティを確認する
完了したら、FTPおよびSSHパッケージを使用して、パッケージの使用方法の例として、スレーブのFTPおよびSSHの状態を確認します。
パッケージは、汎用または特定のサービス、アプリサーバー、オペレーティングシステム、および監視対象デバイス用の事前定義された監視テンプレートです。 これらのパッケージは次のディレクトリにあります /usr/local/shinken/etc/packs
タイプ別に分類されており、それらを使用するには、ホスト定義ファイルで名前を指定するだけです。
Shinkenは完全に互換性があり、Nagiosをサポートしているため、NagiosプラグインをShinkenから追加して使用できます。
真剣で奴隷を定義する
監視サーバーの1つとして、Linuxデバイス(Ubuntuスレーブドロップレット)に対応するホストファイルを作成しましょう。 /usr/local/shinken/etc/hosts directory
:
nano /usr/local/shinken/etc/hosts/shinken_slave.cfg
次のコンテンツをコピーして貼り付け、「host_name」フィールドと「address」フィールドを適切な値に変更します。
define host{
use linux
host_name Shinken_slave
address X.X.X.X
_SNMPCOMMUNITY DOmonitoring
}
-
「uselinux」は「template」行です。 これは、このホストがデフォルトのLinuxテンプレートのプロパティを使用することを意味します。
-
「host_name」は、ホストのオブジェクト名です。 クライアントのホスト名に対応し、一意である必要があります。
-
「アドレス」は、スレーブのIPアドレスまたはそのFQDNです。
-
「_SNMPCOMMUNITY」は、カスタムSNMPコミュニティ文字列またはパスワードです。
前に述べたように、FTPおよびSSHサービスを監視するために2つのパッケージを使用します。 これらのパッケージは、特別なアクセス要件なしで、公開されているサービス、アプリケーション、およびプロトコルの状態をチェックします。 そのために、コンマで区切られた「use」行で、それらをホスト定義ファイルに追加します。 できるだけ多く使用できますが、重要なものを監視するだけでよいことを覚えておく必要があります。
以前 /usr/local/shinken/etc/hosts/shinken_slave.cfg
次のようになります。
define host{
use linux,ftp,ssh
host_name Shinken_slave
address X.X.X.X
_SNMPCOMMUNITY DOmonitoring
}
前に述べたように、クライアントにはカスタムSNMPコミュニティ文字列(パスワード)を使用します。 このガイドでは、「DOmonitoring」を選択しました。これはクライアントでも同じです。
ホストを宣言したので、Shinkenを再起動して変更を処理しましょう。
service shinken restart
クライアントの構成:
まず、クライアントにSNMPをインストールします。
apt-get install snmpd
次に、コミュニティ文字列とリスニングインターフェイスを構成します。
編集します /etc/snmp/snmpd.conf
次の行にコメントします。
agentAddress udp:127.0.0.1:161
次に、次の行のコメントを解除します。
agentAddress udp:161,udp6:[::1]:161
すでに述べたように、デフォルト値の「public」をカスタマイズした値に変更することで、クライアントのSNMPコミュニティ(パスワード)を変更します。 このチュートリアルでは、「DOmonitoring」を選択します。
交換 :
rocommunity public
と:
rocommunity DOmonitoring
snmpdデーモンを再起動します。
service snmpd restart
WebUIへのアクセス
今のところ、監視サーバーとクライアントが構成されています。 サーバーのIPアドレスを使用してShinkenWebUIにアクセスする必要があります http://X.X.X.X:7767
.
https://assets.digitalocean.com/articles/Shrinken_Ubuntu/1.png ”>
認証されると、「ウィジェットはまだありませんか?」という空白のページが表示されます。
後でカスタムウィジェットを使用して構成し、必要な情報を取得しますが、最初に、クライアントが構成され、サーバーから到達可能かどうかを確認する必要があります。
[すべて]タブをクリックすると、サーバー(localhost)を含むすべての監視対象マシンのリストが表示されます。
同じリストで、Shinken_slaveは次のようになります。
https://assets.digitalocean.com/articles/Shrinken_Ubuntu/2.png ”>
ダッシュボードに戻り、3つのウィジェットを追加してダッシュボードを作成しましょう。 監視対象のドロップレットは1つしかないため、グラフ、問題、およびリレーションウィジェットを追加します。
クリック add a widget
次に、パネルから必要なものを選択します。 デフォルトでは、ウィジェットはローカルホスト(監視サーバー)の状態と情報を取得します。 次のように「要素名」をクリックして指定することにより、必要なホストを反映するように編集できます。
https://assets.digitalocean.com/articles/Shrinken_Ubuntu/3.png ”>
https://assets.digitalocean.com/articles/Shrinken_Ubuntu/4.png ”>
私たちの監視サーバーは私たちのVPSを監視し、すべての変更を追跡します。 サーバーの実行時間が長いほど、グラフと統計はより興味深いものになります。