【書籍レポ】「Mackerelではじめるお手軽Webサービス監視」を読んでMackerelをはじめよう!
はじめに
とある縁がありまして(後述)、標題の書籍を拝読する機会がありました。読んだところ素直に「これは分かりやすい良書」と思ったのでご紹介します。
対象としては 入門者 になります。Mackerel の、というのはその通りなのですが、それに限らず、
- 「これまであまりシステム監視をしてこなかった」
- 「なんとなくやっていた・やろうと思っていたけど勘どころが分からない」
という 監視入門者 向けにも最適なテキストになっています。90ページ程度の手軽に読めるものですので、少しでも興味を覚えた方は是非手に取ってみてください。もちろん電子書籍版もあります。
概要
本書は株式会社はてなが提供するサーバー監視サービス「Mackerel」について、導入方法やその特徴、現場で活用するノウハウについてまとめたものです。Webサービスの監視に必要な情報をコンパクトにまとめています。
著者は 大中 浩行 さん。本書は「4/22に開催された「技術書典4」で頒布した同人誌「Mackerelではじめるお手軽サーバー監視」の商業版」であり、「分量は同人誌版の1.7倍」とのことです。
内容について
本書はその名の通り、Mackerel を使ってシステム監視を始めるにあたっての指南書です。ですがそれにとどまらない、以下の特徴があると思いました。
100ページ無い
前述しましたがほんとうに薄くて軽いです。Mackerelのシンプルさが体現されているかのようで、読んでいて手が痛くなることもなく、非常に読みやすいです。
「なぜ監視をするのか」がしっかりと説明されている
そんな本なら内容も薄いか、といわれると そんなことはありません。通常ならサービスの説明に終始しておかしくないと思うのですが、Mackerel 云々以前に「 なぜ監視をしなくてはならないのか 」という点を、1章まるまる使って説明しています。
その説明においても表面的なものではなく、適切な引用がまじえられた、この分野における著者の大中さんの見識あふれる内容になっています。例えば以下のような感じです(p.7)。
パフォーマンスチューニングとは、測定した事象と仮説検証に基づくれっきとしたエンジニアリングの一分野であり、単に「設定値を増やせばいい」というものではありません。
また、下記のような文言にも経験が現れていますね(p.38)。
アプリケーションの警告ログは読まれない
ナレッジが濃い
Mackerelの入門書のはずですが、例えばこんなことも書かれています。
- Linux カーネル 3.14 以降に導入された
MemoryAvailable
値とその取得方法(p.22) - TOML フォーマットとは(p.25)
- マルチコア CPU の OS を監視する際に
mackerel-plugin-multicore
を使う理由(p.34) - 同時接続数に関する知見(p.45)
などなど、Mackerel に収まらないノウハウが詰め込まれています。ある程度経験を積まないと身につかないこれらの知識は、これから監視の世界に入門する方々にとっては貴重ではないでしょうか。
例が具体的
本書では監視対象の実例として、アトラシアン社製の JIRA を使っています。これは実際にダウンロードして動かすことができるので、本書の内容を実際に試すことができます。
実際のシステムを題材にしているため、監視設定や例(図示)にも具体性があります。よく使われる手ではありますが、この手の指南書のツボを押さえた構成になっていると思います。
またインフラの監視にとどまらず、アクセスログの可視化(p.57)やバッチ処理の監視を Mackerel で行う場合のノウハウ(p.68)など、やりたくなるけど、すぐにはやる方法が分かりにくい ものに対して適切にカバーしています。こういったところもお得感がありますね。
まとめ
正直なところ、個人的に見て欠点らしい欠点が見つからない本です。そもそも Mackerel は始めやすいサービスですし、かつ 現在進行形で進化し続けている ので、あまり深く説明してしまってすぐ時代遅れになるよりは、丁寧な導入と、今後のための基礎知識を身につけてもらうことのほうが重要と思います。
もちろん、がっつりと Mackerel を解説した下記のような書籍が存在するからこその住み分けかもしれません。
本書で基本的な知識を得た後、さらに情報が必要な場合はこちらに進むと良いのではないかと思いました。著者の大中さんもこのように述べられていますので参考にしてください。
はじめてインフラ監視をはじめる人が、最小ステップで「お手軽に」監視をはじめられることをゴールとしていますので、パブリッククラウドとの連携機能などについて記述していないので、網羅性を犠牲にしているところはあります。ただしそれについては、はてな社のMackerelチームの方々が書かれた、「Mackerel サーバ監視[実践]入門 」があるので、住み分けになるのかなと思っています。
目次
- 第1章 なぜゆえの監視
- 第2章 Mackerelについて
- 第3章 Mackerelの導入
- 第4章 MackerelによるWebシステム監視
- 第5章 プラグイン開発による対象メトリックの追加
- 第6章 チェック監視
- 第7章 アクセスログの可視化によるサービス水準の監視
- 第8章 URL外形監視によるWebサイトのヘルスチェック
- 第9章 バッチ処理のロギングと監視
- 第10章 APIを使用したサービスメトリックの投稿
- 第11章 コマンドラインツールmkr
- 第12章 まとめ
詳細な目次は こちら をご参照下さい。
おまけ:入手した経緯
ちなみにこちらの書籍は、先日(8/3)開催された Mackerel Meetup #12 Tokyo の懇親会にて開かれたじゃんけん大会にて、正式な手順をふんで入手したものとなります。
無理を言ってサインして頂きました。ありがとうございました!
Mackerel Meetup #12 については下記ブログもご参照ください。