SlideShare ist ein Scribd-Unternehmen logo
1 von 11
Downloaden Sie, um offline zu lesen
LLD(ローレベルディスカバリ)を弄り倒せ
zabbix_senderを併用してらくらく可視化
山根 健志/ Takeshi YAMANE/ふりっぱぁ
@fripper1214
fripper1214@gmail.com
第6回 ZABBIX-JP勉強会
2014/04/12 Tokyo
zabbix_sender の動作って‥
監視対象側からサーバに向けて、任意の値を投げ込める!
zabbix_agentd 入れなくてもいけるし便利~♪
しかも‥
• 任意のホストのアイテムに対して情報を叩き込める!
対象のホスト自身からでなくてもOK!
• アイテムの型 (整数・小数・文字列) どれでもOK!
sender に渡せば、結構なんでも登録できちゃいます
• zabbix_proxy 経由でも使える!
sender の送信先を zabbix_server 宛じゃなくて zabbix_proxy 宛にすればOK!
• 複数の値をまとめて登録できる!
引数にファイルを渡す or 標準入力からリダイレクトで読ませる
• 時刻情報まで捏造できる!
日次集計とか、その日の0時指定にできてグラフもキレイ!
LLD によるアイテム登録
普通なら‥
ZabbixエージェントとかZabbixエージェント(アクティブ)で、ディスカバリルー
ルの項目を登録。
そんでもって、アイテムやトリガーのプロトタイプとかを指定して、任意の項目
を作る‥といった感じですよね?
あれ?Zabbixエージェント(アクティブ)って‥
agentd が定期的にチェックして、server へ値を
push で送信するんじゃなかったっけ?
値を送信って‥ sender でも同じなんじゃないの?
LLD でやりとりされる値
標準の‘vfs.fs.discovery’で見てみると、単なるJSON形式
[data] という項目の値として、ディスカバリ結果が配列っぽく書
かれているだけ‥
スクリプト等で適当な項目リストを作って、
送ってあげればイケそうな感じ‥‥?
LLDに値を叩き込む!-今回の目的-
目的:日次処理での http アクセスログ内容の集計
特定 cgi でファイルのアップ・ダウン要求してるログ行を
アクセス元ユーザ、get/put の種別で集計した結果が欲しい
最終的に、アイテムを以下のカタチで作りたい‥
• 「アクセス元ユーザ」別
• 「getの回数」「putの回数」 - 整数値
でも‥いつユーザ増やすかわかんないし‥
→やっぱりLLDでアイテム作るべきだよね!
集計してから、どうやってZabbixに登録する?
• どうやって回数を集計しよう‥?
ログファイルをgrepして、awkに掛ければ、
ユーザ別・get/put目的別の集計は簡単だよね‥ →シェル芸!
• 日次処理だしなぁ‥
Zabbixのアイテムだと間隔は指定できるけど、
実行タイミングは制御できない‥ → cron
• ログが大きいと時間掛かるなぁ‥
agentdだとタイムアウトが怖い‥ → zabbix_sender
• ディスカバリにするとなると‥
ディスカバリルールのためにログを舐めて項目作らせて、
結果値を登録するために、また舐めるの? →2回も舐めたくない!
LLDルールの結果を sender で送って、sleep で少し待ってから、
同じ cron 処理の中で結果値も sender で送れば1度で済むんじゃ?
cron での処理内容 -ディスカバリ部分-
• 前日のログを舐めて、ユーザ別・項目別に集計
AAA 20 0
BBB 120 337
CCC 0 78
• ruby で、ユーザIDのリストに相当する JSON を生成
senderでうまく扱うために、必ず1行の JSON データにする!改行含まないこと!
{“data”:[{“{#USRID}”:”AAA”}, {“{#USRID}”:”BBB”}, {“{#USRID}”:”CCC”}]}
• sender で、ディスカバリルールの項目値として投げ込む
投げ込む際には、標準入力に値を渡す。
ついでに –t オプションで昨日の0時のデータにしておく‥(捏造じゃないよ!)
ファイル or 標準入力だと、1行あたり1データと認識されるから、複雑なJSON値でもOK!
HOSTNAME user.log.count.discovery 1397051539 {“data”:[{“{#USRID‥ }
• ディスカバリルールの設定は [Zabbixトラッパー]に!
普通にアイテム値を投げ込む時と同じく、trapperタイプにしておけばOK!
cron での処理内容 -項目値の登録部分-
• sleepで少し待つ!(2分間)
待たなくても大丈夫かもしれない?
でも zabbix_server が重くても大丈夫かどうか心配 →とりあえず待っちゃえ
• 集計結果のリストから、sender へ渡す文字列を作る
やっぱり標準入力を使う。複数項目の値を複数行でまとめて送信!
もちろん、値のタイムスタンプは昨日の0時!
HOSTNAME user.log.count.get[AAA] 1397051539 20
HOSTNAME user.log.count.put[AAA] 1397051539 0
HOSTNAME user.log.count.get[BBB] 1397051539 120 ・・・(略)・・・
• ど~んと値を送信‥ 100ユーザなら200項目分‥
sender を1回実行すれば複数項目一括登録OKなんてチョー便利!
• アイテムのプロトタイプも、やっぱり[Zabbixトラッパー]
sender を使う場合のお約束ですね!
サーバでの設定は‥?
ディスカバリルールと、アイテムのプロトタイプはこんな感じ‥
• ディスカバリルール
• アイテムのプロトタイプ
登録された値は‥?
• 最新の値を見てみると‥?
タイムスタンプ付きで送っているから、
その日の0時のデータになってる!
• グラフも作ってみた~
毎日の変化・傾向が、放っといても可視化できて便利!
結論!
• LLD(ローレベルディスカバリ)は神!
• zabbix_sender は神!
Zabbix って、監視・警告だけじゃないよ!
こういった「可視化」だってできるんだから!
ちょ‥ワシが神様‥ >

Weitere ähnliche Inhalte

Was ist angesagt?

「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
Atsushi Nakamura
 

Was ist angesagt? (20)

Mavenの真実とウソ
Mavenの真実とウソMavenの真実とウソ
Mavenの真実とウソ
 
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
 
Redmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみたRedmine にいろいろ埋め込んでみた
Redmine にいろいろ埋め込んでみた
 
SSH力をつけよう
SSH力をつけようSSH力をつけよう
SSH力をつけよう
 
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
Apache Hadoop & Hive 入門 (マーケティングデータ分析基盤技術勉強会)
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
GroongaでRedmineを高速全文検索
GroongaでRedmineを高速全文検索GroongaでRedmineを高速全文検索
GroongaでRedmineを高速全文検索
 
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
OpenAPI 3.0でmicroserviceのAPI定義を試みてハマった話
 
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
[Aurora事例祭り]Amazon Aurora を使いこなすためのベストプラクティス
 
私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...
私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...
私はここでつまづいた! Oracle database 11g から 12cへのアップグレードと Oracle Database 12c の新機能@201...
 
backlogsでもCI/CDする夢を見る
backlogsでもCI/CDする夢を見るbacklogsでもCI/CDする夢を見る
backlogsでもCI/CDする夢を見る
 
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/FallZabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
Zabbix最新情報 ~Zabbix 6.0に向けて~ @OSC2021 Online/Fall
 
DockerとPodmanの比較
DockerとPodmanの比較DockerとPodmanの比較
DockerとPodmanの比較
 
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら「関心の分離」と「疎結合」   ソフトウェアアーキテクチャのひとかけら
「関心の分離」と「疎結合」 ソフトウェアアーキテクチャのひとかけら
 
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
 
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
Grafana LokiではじめるKubernetesロギングハンズオン(NTT Tech Conference #4 ハンズオン資料)
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
 
Where狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキーWhere狙いのキー、order by狙いのキー
Where狙いのキー、order by狙いのキー
 
nginx入門
nginx入門nginx入門
nginx入門
 
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
Dockerの期待と現実~Docker都市伝説はなぜ生まれるのか~
 

Kürzlich hochgeladen

2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
ssuserbefd24
 
研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計
研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計
研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計
atsushi061452
 

Kürzlich hochgeladen (11)

Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
Amazon Cognitoで実装するパスキー (Security-JAWS【第33回】 勉強会)
 
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
2024年5月25日Serverless Meetup大阪 アプリケーションをどこで動かすべきなのか.pptx
 
研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計
研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計
研究紹介スライド: オフライン強化学習に基づくロボティックスワームの制御器の設計
 
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
5/22 第23回 Customer系エンジニア座談会のスライド 公開用 西口瑛一
 
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
論文紹介:Deep Occlusion-Aware Instance Segmentation With Overlapping BiLayers
 
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
論文紹介:ViTPose: Simple Vision Transformer Baselines for Human Pose Estimation
 
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
ロボットマニピュレーションの作業・動作計画 / rosjp_planning_for_robotic_manipulation_20240521
 
Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )Intranet Development v1.0 (TSG LIVE! 12 LT )
Intranet Development v1.0 (TSG LIVE! 12 LT )
 
部内勉強会(IT用語ざっくり学習) 実施日:2024年5月17日(金) 対象者:営業部社員
部内勉強会(IT用語ざっくり学習) 実施日:2024年5月17日(金) 対象者:営業部社員部内勉強会(IT用語ざっくり学習) 実施日:2024年5月17日(金) 対象者:営業部社員
部内勉強会(IT用語ざっくり学習) 実施日:2024年5月17日(金) 対象者:営業部社員
 
20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf20240523_IoTLT_vol111_kitazaki_v1___.pdf
20240523_IoTLT_vol111_kitazaki_v1___.pdf
 
クラウド時代におけるSREとUPWARDの取組ーUPWARD株式会社 CTO門畑
クラウド時代におけるSREとUPWARDの取組ーUPWARD株式会社 CTO門畑クラウド時代におけるSREとUPWARDの取組ーUPWARD株式会社 CTO門畑
クラウド時代におけるSREとUPWARDの取組ーUPWARD株式会社 CTO門畑
 

LLD(ローレベルディスカバリ)を弄り倒せ、zabbix_senderを併用してらくらく可視化