Copyright 2017 Hiroyuki Onaka
Mackerelではじめる
お手軽サーバー監視
2017/12/23 合同勉強会 in 大都会岡山 -2017 Winter-
大中浩行(@setoazusa)
この作品は クリエイティブ・コモンズ 表示 4.0 国際 ライセンスの下に提供されています。
Copyright 2017 Hiroyuki Onaka
みなさまへのお願い
• このスライドはslideshareで公開します
• 感想はハッシュタグ #gbdaitokai まで
Copyright 2017 Hiroyuki Onaka
アジェンダ(1)
Mackerel(マカレル)は(株)はてなが提供する、
直感的な設定とユーザーインターフェースを特
徴とするサーバー監視サービスです。
その特徴と、現場で活用する上でのノウハウに
ついて取り上げます。
Copyright 2017 Hiroyuki Onaka
アジェンダ(2)
• 監視あるある
• Mackerelについて
• MackerelによるWebシステム監視
• Mackerelによる監視ノウハウ
• まとめ
Copyright 2017 Hiroyuki Onaka
わたし(@setoazusa)
• 横浜から来ました神奈川から来たとは言わない
• アプリケーションエンジニア(主にJava)とイ
ンフラエンジニアの二刀流
• CIとかBlue-Green Deploymentとかやってたら
いつのまにかこういうことになった
Copyright 2017 Hiroyuki Onaka
監視あるある
Copyright 2017 Hiroyuki Onaka
モニタリングはなぜ必要なのか
• 「完璧なサイジング」というものの幻想
• Yahoo!砲
• WBS砲
• ユーザーは増える、データは貯まる、アプリ
ケーションの規模は膨らむ
Copyright 2017 Hiroyuki Onaka
今はクラウドというものがありますが
「開発チームに法人カード預けてください」
というのもまた非現実的
Copyright 2017 Hiroyuki Onaka
「計測なくして科学なし」
チューニングとはエンジニアリングです。「勘
と経験」で行うものではない。
足りなければ増やせばいいというものでもない
Copyright 2017 Hiroyuki Onaka
誰のためのモニタリング
• 開発
• インフラ構築
• インフラ運用
Copyright 2017 Hiroyuki Onaka
運用のミッション
「システムを安定して運用させること」
Copyright 2017 Hiroyuki Onaka
運用にとっては理想的なシステム
「カットオーバーしたけどユーザーがいないシ
ステム」
Copyright 2017 Hiroyuki Onaka
「ユーザーがいないシステムは障害を起こさない」
タスクが溢れているインフラ運用者というのは、
「システムをいかに使用させないか」という思
考に陥ることがある。
Copyright 2017 Hiroyuki Onaka
「システムは使われてナンボ」
アラームが鳴るというのはシステムが使われて
世の中の役に立っていることの証し
Copyright 2017 Hiroyuki Onaka
「10+ Deploys Per Day」から
「Opsの仕事は、ビジネスを実現することだ」
(Ops' Jobs is to enable the business)
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
Copyright 2017 Hiroyuki Onaka
運用のジレンマ
我々(インフラ)はシステムを作る側でなく預か
る側。
運用(インフラ)が仕事がないのはいいこと
Copyright 2017 Hiroyuki Onaka
• 「システムの使用を促進する」
• 「自分の仕事を減らす」
→この二つを両立することは難しい
Copyright 2017 Hiroyuki Onaka
監視しだしたらキリがない。発生確率が一定な
ら、監視項目が増えるということはアラームが
発生する回数が増えるということ。
そのアラームを受けるのは夜勤をしている運用
メンバーそして始まるDevとOpsの対立
Copyright 2017 Hiroyuki Onaka
監視は目的でなく手段
我々がやりたいのはサービスの監視であって、
OSの監視ではない
Copyright 2017 Hiroyuki Onaka
以上のことを踏まえた、監視に求められる要件
• 最小限度のカスタマイズで使うことができる
• 機能と学習コストのバランス
• 「ほどよい」既定値であること
Copyright 2017 Hiroyuki Onaka
Mackerelにつ
いて
Copyright 2017 Hiroyuki Onaka
https://mackerel.io/ja/
Copyright 2017 Hiroyuki Onaka
Mackerel(マカレル)は(株)はてなが提供する、
直感的な設定とユーザーインターフェースを特
徴とするサーバー監視サービスです。
Mackerel=英語で「鯖」
Copyright 2017 Hiroyuki Onaka
Mackerelのセットアップ(1)
Copyright 2017 Hiroyuki Onaka
Mackerelのセットアップ(2)
Copyright 2017 Hiroyuki Onaka
Mackerelのセットアップ(3)
Copyright 2017 Hiroyuki Onaka
Mackerelのセットアップ(CentOS/RHEL7の場合)
curl -fsSL
https://mackerel.io/file/script/setup-all-
yum-v2.sh | MACKEREL_APIKEY=‘APIキー'
sh
Copyright 2017 Hiroyuki Onaka
Copyright 2017 Hiroyuki Onaka
Mackerelの特徴
• ホストにエージェントをインストールするス
タイル
• Push型のアーキテクチャー
Copyright 2017 Hiroyuki Onaka
Mackerelによ
るWebシステ
ム監視
Copyright 2017 Hiroyuki Onaka
Copyright 2017 Hiroyuki Onaka
監視項目のカスタマイズは、/etc/mackerel-
agent/mackerel-agent.conf で行います。
Copyright 2017 Hiroyuki Onaka
公式プラグイン集の導入
sudo yum -y install mackerel-agent-plugins
Copyright 2017 Hiroyuki Onaka
jvmの監視
[plugin.metrics.jvm]
command = "mackerel-plugin-jvm -
javaname=Bootstrap"
Copyright 2017 Hiroyuki Onaka
(おまけ)javanameとは
[vagrant@jira ~]$ sudo jps
2215 Jstat
2203 Jps
4604 Bootstrap
Copyright 2017 Hiroyuki Onaka
Copyright 2017 Hiroyuki Onaka
PostgreSQLの監視
[plugin.metrics.postgres]
command = "mackerel-plugin-postgres -
user=jira -password=xxxx -database=jira"
Copyright 2017 Hiroyuki Onaka
Copyright 2017 Hiroyuki Onaka
プラグイン
Copyright 2017 Hiroyuki Onaka
Mackerelの一つの特徴
プラグインを開発することによる、カスタムメ
トリクスやチェック監視の項目追加が容易なこ
と
Copyright 2017 Hiroyuki Onaka
MackerelのAgentとPluginの間は、実行コマン
ドの返り値および標準出力によって結果の受け
渡しを行う仕様になっています。
このため、特定のプログラミング言語によらず
プラグインの実装を行うことができます。
Copyright 2017 Hiroyuki Onaka
特定のプログラミング言語によらないと何が嬉し
いか
インフラとか運用の現場は使用できる技術セッ
トに制約がある
• 「シェルスクリプトならできる」
• 「RubyならServerspec使っているからわか
る」
Copyright 2017 Hiroyuki Onaka
例:
CLOSE=$(ss -nat |grep 192.168.3.11:8080 |grep CLOSE-WAIT|wc -l)
EST=$(ss -nat |grep 192.168.3.11:8080 |grep ESTAB |wc -l)
TIME=$(ss -nat |grep 192.168.3.11:8080 |grep TIME-WAIT |wc -l)
EPOCH=$(date +'%s')
echo -e "jira.port.close¥t${CLOSE}¥t${EPOCH}"
echo -e "jira.port.establish¥t${EST}¥t${EPOCH}"
echo -e "jira.port.time¥t${TIME}¥t${EPOCH}
Copyright 2017 Hiroyuki Onaka
mackerel-agent.conf
[plugin.metrics.jiraport]
command = "/usr/local/bin/jiraport"
Copyright 2017 Hiroyuki Onaka
Copyright 2017 Hiroyuki Onaka
注意点
ローカルでプラグインを実行している時と、
Mackerel Agentが実行している場合で環境変数
に差分が出るため、プラグインの実行に失敗す
る場合があります。
(cronでスクリプトを実行した時に良くあるア
レ)
Copyright 2017 Hiroyuki Onaka
...と思っていたら
https://mackerel.io/ja/blog/entry/weekly/20171215
Copyright 2017 Hiroyuki Onaka
Mackerelは定期リリースで現場で実用的な機能
が持ち込まれることが結構あるので、毎週のリ
リース内容をチェックしておくと吉です。
https://mackerel.io/ja/blog/
Copyright 2017 Hiroyuki Onaka
Mackerelによ
る監視ノウハ
ウ
Copyright 2017 Hiroyuki Onaka
Copyright 2017 Hiroyuki Onaka
ディスク容量に対して、最適な閾値は変わる
8GBのディスクの残り10%→800MB
1TBのディスクの残り10%→100GB
Copyright 2017 Hiroyuki Onaka
Copyright 2017 Hiroyuki Onaka
アプリケーションエンジニアのみなさんに質問
...「警告」ログって本当に見るの?
Copyright 2017 Hiroyuki Onaka
WaringとCriticalの閾値を同じ設定にした上で、
「アラートが発生した場合は必ず対応を行う」
という方法もあります。
Copyright 2017 Hiroyuki Onaka
まとめ
Copyright 2017 Hiroyuki Onaka
Mackerelの課題
メトリクス監視によっているので、チェック監
視は枠組みがあわないところがある
APIキーをメインの設定ファイル(mackerel-
agent.conf)に記述するため、Infrastrucure as
Codeに組み込む時に一工夫必要
Copyright 2017 Hiroyuki Onaka
Mackerel最大の問題点
ターミナル上で "mackerel"って空で打てないw
例: "sudo systemctl restart mackerel-agent"
Copyright 2017 Hiroyuki Onaka
Mackerelのいいところ
セットアップがお手軽、すぐ始められる
プラグインの仕組みが特定プログラミング言語
に依存しない
課金形態的に検証が行いやすい
→個人で試しやすい
Copyright 2017 Hiroyuki Onaka
Mackerelを使って今日からお手軽サーバー監視
https://mackerel.io/ja/
Copyright 2017 Hiroyuki Onaka
ありがとうございました!
• 大中浩行(Onaka,Hiroyuki)
• @setoazusa
• グロースエクスパートナーズ株式会社
アーキテクチャソリューション部
テクニカルリード
• http://hiroyuki.fieldnotes.jp/

More Related Content

PDF
「GebとSpockではじめるシステムテスト自動化」
PPTX
Stack2017 自動化困難な状況での活動方法
PPTX
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
PDF
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
PDF
VMの歩む道。 Dalvik、ART、そしてJava VM
PDF
Jjug ccc 2016_fall_blue_green_deployment
PPTX
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
PDF
20121019 jenkins勉強会lt資料
「GebとSpockではじめるシステムテスト自動化」
Stack2017 自動化困難な状況での活動方法
SI-Toolkitでテスト自動化を実現する現場で遭遇したこと
快適・簡単・安心なアプリE2Eテストの実行環境 #stac2017
VMの歩む道。 Dalvik、ART、そしてJava VM
Jjug ccc 2016_fall_blue_green_deployment
Infragistics Web Day 2017 - 継続的な開発を支える テスト自動化技術
20121019 jenkins勉強会lt資料

What's hot (20)

PPTX
Sansan における Android アプリ自動テスト導入事例
PDF
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分
PDF
アプリケーションエンジニアがMackerelで楽しく監視構成している事例
PDF
Awsで実現するseleniumテスト高速術
PPTX
Android ReactNative UITesting
PDF
SeleniumConf16 UK参加報告
PDF
SeleniumE2Eテストフレームワークを使用したテスト自動化事例 #Seleniumjp
PPTX
第9回Jenkins勉強会 超簡単Pipeline講座
PPTX
さくっと理解するSpring bootの仕組み
PPT
テスト自動化ツール[Selenium]を検討してみて
PDF
Jsug2015 summer spring適用におけるバッドノウハウとベタープラクティス
PDF
ハイパフォーマンスSeleniumテスト@サイボウズ
PDF
Spring Boot + Doma + AngularJSで作るERP #jjug_ccc #ccc_r12
PDF
ディープラーニングとAppiumでモバイルテスト自動化
PDF
iOSアプリ開発でもTravis CI #eytokyo
PDF
20161218 selenium study4
PDF
R5 3 type annotation
KEY
テスト駆動開発の導入ーペアプログラミングの学習効果ー
PPTX
テスト自動化の現場で困ること SI-Toolkitが解決すること
PDF
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Sansan における Android アプリ自動テスト導入事例
SeleniumIDEとSelenium WebDriver × Node.js Seleniumで業務効率化する15分
アプリケーションエンジニアがMackerelで楽しく監視構成している事例
Awsで実現するseleniumテスト高速術
Android ReactNative UITesting
SeleniumConf16 UK参加報告
SeleniumE2Eテストフレームワークを使用したテスト自動化事例 #Seleniumjp
第9回Jenkins勉強会 超簡単Pipeline講座
さくっと理解するSpring bootの仕組み
テスト自動化ツール[Selenium]を検討してみて
Jsug2015 summer spring適用におけるバッドノウハウとベタープラクティス
ハイパフォーマンスSeleniumテスト@サイボウズ
Spring Boot + Doma + AngularJSで作るERP #jjug_ccc #ccc_r12
ディープラーニングとAppiumでモバイルテスト自動化
iOSアプリ開発でもTravis CI #eytokyo
20161218 selenium study4
R5 3 type annotation
テスト駆動開発の導入ーペアプログラミングの学習効果ー
テスト自動化の現場で困ること SI-Toolkitが解決すること
Javaアプリケーション開発におけるユニットテストとTDDの実践 Java Day Tokyo 2014
Ad

Similar to Mackerelではじめる お手軽サーバー監視 (20)

PDF
Mackerelによる
簡単サーバー管理入門と発展形
PDF
4/22 技術書典4 か-16「ふぃーるどのーつ」 新刊「すいーとみゅーじっく vol.5Mackerelではじめるお手軽サーバー監視」サンプル版
PDF
登壇資料 CSカレッジアワード(お題:はてなさん)
PDF
Devlove mackerel
PDF
Mackerelの薄い本
PDF
Mackerelに触れる前にサーバー監視について考えてみよう
 
PDF
Mackerel on k8s
PDF
「eureka x mackerel」Mackerel meetup#6
PPTX
My First Monitoring With Mackerel
PPTX
Ansibleで始めるサーバ管理勉強会(2014年10月1日)
PDF
Mackerelのロール内異常検知の設計と運用
PDF
異常検知ナイト LT登壇資料 はてな id:syou6162
PDF
機械学習を用いたMackerelの異常検知機能について
PPTX
続・Freeプランで緩く監視させてもらってる話など
PDF
MackerelAPI使ってみた
PDF
Mackerel Drink Up #9 ロール内異常検知の正式化
PDF
メルカリでのNorikraの活用、 Mackerelを添えて
PPT
Mon, Muninによる楽々監視生活
KEY
MHA, Murakumo & Me
PDF
Mackerel & Norikra mackerel meetup #4 LT
Mackerelによる
簡単サーバー管理入門と発展形
4/22 技術書典4 か-16「ふぃーるどのーつ」 新刊「すいーとみゅーじっく vol.5Mackerelではじめるお手軽サーバー監視」サンプル版
登壇資料 CSカレッジアワード(お題:はてなさん)
Devlove mackerel
Mackerelの薄い本
Mackerelに触れる前にサーバー監視について考えてみよう
 
Mackerel on k8s
「eureka x mackerel」Mackerel meetup#6
My First Monitoring With Mackerel
Ansibleで始めるサーバ管理勉強会(2014年10月1日)
Mackerelのロール内異常検知の設計と運用
異常検知ナイト LT登壇資料 はてな id:syou6162
機械学習を用いたMackerelの異常検知機能について
続・Freeプランで緩く監視させてもらってる話など
MackerelAPI使ってみた
Mackerel Drink Up #9 ロール内異常検知の正式化
メルカリでのNorikraの活用、 Mackerelを添えて
Mon, Muninによる楽々監視生活
MHA, Murakumo & Me
Mackerel & Norikra mackerel meetup #4 LT
Ad

More from Hiroyuki Ohnaka (20)

PDF
remote Docker over SSHが熱い
PDF
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
PDF
Remote Development with Visual Studio Code & A clean dev env, working every ...
PDF
ChefとItamaeをニコイチしてAnsibleにマイグレーションした話
PDF
「WindowsデスクトップでWeb開発 改訂版」サンプル
PDF
Microsoft DocsにContributeした話
PDF
Azure functions+typescript
PDF
技術書典4 く-35「錬金術MeetUp」 Alchemist Vol.1 サンプル版
PDF
仮想通貨始めました~GethではじめるEthereum~
PDF
錬金術MeetUpへのお誘い
PDF
TDDはじめて物語Second Season(updated)
PDF
TDDはじめて物語 Second Season #tddbc
PDF
XP祭り2017 LT 「DevOps再考」(改題)
PDF
JDK9の真の目玉機能はこれだ!
PDF
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
PDF
「すいーとみゅーじっく」のできるまで
PDF
pact-jvmではじめるコンシューマー駆動契約
PDF
実録Blue-Green Deployment導入記
PDF
TDDのこれまで、そしてこれから
PDF
「TDDはじめて物語」 #tddbc
remote Docker over SSHが熱い
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
Remote Development with Visual Studio Code & A clean dev env, working every ...
ChefとItamaeをニコイチしてAnsibleにマイグレーションした話
「WindowsデスクトップでWeb開発 改訂版」サンプル
Microsoft DocsにContributeした話
Azure functions+typescript
技術書典4 く-35「錬金術MeetUp」 Alchemist Vol.1 サンプル版
仮想通貨始めました~GethではじめるEthereum~
錬金術MeetUpへのお誘い
TDDはじめて物語Second Season(updated)
TDDはじめて物語 Second Season #tddbc
XP祭り2017 LT 「DevOps再考」(改題)
JDK9の真の目玉機能はこれだ!
Java8移行は怖くない~エンタープライズ案件でのJava8移行事例~
「すいーとみゅーじっく」のできるまで
pact-jvmではじめるコンシューマー駆動契約
実録Blue-Green Deployment導入記
TDDのこれまで、そしてこれから
「TDDはじめて物語」 #tddbc

Mackerelではじめる お手軽サーバー監視

  • 1. Copyright 2017 Hiroyuki Onaka Mackerelではじめる お手軽サーバー監視 2017/12/23 合同勉強会 in 大都会岡山 -2017 Winter- 大中浩行(@setoazusa) この作品は クリエイティブ・コモンズ 表示 4.0 国際 ライセンスの下に提供されています。
  • 2. Copyright 2017 Hiroyuki Onaka みなさまへのお願い • このスライドはslideshareで公開します • 感想はハッシュタグ #gbdaitokai まで
  • 3. Copyright 2017 Hiroyuki Onaka アジェンダ(1) Mackerel(マカレル)は(株)はてなが提供する、 直感的な設定とユーザーインターフェースを特 徴とするサーバー監視サービスです。 その特徴と、現場で活用する上でのノウハウに ついて取り上げます。
  • 4. Copyright 2017 Hiroyuki Onaka アジェンダ(2) • 監視あるある • Mackerelについて • MackerelによるWebシステム監視 • Mackerelによる監視ノウハウ • まとめ
  • 5. Copyright 2017 Hiroyuki Onaka わたし(@setoazusa) • 横浜から来ました神奈川から来たとは言わない • アプリケーションエンジニア(主にJava)とイ ンフラエンジニアの二刀流 • CIとかBlue-Green Deploymentとかやってたら いつのまにかこういうことになった
  • 6. Copyright 2017 Hiroyuki Onaka 監視あるある
  • 7. Copyright 2017 Hiroyuki Onaka モニタリングはなぜ必要なのか • 「完璧なサイジング」というものの幻想 • Yahoo!砲 • WBS砲 • ユーザーは増える、データは貯まる、アプリ ケーションの規模は膨らむ
  • 8. Copyright 2017 Hiroyuki Onaka 今はクラウドというものがありますが 「開発チームに法人カード預けてください」 というのもまた非現実的
  • 9. Copyright 2017 Hiroyuki Onaka 「計測なくして科学なし」 チューニングとはエンジニアリングです。「勘 と経験」で行うものではない。 足りなければ増やせばいいというものでもない
  • 10. Copyright 2017 Hiroyuki Onaka 誰のためのモニタリング • 開発 • インフラ構築 • インフラ運用
  • 11. Copyright 2017 Hiroyuki Onaka 運用のミッション 「システムを安定して運用させること」
  • 12. Copyright 2017 Hiroyuki Onaka 運用にとっては理想的なシステム 「カットオーバーしたけどユーザーがいないシ ステム」
  • 13. Copyright 2017 Hiroyuki Onaka 「ユーザーがいないシステムは障害を起こさない」 タスクが溢れているインフラ運用者というのは、 「システムをいかに使用させないか」という思 考に陥ることがある。
  • 14. Copyright 2017 Hiroyuki Onaka 「システムは使われてナンボ」 アラームが鳴るというのはシステムが使われて 世の中の役に立っていることの証し
  • 15. Copyright 2017 Hiroyuki Onaka 「10+ Deploys Per Day」から 「Opsの仕事は、ビジネスを実現することだ」 (Ops' Jobs is to enable the business) 10+ Deploys Per Day: Dev and Ops Cooperation at Flickr https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
  • 16. Copyright 2017 Hiroyuki Onaka 運用のジレンマ 我々(インフラ)はシステムを作る側でなく預か る側。 運用(インフラ)が仕事がないのはいいこと
  • 17. Copyright 2017 Hiroyuki Onaka • 「システムの使用を促進する」 • 「自分の仕事を減らす」 →この二つを両立することは難しい
  • 18. Copyright 2017 Hiroyuki Onaka 監視しだしたらキリがない。発生確率が一定な ら、監視項目が増えるということはアラームが 発生する回数が増えるということ。 そのアラームを受けるのは夜勤をしている運用 メンバーそして始まるDevとOpsの対立
  • 19. Copyright 2017 Hiroyuki Onaka 監視は目的でなく手段 我々がやりたいのはサービスの監視であって、 OSの監視ではない
  • 20. Copyright 2017 Hiroyuki Onaka 以上のことを踏まえた、監視に求められる要件 • 最小限度のカスタマイズで使うことができる • 機能と学習コストのバランス • 「ほどよい」既定値であること
  • 21. Copyright 2017 Hiroyuki Onaka Mackerelにつ いて
  • 22. Copyright 2017 Hiroyuki Onaka https://mackerel.io/ja/
  • 23. Copyright 2017 Hiroyuki Onaka Mackerel(マカレル)は(株)はてなが提供する、 直感的な設定とユーザーインターフェースを特 徴とするサーバー監視サービスです。 Mackerel=英語で「鯖」
  • 24. Copyright 2017 Hiroyuki Onaka Mackerelのセットアップ(1)
  • 25. Copyright 2017 Hiroyuki Onaka Mackerelのセットアップ(2)
  • 26. Copyright 2017 Hiroyuki Onaka Mackerelのセットアップ(3)
  • 27. Copyright 2017 Hiroyuki Onaka Mackerelのセットアップ(CentOS/RHEL7の場合) curl -fsSL https://mackerel.io/file/script/setup-all- yum-v2.sh | MACKEREL_APIKEY=‘APIキー' sh
  • 29. Copyright 2017 Hiroyuki Onaka Mackerelの特徴 • ホストにエージェントをインストールするス タイル • Push型のアーキテクチャー
  • 30. Copyright 2017 Hiroyuki Onaka Mackerelによ るWebシステ ム監視
  • 32. Copyright 2017 Hiroyuki Onaka 監視項目のカスタマイズは、/etc/mackerel- agent/mackerel-agent.conf で行います。
  • 33. Copyright 2017 Hiroyuki Onaka 公式プラグイン集の導入 sudo yum -y install mackerel-agent-plugins
  • 34. Copyright 2017 Hiroyuki Onaka jvmの監視 [plugin.metrics.jvm] command = "mackerel-plugin-jvm - javaname=Bootstrap"
  • 35. Copyright 2017 Hiroyuki Onaka (おまけ)javanameとは [vagrant@jira ~]$ sudo jps 2215 Jstat 2203 Jps 4604 Bootstrap
  • 37. Copyright 2017 Hiroyuki Onaka PostgreSQLの監視 [plugin.metrics.postgres] command = "mackerel-plugin-postgres - user=jira -password=xxxx -database=jira"
  • 39. Copyright 2017 Hiroyuki Onaka プラグイン
  • 40. Copyright 2017 Hiroyuki Onaka Mackerelの一つの特徴 プラグインを開発することによる、カスタムメ トリクスやチェック監視の項目追加が容易なこ と
  • 41. Copyright 2017 Hiroyuki Onaka MackerelのAgentとPluginの間は、実行コマン ドの返り値および標準出力によって結果の受け 渡しを行う仕様になっています。 このため、特定のプログラミング言語によらず プラグインの実装を行うことができます。
  • 42. Copyright 2017 Hiroyuki Onaka 特定のプログラミング言語によらないと何が嬉し いか インフラとか運用の現場は使用できる技術セッ トに制約がある • 「シェルスクリプトならできる」 • 「RubyならServerspec使っているからわか る」
  • 43. Copyright 2017 Hiroyuki Onaka 例: CLOSE=$(ss -nat |grep 192.168.3.11:8080 |grep CLOSE-WAIT|wc -l) EST=$(ss -nat |grep 192.168.3.11:8080 |grep ESTAB |wc -l) TIME=$(ss -nat |grep 192.168.3.11:8080 |grep TIME-WAIT |wc -l) EPOCH=$(date +'%s') echo -e "jira.port.close¥t${CLOSE}¥t${EPOCH}" echo -e "jira.port.establish¥t${EST}¥t${EPOCH}" echo -e "jira.port.time¥t${TIME}¥t${EPOCH}
  • 44. Copyright 2017 Hiroyuki Onaka mackerel-agent.conf [plugin.metrics.jiraport] command = "/usr/local/bin/jiraport"
  • 46. Copyright 2017 Hiroyuki Onaka 注意点 ローカルでプラグインを実行している時と、 Mackerel Agentが実行している場合で環境変数 に差分が出るため、プラグインの実行に失敗す る場合があります。 (cronでスクリプトを実行した時に良くあるア レ)
  • 47. Copyright 2017 Hiroyuki Onaka ...と思っていたら https://mackerel.io/ja/blog/entry/weekly/20171215
  • 48. Copyright 2017 Hiroyuki Onaka Mackerelは定期リリースで現場で実用的な機能 が持ち込まれることが結構あるので、毎週のリ リース内容をチェックしておくと吉です。 https://mackerel.io/ja/blog/
  • 49. Copyright 2017 Hiroyuki Onaka Mackerelによ る監視ノウハ ウ
  • 51. Copyright 2017 Hiroyuki Onaka ディスク容量に対して、最適な閾値は変わる 8GBのディスクの残り10%→800MB 1TBのディスクの残り10%→100GB
  • 53. Copyright 2017 Hiroyuki Onaka アプリケーションエンジニアのみなさんに質問 ...「警告」ログって本当に見るの?
  • 54. Copyright 2017 Hiroyuki Onaka WaringとCriticalの閾値を同じ設定にした上で、 「アラートが発生した場合は必ず対応を行う」 という方法もあります。
  • 55. Copyright 2017 Hiroyuki Onaka まとめ
  • 56. Copyright 2017 Hiroyuki Onaka Mackerelの課題 メトリクス監視によっているので、チェック監 視は枠組みがあわないところがある APIキーをメインの設定ファイル(mackerel- agent.conf)に記述するため、Infrastrucure as Codeに組み込む時に一工夫必要
  • 57. Copyright 2017 Hiroyuki Onaka Mackerel最大の問題点 ターミナル上で "mackerel"って空で打てないw 例: "sudo systemctl restart mackerel-agent"
  • 58. Copyright 2017 Hiroyuki Onaka Mackerelのいいところ セットアップがお手軽、すぐ始められる プラグインの仕組みが特定プログラミング言語 に依存しない 課金形態的に検証が行いやすい →個人で試しやすい
  • 59. Copyright 2017 Hiroyuki Onaka Mackerelを使って今日からお手軽サーバー監視 https://mackerel.io/ja/
  • 60. Copyright 2017 Hiroyuki Onaka ありがとうございました! • 大中浩行(Onaka,Hiroyuki) • @setoazusa • グロースエクスパートナーズ株式会社 アーキテクチャソリューション部 テクニカルリード • http://hiroyuki.fieldnotes.jp/