2018の15日目の記事です。今回は技術的なお話ではなく、私が所属する学生サークル(以下、サークル)で実際にMackerelを導入したお話をしていきます。現在、サークルで運用しているサーバはオンプレミスとクラウド(AWS)の二種類あります。オンプレミスは実際に自宅などで動いているサーバで、こちらは内部に構築したZabbixで監視しています。クラウドの方はAWSを利用しているので、CloudWatchを使っていました。監視ツールが複数またがるのと、それに伴い認証情報もバラバラになってしまうため、非常に管理するのが大変でした。そこで、新しい監視ツールを使うのにあたり、DatadogかMackerelのどちらかを使いたいという話になりました。Mackerelを選んだ理由Mackerelは周りの学生もよく使っていて、日本語に対応していることと、直感的なインターフェースが好評でした。最近はAWSインテグレーションもサポートし始めたので、CloudWatchを使っている身としては好都合でした。[https://mackerel.io/ja/features/aws-integration/:embed:cite]Datadogの方が機能は豊富ですが、実際のユースケースを考えるとMackerelが最適だと考え、今回導入に至りました。実際に使ってみた話サークルではMackerelの通知をSlackではなくDiscordに流しています。これは本団体がDiscordメインで活動しているからです。Webhookが存在し、Slackと同じフォーマットでWebhookを送ることができます。そのため、Discordで通知するのも簡単で、グラフ画像もちゃんと出ています。[f:id:albacore:20181215151115p:plain]Zabbix時代にはルータやL3スイッチなどのネットワーク機器もSNMPで監視していたのですが、こちらの記事を参考にMackerelでもメトリックが取れるようになりました。OIDを探すまで一苦労ですが、気合いでなんとか乗り切りました。MackerelはOSSも充実しており、mackerel-client-goというGoのライブラリを使うことで、既存のWebサービスに対して柔軟に組み込むことが可能です。実際にホストのCPU使用率やメモリ使用量などからオートスケーリングするロジックも独自で組んで運用しています。[https://github.com/mackerelio/mackerel-client-go:embed:cite]最近のMackerelのトピックとしては、アラートの一覧を取得する際に以前はオープンなアラートしか取得出来ませんでしたが、クローズされたアラートも一緒に取得することが出来るようになり、とても便利です。[https://mackerel.io/ja/api-docs/entry/alerts#get:embed:cite]おわりにとても短い文章になってしまいましたが、Mackerelは学生でも簡単に使える超最高なサービスです。自宅でサーバ運用している人から、趣味でWebサービスを運用している人まで誰でも簡単に触れるのでオススメです。字幕のはなしをします。