Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
開発生産性向上のための 監視運用改善
Search
dmmsre
July 11, 2024
0
240
開発生産性向上のための 監視運用改善
開発生産性Conference2024 登壇資料
dmmsre
July 11, 2024
Tweet
Share
More Decks by dmmsre
See All by dmmsre
オブザーバビリティ成熟度モデルの企画から社内導入まで
dmmsre
2
77
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
A better future with KSS
kneath
239
18k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Agile that works and the tools we love
rasmusluckow
331
21k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.6k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Practical Orchestrator
shlominoach
190
11k
Transcript
© DMM.com 開発生産性向上のための 監視運用改善 〜DMMオンラインサロンにおけるSRE部の取り組み〜 DMM.com ITインフラ本部 SRE部 湯浅省吾 2024年6月28日
© DMM.com 自己紹介 • 名前 : 湯浅 省吾(ゆあさ しょうご) • 所属
: DMM.com ITインフラ本部 SRE部 • 担当業務: DMMオンラインサロンや、DMM通販などでSREとし て、サービスの信頼性向上や、AWS関連での 技術支援を行なっている
© DMM.com 今回お話しすること DMMオンラインサロンにて、New Relicを活用して 監視運用を改善した事例についてお話しします それによって、どのように開発生産性が向上したかをお話しします + =
© DMM.com DMM.comとは
© DMM.com DMMオンラインサロンとは オンラインレッスンやファンクラブの新しいカタチを目指し 提供している、日本最大級の「学べる・楽しめる」会員制コミュニティサービス です。 DMMオンラインサロンでは、大きく以下の2つのシステムがある • オンラインサロン 入会/管理システム
• オンラインサロン コミュニティツール
© DMM.com DMM.comにおけるSRE部の業務 ミッション ❏ DMMのすべてのサービスとインフラストラクチャを ソフトウェアの力で最適化する 大きく2つのチームで活動 ❏ 事業支援チーム
❏ DMMの各種事業/サービスへの技術支援 ❏ DMMオンラインサロン ❏ DMMブックス ❏ DMM通販 …etc ❏ 信頼性向上チーム ❏ SLO導入推進 ❏ 自動化推進/トイル削減 …etc
© DMM.com New Relic導入のキッカケとなる出来事 2020年ごろから数年かけて、レガシー脱却の取り組みを行った ❏ クラウド化、さらにはコンテナ化 ❏ いわゆる Lift
& Shift オンラインサロン 入会/管理システム ❏ オンプレ → AWS EC2 → AWS ECS Fargate オンラインサロン コミュニティツール ❏ AWS Elastic Beanstalk → AWS ECS Fargate
© DMM.com New Relic導入のキッカケとなる出来事 実行環境そのもの以外も、クラウド最適化のための見直しを実施 ❏ CI/CDをCircleCIに移行 ❏ AWS環境構築をTerraform化して構成管理 ❏
このような流れの中で、監視の部分についても最適化していく 必要があった
© DMM.com 既存の監視における課題 (1)各システムで監視ツールがバラバラ ❏ オンラインサロン入会/管理システム • Zabbix、StatusCake ❏ コミュニティツール
• Mackerel、CloudWatch (2)インフラ/監視基盤のサイロ化 ❏ インフラ/監視基盤は別部門が管轄しており、何か設定や変更を行う場合、 作業依頼が必要となり、毎回時間がかかっていた (3)アプリケーションの状況把握に時間がかかる ❏ アプリケーションの状態が把握できるような監視ツールが入っていなかった ❏ ログを参照するにはサーバにSSHして確認する必要があった
© DMM.com New Relicを活用した課題解決 これらの課題について、New Relicを活用することで対応を行なった (1)各システムで監視ツールがバラバラ (2)インフラ/監視基盤のサイロ化 (3)アプリの状況把握に時間がかかる 導入にあたっては、SRE部とオンラインサロン開発部が協力して実施
© DMM.com (1)監視ツールを New Relicに統一 各システムの監視ツールをNew Relicに統一した ❏ 監視運用の手法を統一することができ、運用が効率化 ❏
システム横断で状態が把握できるようになり障害調査や分析が 効率的に行えるようになった ❏ 統一されたツールでの運用となったため、学習コストが下がった 運用効率化 システム横断で 状況把握 学習コストの低下
© DMM.com (2)監視設定をセルフマネジメント 監視ツールがSaaS化され、監視ツール自体の基盤構築・運用が不要になっ ただけでなく、監視設定を自分達で行えるようになった 監視設定をTerraform化、設定を構成管理、自動反映できるようにした New Relic導入前は、監視設定を担当部署に依頼すると5営業日程度の リードタイムが発生していたが自分達ですぐに反映できるようになった
© DMM.com (3)New Relic APM / Logsの活用 New Relic APM
を利用することで、アプリケーションの細かな動きが把握で きるようになった ❏ どのような処理が呼び出されていて、どこで時間かかっているのか 可視化されることで、調査が捗った
© DMM.com (3)New Relic APM / Logsの活用 New Relic Logsを利用することで、サーバにSSHログインしなくても
ブラウザから簡単に、システム横断でログを参照できるようになった ・踏み台経由でログインしなきゃ ・本番だから立ち合い必要だ ・複数サーバからログ収集しなきゃ ・まとめて検索するの大変 などなど ・ブラウザで一括検索できてラクチン ・サーバ側でユーザー用意しなくていい
© DMM.com さらに New Relic ダッシュボードも活用 現在のシステムの状態を簡単に俯瞰的に確認するために ダッシュボードを用意、そこから確認できるようにした 朝会でダッシュボードを確認し、日々の異変にすぐに気づける ❏
異変に対しての対応判断や実際の対応をスピーディーに行えるように なった
© DMM.com さらに New Relic ダッシュボードも活用 導入当初は、隔週で「監視ツールを眺める会」を行った ❏ ダッシュボードを眺めて気になるところを議論 ❏
監視ツールの使い方を覚える、監視ツールを見るクセが システム性能だけでなく、AWS料金等も可視化することで、意図しないコスト 増加にも対処できるようになった
© DMM.com (参考)ダッシュボード 日々のエラー率、過去からの相対的な増加率や、 直近のエラー数 TOP20 を表示 など
© DMM.com (参考)ダッシュボード デプロイメントマーカー(現在の名称はチェンジトラッキング)を 活用することで、デプロイ前後の状況変化にも気づけるようになった デプロイしたタイミングがピン で表示される
© DMM.com (参考)ダッシュボード AWSアカウントごとに料金を可視化、想定外のコスト増に 気づけるようになった
© DMM.com Runbookの活用 New RelicのアラートメッセージにRunbookのリンクを付与することで アラート発生時に迅速に対応できるようになった ❏ 初動で「何をすればいいのか?」という心理的な不安も軽減された [Runbook]バッチの開始ログがない インシデント発生時の対応手順
• 状況確認のための手順(リカバリ対応要否の判断) • リカバリ対応手順 • その他処理への影響有無の確認手順
© DMM.com 想定していた効果と副次効果 想定していた効果 ❏ ツールの集約や設定のセルフコントロールなどによる運用の最適化 ❏ New Relicを使うことでより細かくシステムの状態が見られる 副次効果
❏ 日々の変化に気づけるようになり、障害の未然防止に寄与 ❏ 異常が発生したときに、速やかな初動対応ができる ❏ より開発に集中できるようになった 今日も 健康ですね おや? 熱がありますね 早期発見できた のですぐに対処す れば大丈夫 今日も元気に 活躍できるぞ
© DMM.com 想定していた効果と副次効果 障害件数の大幅な減少 ❏ レガシー脱却を行なった直後の2020年と2023年を比較すると 障害件数が 約73%削減 ❏ 障害の未然防止や、開発に集中できることによる開発品質の
向上などが障害件数削減に繋がったのではと推測される 障害未然防止/ または迅速な対応 開発に集中 品質の向上 障害発生の低減
© DMM.com まとめ New Relicを活用して既存の監視運用を改善することができた 当初想定していた以上に、開発に集中できる環境を整えることができた ❏ それによって障害件数の削減にも寄与できた + 開発生産性の向上
障害件数の削減
© DMM.com 今後の展望 New Relicを導入、活用していく取り組みは支援先では当たり前に なってきている さらに進んだ取り組みとして、New Relicも活用しながら SLO(Service Level
Objective)を全社的に導入していく取り組みを 進めている 開発に注力できる環境を整えるだけでなく、SLOを導入していくことで ユーザーの満足にも貢献できるようなサービスを、事業部と一緒に 実現していきたい
© DMM.com ご清聴ありがとうございました