Diverse developer blog

株式会社Diverse(ダイバース) 開発者ブログです。

自社システムにマッチしたツールを選び活用することが、ユーザーのサービス継続のカギになる~新ツールMackerelを導入して~

AWS移管に伴い、Diverseではサーバー監視ツールの導入が必要となりました。検討を重ね、新たに導入したのが、サーバー監視ツール「Mackerel」(マカレル)です。今回は、Mackerelを導入した経緯と導入によって生まれたメリット、さらにチームとして見えてきた今後、挑戦したいことについて、サーバサイドエンジニアの横山裕(よこやま ゆう)さんに話を聞きました!

―そもそものツール導入の経緯を教えてください。

横山:当社が提供するサービスをAWSに移管したため、既存のサーバー監視ツールは使えなくなってしまいました。そこで新たに、AWSにマッチした新ツールを導入する必要があったのです。(AWS移管については下記記事参照)

理想とする開発体制をつくるために、僕らが取り組んだこと~AWS移管を完了して~ | Diverse Dev.Blog

実は以前、別のサービスでAWSが提供しているクラウド型のサーバー監視システム「CloudWatch」を使用していたのですが、うまく扱うことが出来ませんでした。そこで以前の状況も踏まえて、まったく新しい監視ツールを使ってみようと話し合いが持たれたのです。

ツール選定の際は「操作性の良いツールであること」に主眼を置きました。チームのみんながストレスなく使えることが最重要だったからです。

その1案として、僕が個人的に無料で使っていた「Mackerel」を提案しました。はてなさんがつくった監視システムとあって、チームのエンジニアたちもその存在は知っていました。話し合いの結果、「良さそうだし、まずは使ってみようか」ということで、導入が決定。まさに弊社のValue、「Fail Fast!」という感覚でした。メリットは何と言っても、その操作性の良さ。導入作業がとにかく簡単で、mackerel-agentをインストールするだけで使い始められるという使い勝手の良さも決め手になりましたね。

24時間いつでも同じサービスを提供する。そのミッションにマッチしたツール

――Mackerelの導入で得られたメリットはどんなところにあると思いますか?

横山:どのアプリにも共通して言えることだと思いますが、僕たちが提供しているサービスは「ユーザーが安心してアプリを不具合なく、ストレスなく使えること」が前提です。その点、「サービスの品質を保つ」という意味でMackerelは、優れた機能を持っていると思いますね。

サーバー監視におけるルールをこちら側で柔軟に決められる点や、プラグインで自分たち独自の監視体制が設定できるのも大きな特長です。設定の閾値を超えるとアラートが発報されるので、それを僕たちが確認する仕様になっています。

マッチングアプリ、という特性上「検索を速くする」のはいつでも課題のひとつ。そのため、レスポンスタイムを計測するといった、データ収集も同時に行います。品質改善につなげる手がかりとしても活用しています。

他方、既存の監視ツールでは、グラフを生成するツールと、アラートを追加するツールと2つのサーバーが必要でした。しかし、Mackerel導入後は1つのツールでこれらすべてが把握可能。1つ画面を見れば全体が見通せるので、ミスの軽減にもつながったと思います。

そもそも既存の監視サーバーでは、「監視サーバーが動いているかを確認する」という作業が発生していましたが、Mackerelに関しては、「ツールが正しく動いているか」という部分ははてな側が負担してくれています。「監視サーバーの動作確認」にかかる人的コストをはてな側が担ってくれているので、こちらは「ユーザーが正しくサービスを使えているか」という確認作業に集中できるというメリットもあります。

f:id:diverse-tech:20210806110307j:plain

勉強会を開催して、チームが今、何をやっているか?を見える化

――導入にあたって、社内勉強会を実施したと聞いています。

横山:はい。すでにyoubrideでは、Mackerelを導入していたのですが、サーバサイドエンジニアから、活用事例が少なくどんなものかわかりにくい、という声が寄せられていました。

そこで、サーバサイドエンジニアに向けて監視の必要性や、活用を意識した勉強会をしようとしたところ、Mackerel側で知見共有のための勉強会企画があることを知り、CREチームの方にリクエストさせていただきました。

当日は、インフラエンジニアからサーバーサイドエンジニアまで幅広く参加。Mackerelで何ができるのか?を簡単に教えていただきました。チームを越えて横断的にみんなで知識共有をしたことで、僕たちが今何に取り組んでいるか、伝える機会にもなったと思います。

Mackerel CREチームさんの記事はこちら

mackerel.io

現在リモートワーク下ではありますが、月に1回このような勉強会を開催しようという試みも始まっています。チームで開催することによって、他のチームの活動を知ったり、知ってもらったり。「今、何をしているか」の見える化を積極的にしていきたいと思っています。

ツールを正しく活用し、ユーザーのサービス継続率につなげていく

――最後に、今後挑戦していきたいこと、展望を教えてください。

横山:とにかく、僕たちの一番の目標は「ユーザーの利便性向上のため、サーバーの安定供給につとめること」です。さらに言ってしまえば、監視サーバーが使われ、アラートが出る前に、予防措置を講じられるような体制、さらにはシステムを構築していきたいと思っています。

僕たちはSREというチームなのですが、チームの目標は「サイトの信頼性を確保すること」これに尽きます。サービスのダウンが無く、質を落とさず使用できるということは、ひいてはユーザーのサービス継続率にもつながります。

楽しく、また快適にサービスを継続していただけるよう、今後もチーム一丸となってクオリティの向上を目指していきます!

――横山さん、ありがとうございました。

DiverseではMackerelや他のツールを使うことのできる「SREとして活躍できる仲間」を募集しています!

f:id:diverse-tech:20210806111140j:plain

エンジニア(インフラ/SRE)

エンジニア(サーバーサイド・youbride)

エンジニア(サーバーサイド・YYC)