ZABBIXのインストールとモニタリング

   做运维前前后后也有2年多了,时间不长不短。有些牛逼的可能已经学到很多,收入颇丰。但是自己的成长却很慢。年龄也越来越大。自己有时候想学点东西,但是上班的时候没有时间也没有氛围学习,下班后的时间很少,就不想学习。想学习的时候却感觉自己不懂的东西太多,什么都想学习,却往往都是半途而废,今天思考了一下,还是一件件的慢慢来吧。
         正好目前公司的测试服务器的zabbix服务器需要重新安装并监控。感觉这是 一个系统学习的好机会,以前对于监控,会的可能就是简单的安装、添加主机、添加监控项、添加默认的魔板,像邮件微信报警什么的都是前人写好的,自己只需要添加进去进行。没有自己添加过自定义的监控项啥的。今天这个文章就是督促自己讲zabbix认真的学习下,第一可以回顾下知识点。第二就是多学点zabbix的知识。
         系统环境:ubuntu-server-16.04.6 使用zabbix4.0版本
         官方安装文档链接:https://www.zabbix.com/documentation/4.0/zh/manual/×××tallation/×××tall_from_packages/debian_ubuntu
         wget https://repo.zabbix.com/zabbix/4.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_4.0-2+xenial_all.deb 下载安装包
         使用ubuntu的安装deb包的命令(ubuntu的命令和centos有不少区别。感觉大家使用centos系统的较多,如有不明白的命令请自行查询。)
         sudo dpkg -i zabbix-release_4.0-2+xenial_all.deb 
       更新软件库,sudo apt-get update ,并升级软件库。sudo  apt dist-upgrade 
      安装 Zabbix server 并使用 MySQL 数据库 
        sudo apt ×××tall zabbix-server-mysql
        安装 Zabbix 前端
         sudo apt ×××tall zabbix-frontend-php
         使用 MySQL 来导入 Zabbix server 的初始数据库 schema 和数据
         sudo  zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
         配置zabbix-server配置文件,# vi /etc/zabbix/zabbix_server.conf

DBHOST = localhostの
DBNAME = ZABBIX
DBUSER = ZABBIX
DBPASSWORD = $パスワード

Zabbixサーバ・プロセスを開始するには、次のコマンドを実行し、それが最初から起動します:

#sudoサービスZABBIXサーバの起動
#sudo更新-rc.dのはZABBIXサーバは有効

サービスのapache2の再起動
sudoのサービスapache2の再起動
Apacheの設定ファイルのZABBIXフロントのは/etc/apache2/conf-enabled/zabbix.confに位置しています。いくつかのPHPの設定パラメータが、。しかし、 "date.timezoneで"ノートをキャンセルする必要があり、正しいタイムゾーンに設定
はphp_value max_execution_timeに300
はphp_value memory_limitの128M
はphp_value post_max_sizeの16M
はphp_value upload_max_filesizeで2M
はphp_value max_input_time 300
はphp_value always_populate_raw_post_data -1
はphp_value date.timezoneでヨーロッパ/リガ

インストールし、エージェントの開始
APT sudoを×××トールZABBIXエージェント&& sudoのサービス・エージェントZABBIX-起動し
、次のステップは、HTTPSを着陸です:// IP / ZABBIX初期パスワードが管理者であり、初期設定ZABBIX

他の写真。この工程を省略することができます。

##########

ホストを追加する前に、ホストのグループを作成します。実際の環境では、サーバは、ホストグループ、作成したホストグループの内部に配置された別のグループにユーザーに応じて、さまざまな用途があります。そのようなので、上のデータベース、サーバーのバックアップサービス,,となど。

ホストを追加する前に、監視対象サーバZABBIXエージェントにインストールして起動するように
ZABBIXクライアントは、サーバベースのパッシブサブモードにデータを送信し、アクティブモードがあるZABBIXクライアントがサーバにデータを送信し、パッシブモードサーバがデータをフェッチするために受動的に待ちます。

アクティブモードプロセス:

しょっちゅうクライアントがサーバへの接続要求を開始します - >サーバがリクエストを受信し、アイテム情報問い合わせクライアントが取る必要があり、クライアントに送信される - >エンド - >クライアントがデータを収集するためにサーバに送信します。

パッシブモードプロセス:

クライアントは、サーバーがデータを取得し、サーバーに送信されたクライアントデータを収集し、その後、終了するのを待っている、デフォルトのポート10050を開きます。

クライアントのない何千も使い果たした場合、私は、アクティブモードがあまりにも激しいと思います。すぐにあなたのお母さんの次の度合いを尋ねました。
次のデフォルトのシナリオと長所と短所のアクティブおよびパッシブ黙認されています。

パッシブモードの欠点:
ホストサーバが特定の数を監視するために、データを収集するために、エンドサーバによって、Zabbixは主に次のように、深刻なパフォーマンスの問題を表示されます。

端部が到着したときにモニタは、Web操作非常に遅く、傾向502桁される1、
2層が破砕
機の一定量意志後、偶数アイテムの数を減らす、あまり3、オープンプロセス(Pollar)を問題を抱えています

したがって、次の二つの主要な最適化の方向を検討します:

図1に示すように、ノードが追加されるか、プロキシノードは、分散型監視モード行う
アクティブモードAgentdを調整するために、2

最初のプログラム以来の物理マシンを増やす必要があるので、2番目のプログラムの最初の試み。

デフォルトは通常、中小企業のサーバーの数百人を監視するためにパッシブモードを使用することができ、パッシブモードを使用する場合にはZabbixはホストを追加します。
:以下は、パッシブモードとアクティブモードプロファイルの例示的な薬剤である
パッシブモード:
/etc/zabbix/zabbix_agentd.confはgrep '^ [AZ]'
PidFileオプション=の/ var / RUN / ZABBIX /はzabbix_agentd.pid
/ログファイル=は/ var / log ZABBIXは/ zabbix_agentd.log
ログファイルサイズ= 0
StartAgentsの=を。3
サーバー* =
ServerActive = 127.0.0.1
ホスト名= zabbix_client
HostMetadataItem = system.unam

主动模式
はgrep '^ [AZ]' /etc/zabbix/zabbix_agentd.conf
PidFileオプション=の/ var /実行/ ZABBIX / zabbix_agentd.pid
ログファイル=は/ var / log / ZABBIX / zabbix_agentd.log
ログファイルサイズ= 0
StartAgents = 0
ServerActive =
ホスト名=主机名
を含める=の/ etc / ZABBIX / zabbix_agentd.d /
.confを

**同じホスト名が時にホスト名内のニーズと設定ファイルのホストを追加することに注意してください

私は書いていない具体的な手順は、私は、次の資料に基づいて構成された、より詳細に説明します。アクティブモードにも成功し、https://blog.51cto.com/liqingbiao/1983851

##############

テンプレートはすべて監視したいコンテンツやグラフィック表示を統合し、ZABBIXのインストールの配備が完了した後ので、これらの、たくさんのテンプレート(テンプレートネットワークデバイス、オペレーティングシステムのテンプレート、一般的なアプリケーション・ソフトウェア・テンプレート)が付属しているので、テンプレートは、コアZABBIXです通常の状況下で、我々は個別にテンプレートを作成する必要はありませんので、私たちが必要とするアプリケーションの約80%を満たすことができたテンプレート。
一般的には、ホストを作成し、Linuxサーバは、そのようなので、上のnginxの、データベースやなどの他のサービスは、存在する場合、tempalte OSのLinuxのテンプレートを追加してください場合は、テンプレートを追加します。さらに、対応するモードに加えました。ホストは、複数のテンプレートを持つことができます。

テンプレート、アプリケーションセット、モニタ項目、トリガー、グラフ、グラフィックス重合、自動検出ルール、ウェブシーンなどのいくつかのカテゴリがあります。
もっと重要なのは、一般的な項目、トリガー、グラフを監視することです。
監視アプリケーションセットのアイテムと同等の、館が10のアプリケーションのセットを参照してくださいtempalte OSにlinuxを見つけることができるテンプレートテンプレートをクリックして、その上のCPU、ファイルシステム、メモリとがあります。あなたは監視項目の作成のアプリケーション焦点にそれを話すことができます。あなたはまた、アプリケーションの独自のカスタムセットを作成することができます。
長期モニタリングは、より重要である監視のための基礎です。またはtempalte OSのLinuxの例では、あなたが各監視項目名に左から監視されたアイテム、トリガー、キーの値を参照することができ、監視項目をクリックして、テンプレートtempalteのOSにlinuxをクリックして選択します
異なるキーでテンプレートを使用して作成します一例として、TCPポート監視にエントリを監視し、TCPポートの状態がリスニングにあるチェック、鍵は文法はキーの詳細を説明しても過言ではないnet.tcp.listen [ポート]、である、見る公式ドキュメントは説明しています。https://www.zabbix.com/documentation/4.2/manual/config/triggers/trigger
ポートは3456であるため、本番環境でのプロジェクトがある場合は、アイテムの作成時に、あなたが監視できる
net.tcpを選択するには、キーを。 [3456]を聞くだけでなく、主要な一般的なカタログを監視し、
監視項目は、既存のテンプレートに追加することができ、また、あなたはまた、監視下にホストエントリを作成することができ、新しく作成されたテンプレートに監視項目を追加することができ、お勧めは、このテンプレートは、次のホストへのリンクを作成する際に後ろにホストを追加し、新しいテンプレートを作成し、このテンプレートに必要なアプリケーションのセットを追加し、監視項目です。その理由は、複数のホストがある場合、各モニターは、同じコンテンツを持ち、ホストで監視項目を作成することは推奨されません、あなたはすべてが各ホストで同じアイテムを作成監視する必要があります。
あなたがアイテムを監視作成したら、次のステップは、その監視のトリガーに項目を追加することで、これはオプションです。
Webインターフェイスでは、あなたが、5つの監視項目リスト、名前式の値の、すなわち重症度、状態がある見ることができるトリガーを作成するには、右上隅をクリックして、

    这里面重点的是创建监控项的表达式,根据zabbix自带的监控项修改下参数就行,可以满足中小企业80% 的需求。
    这里我找到一个很简单的例子,键值是vfs.file.exists[$file],监控系统会不会出现这个文件,返回值为1就是找到,返回值为0就是没找到
    找到一个主机,点击这个主机的监控项,点击创建监控项   ,![](https://s1.51cto.com/images/blog/201906/28/876076d170 c871914e89f6691ddcfc9e.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

    要想学会写触发器表达式,首先需知道触发器表达式的几种常见函数。
    常见的有diff,last,avg,change,nodata等等。具体的用法我这不做具体介绍,因为我自己也不太清楚,等到用的时候再查。

我々はすでに、フリップフロップを行ってきた、次のステップは、メールでのマイクロ文字に発行または送信アラームをトリガすることですが、私はメールで送信するためにここにいます。sendEmailツールを送信するために使用されます。

sendEmail機能がなければ、あなたはapt-getをのsendEmailオンラインサーバーにインストールsudoをインストールすることができます
自分自身の情報へのアクセスを特定の使用の友人をすることはできませんコマンドのsendEmailを。

テストは、メッセージを発行した後にインストール。デフォルトのメールボックスのPOP3では、SMTPおよびその他のサービスが開かれている
$のsendEmail -f -t送信者、受信者のSMTPサーバを-s、-u「メッセージの件名」-oメッセージ・コンテンツ・タイプ= = htmlの-oメッセージの文字セットを送信トレイパスワード-m「テキストファイル」-xp UTF8 -xu送信者のメールボックス

ZABBIXサーバの設定ファイルを変更し、
スクリプトAlertScriptPath =は/ usr / libに/ ZABBIX / alertscripts Eメールまたはこのマイクロチャンネルに保存されている
とZABBIXサーバサービスを再起動

第二部シェルは、スクリプトエディタを送信します

#!/ binに/ bashをする
。RECIPIENT = $ 1つの
2 $ =件名
。メッセージ$ = 3
のsendEmail -q -f "??? = UTF-8-B。echo **公司监控|base64= <送信トレイ>?" -t "$受信者" -u "$件名" - M "メッセージ" -oメッセージ・コンテンツ -type = htmlの-oメッセージのcharset = UTF8 -xu 送信者のメール送信トレイパスワード-xp

スクリプトを追加した後、アラーム管理次のメディアタイプ、メディアタイプを作成し、以下を参照してください
ZABBIXのインストールとモニタリング
スクリプトは/ usr / libに/ ZABBIX / alertscriptslパスの下に作成された上記のスクリプトの名前です。

ZabbixのWebメール受信者を追加するためのインタフェース
のメインの管理Webインターフェイスで-ユーザー-ユーザーを追加します。

ZABBIXのインストールとモニタリング

エイリアスは、ユーザーが、家族の名前をカスタマイズするグループ管理者を選択することができます。
その後、アラーム媒体をクリックして受信者または受信者グループを追加
ZABBIXのインストールとモニタリング

追加および更新を有効にします。

操作の設定、新しい操作。
ベルスクリプトパラメータは、アクションに渡すことができ、具体的には、以下を参照してください。ZABBIXのインストールとモニタリングZABBIXのインストールとモニタリングZABBIXのインストールとモニタリングZABBIXのインストールとモニタリング

私にはわからないという変数は上の図は、同社のテスト環境への参照です。独自のクエリデータについて知りたい場合。それとも私のその後のブログで、私はゆっくりと学びます。今日の仕事は、ゆっくり、自分で達成感が少ないを与え、消化を最適化し、その結果です。

以前の私たちは、キーvfs.file.exists [$ファイル]をカスタマイズした覚えている、それが文書を生成するために、ホストの監督の下でディレクトリが存在するかどうかで、私たちは、このファイルへのパスを作成します。Zabbixのテスト
モニターがホストにファイルを生成するかどうか。

ZABBIXのインストールとモニタリング

現在、ZABBIXは、パラメータが指定されたユーザーにメッセージを送信することができてくるに従って、トリガーキーの変更をトリガーします。しかし、文書の内容は非常に魅力的でユーザーフレンドリーではありません。これは、最適化する必要があります。
さて、今日は少し実験を行うための休憩を取る忙しいが送信済みアイテムとトリガーやアラームメッセージを監視しました。
次は一緒に勉強し、自動検出、自動登録、および自動監視します。

おすすめ

転載: blog.51cto.com/12809205/2415144