Slide 1

Slide 1 text

オブザーバビリティ勉強会で模 擬障害対応をやってみた レバテック開発部DevOps推進グ ループSREチーム 蒲生廣人

Slide 2

Slide 2 text

| © Leverages inc. 2 ● 所属 ○ レバテック開発部DevOps推進グループSREチーム ● サービス ○ レバテック ■ エンジニアの転職支援、新卒支援 ■ フリーランスエンジニアの案件支援 ● 趣味 ○ フットサル、ずっと真夜中でいいのに ● 好きな言葉 ○ 「推測するな、計測せよ」 ○ 「一行のログの先には、一人のユーザーがいる」 自己紹介 Introduction

Slide 3

Slide 3 text

| © Leverages inc. 3 ● オブザーバビリティ導入へのハードル ● 模擬障害対応やってみた ● 模擬障害対応の効果 ● まとめ アジェンダ INDEX

Slide 4

Slide 4 text

オブザーバビリティ導入までのハードル

Slide 5

Slide 5 text

| © Leverages inc. 5 ※ツールの選定や導入決定に至るまでの経緯は端折ります🙏 ● オブザーバビリティの解像度 ○ モニタリングとどう違うの ○ それまでのモニタリング体制文化からの変容 ■ インフラのメトリクス、ログ中心の監視設定からユーザー体験重視のプラクティスへ ● ツール移行 ○ 監視設定などの移行コスト ○ 運用自体の移行コスト 導入当初のハードル オブザーバビリティ導入までのハードル

Slide 6

Slide 6 text

| © Leverages inc. 6 ● オブザーバビリティ勉強会 ○ オブザーバビリティの考えや概念について学んでもらう ● ツールハンズオン ○ 導入したオブザーバビリティツール(NewRelic)の操作を一通り行うことで、ツールを開発チー ムで触れるようにする ● アラート勉強会 ○ ユーザー視点でのアラートをどう設定していくのか ○ NewRelicのアラート設定ハンズオン ● NewRelicアラートのTerraformライブラリ作成 ● NewRelic合宿 ○ GWの中日にあった平日3日間で、出勤している開発部メンバーでアラートの移行作業を行う ○ その間SREチームががっつりサポート ハードルを超えるための取り組み オブザーバビリティ導入までのハードル

Slide 7

Slide 7 text

| © Leverages inc. 7 ● 具体的な普段の運用方法の解像度が上がりきらない ○ APMなど新しい機能をどう運用にのせていくか ● いざ障害が発生した際に使いこなせるかわからない ○ ツールを使ったトラブルシューティング経験がないので、インシデント時の対応に不安が残る 解決しきれない課題 オブザーバビリティ導入までのハードル

Slide 8

Slide 8 text

模擬障害対応やってみよう

Slide 9

Slide 9 text

| © Leverages inc. 9 ● 具体的な普段の運用方法の解像度が上がりきらない ○ 実際に運用しているサービスのテレメトリをツールで見れる状態にして 開発者が分析できる状態を作る ● いざ障害が発生した際に使いこなせるかわからない ○ 実際に障害を起こしてみて、導入したツールを使って何ができるか、トラブルシューティングをど うやっていくのか、を体験させてみる どうしてやるの 模擬障害対応やってみよう

Slide 10

Slide 10 text

| © Leverages inc. 10 ● 対象 ○ NewRelicのライセンスを配った社員約30名ほど ● シナリオ選び ○ 実際に過去に起きたインシデントの中から、売上損失につながりやすいインシデントシナリオを3 つ用意 ● 環境 ○ 関係するサービスのSTG環境 ■ 開発者以外の社内の人が使っているケースがあるので事前に告知 ■ ゴミデータができるなど不可逆性の高いものは、模擬障害対応用のデータベースを作って そちらで実施 どうやったの 模擬障害対応やってみよう

Slide 11

Slide 11 text

| © Leverages inc. 11 どうやったの 模擬障害対応やってみよう NewRelicのワークロードという機能 を使って、関連するアプリケーションや リソースをひとまとめで管理。 障害発生時に、どこで問題が発生して いるか可視化してくれるようにした

Slide 12

Slide 12 text

| © Leverages inc. 12 どうやったの 模擬障害対応やってみよう フリーランスのエンジニアが案件を探すた めの案件検索画面のレイテンシをアラート に設定して、 中でゴニョゴニョしてレイテンシを悪化さ せた

Slide 13

Slide 13 text

模擬障害対応の効果

Slide 14

Slide 14 text

| © Leverages inc. 14 ● 具体的な普段の運用方法の解像度が上がりきらない ○ APMなど新しい機能をどう運用にのせていくか 運用のイメージの解像度UP 模擬障害対応の効果 ● 新しく使う機能でダッシュボードやアラートを作成し、それらを使って調査をしても らった ○ これの一個前の勉強会で、ダッシュボードとアラートの作成ハンズオンをやって いるので概念は分かってる ○ 自システムの設定例を見てもらうことで、自分たちで設定する時の参考にして もらった

Slide 15

Slide 15 text

| © Leverages inc. 15 ● いざ障害が発生した際に使いこなせるかわからない ○ ツールを使ったトラブルシューティング経験がないので、インシデント時の対応に不安が残る 障害発生時のトラブルシューティングの解像度UP 模擬障害対応の効果 ● 過去に起きた障害を、新しいツール(NewRelic)を使って調査してもらうことで 実際の障害対応に近い体験をしながらツールの扱いに慣れてもらった

Slide 16

Slide 16 text

まとめ

Slide 17

Slide 17 text

| © Leverages inc. 17 ● 障害対応をカジュアルな気持ちで体験できる ○ ISUCONに近いゲーム感覚があった ● 解決すべき問題に対して、ツールを駆使する体験ができる ○ ハンズオンだけだと具体的にツールを役立たせる、みたいなところまではできないけど 障害を解決するっていう問題に対して取り組ませるのは、また違う頭の使い方をするところがいい ● 出題者側はシステムの仕組みを理解するいい機会になる ○ 「こここうなってたのね!」とか「こうするとここが壊れるのね!」っていうアハ体験は楽しかった ○ でも準備は大変 模擬障害対応はいいぞ(準備は大変だけど) まとめ

Slide 18

Slide 18 text

| © Leverages inc. 18 ● Xアカウント:@gamonges_eng ● レバテック技術広報アカウント:@levtech_dev ● レバテック技術ブログ:Zenn NewRelicに移行した経緯が書いてあるADRをチームメンバーが公開してくれました!!🎉🎉🎉 蛇足