[レポート]「Mackerelによる簡単サーバー管理入門と発展形」 at 第21回さくらの夕べ in 札幌

mackerel

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

2014年12月1日(月)に開催された第21回さくらの夕べ in 札幌に参加してきました!

会場はTKPガーデンシティ札幌駅前。今年8月にオープンしたばかりの貸会議室です。初めて行きましたがとても綺麗だしアクセスも良いし、良い会場ですね。費用もそれほど高くないので今度何かのイベントで使ってみたいです。

Mackerelによる簡単サーバー管理入門と発展形」

株式会社はてな CTO 田中慎司さん(@stanaka)のセッション。今回の資料はまだアップロードされていませんが、さくらの夕べ@福岡で使われた資料とほぼ同等だと思いますので、そちらのリンクを貼っておきます。

Mackerelの概要

・もともとはてなで作っていたサーバ管理ツールをサービス化したもの。
・鯖の英語=Mackerelが語源。
・サーバ管理ツールについて社外で話をしていると面白いと言われることが多かったのでサービス化してみた。
・社内でリプレースしており、現在のが三代目。その後もどんどん改善している。

Mackerelのアーキテクチャ

・被監視サーバにエージェントを仕込んで、Mackerel側の監視サーバにPush通知する仕組み。
・ユーザは管理コンソールをWebブラウザで参照したり、APIを叩いたりして確認する。
・ユーザ環境に管理サーバは不要。
・OSSツール(Zabbix、Sensu、Nagios、e.t.c.)と比較してなにがいいのか?
 ・インストールが簡単、エージェントをいれるだけで使える。
 ・サーバの管理がいらない。
 ・UIが簡単。
 ・標準である程度一通りのことが簡単に使える。

おすすめの使い方

・使っているVPSにとりあえず入れる。
 ・無料プランがある、5台まで無料。
  ・無料プランでも一通りの機能が動く。
 ・ミドルウェアプラグインを設定するとさらにいろんな情報がとれて便利。
  ・ミドルウェアプラグインも無料で使えるので、是非試してみてほしい。

デモ

・Organization(組織)という箱の中でいろんなリソースを突っ込んでいく。
・Servicesの中にサーバをグループ化して入れていく。
・はてな全体の場合、サービスが76個、さらにその中に役割(Role)=600個くらい、サーバが1600くらい。
・同じ役割のサーバを1つのグラフに重ねてみることで、負荷が突出しているサーバがすぐわかる。

Mackerelの特徴

簡単セットアップ

・Mackerel-agent
・最近話題になっているGoで書かれている。
・現在はLinuxをサポート、Windowsも近々サポートできるかも知れない。
・github上でソースを公開している。
・パッケージ配布しているためyumやapt-getでインストールできる。

1台から数百台まで大丈夫

・サービス=さまざまなホストが協調していて動いている単位。
・ロール=サービスの中で役割でまとめる単位。
・サービスの下にロールがあり、ロールの下にサーバがある。
・agentの設定でロールを設定する。
chefのcookbookも公開している。
・ステータス=各サーバのライフサイクル。
 ・新規作成したらstandby(監視対象)、動いたらworking(監視かつ通知対象)。それ以外は監視対象にしない。

メトリック収集

・基本的なリソースは最初から全部収集できる。
・各種ミドルウェアはプラグインで対応。
・サービスメトリック→特定のサーバに紐付かないメトリック。
 ・応答時間やエラー率、アクティブユーザ数など。
 ・積み重ねグラフはキャパシティプランニングに使える。
・オートスケール対応。
 ・サーバが縮退してもグラフはそのまま残る。
 ・ピークのときに何台でどのくらいの負荷をさばいたのか後で確認可能。
・カスタムメトリック
 ・公式プラグイン集がある。
 ・apacheやelasticsearch等。最近流行ってるあたりはだいたい抑えてる。
・サービスメトリック。
 ・fluentdを推奨。
 ・fluentdのMackerel用プラグインがある、セットで使ってもらうことを想定している。
・各種ツールとの連携。
 ・死活、メトリック、通知(メール、webhook、slackhipchatpagerduty)。
 ・監視対象をサーバトロールで絞ることができる。
  ・特定のサーバだけきつめに監視したりできる。
・グラフの外部貼り付け。
 ・例えばブログ、グループウェアのwikiやチケットなどに簡単に貼り付け可能。
・webhook hubot連携。
 ・hubotでwebhookを受け取り、通知する。

Mackerelの価格

・FreeとStandardの2つのプラン。
・Freeは5台まで無料、データの保持は24時間、監視項目は5。
・Standardは1台月額2000円、台数無制限、データ保持期間1年、監視項目数100。
 ・個人や小規模ユーザ向けプランを検討中

さいごに

この後、さくらインターネット 鷲北さんから「さくらのクラウド×Mackerel」というタイトルで、さくらのクラウドのサービス紹介があったのですが、当方体調不良で全くメモが取れませんでした。すみません...(翌日から発熱して寝込みました)

Mackerelはベータ版が出た直後に触っただけだったのですが、それからまたかなりパワーアップしているようですので、改めて使ってみたいと思います。