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
Incident Managerでインシデント発生時のエスカレーションを自動化する
Search
taiko19xx
June 14, 2022
Technology
0
190
Incident Managerでインシデント発生時のエスカレーションを自動化する
taiko19xx
June 14, 2022
Tweet
Share
More Decks by taiko19xx
See All by taiko19xx
Bedrockで遊ぼう! 短期間で色々開発してみた
taiko19xx
1
92
LambdaカスタムランタイムでPHPでもサーバーレス!
taiko19xx
0
69
IoTっぽいアプリをk3s+Raspberry Piで実行する
taiko19xx
0
280
ハニーポットから見たWebサーバへの攻撃
taiko19xx
0
2.7k
PHPなプロダクトをAmazon ECSで開発運用してる話
taiko19xx
0
1.1k
RaspberryPi+AWSでIoT(っぽ い)GPSロガーを作ってみた
taiko19xx
0
1.4k
PHPからWin32APIをいじってみた
taiko19xx
0
1.6k
Other Decks in Technology
See All in Technology
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
690
New Relicを活用したSREの最初のステップ / NRUG OKINAWA VOL.3
isaoshimizu
3
630
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.7k
Amplify Gen2 Deep Dive / バックエンドの型をいかにしてフロントエンドへ伝えるか #TSKaigi #TSKaigiKansai #AWSAmplifyJP
tacck
PRO
0
390
障害対応指揮の意思決定と情報共有における価値観 / Waroom Meetup #2
arthur1
5
480
誰も全体を知らない ~ ロールの垣根を超えて引き上げる開発生産性 / Boosting Development Productivity Across Roles
kakehashi
1
230
心が動くエンジニアリング ── 私が夢中になる理由
16bitidol
0
100
Exadata Database Service on Dedicated Infrastructure(ExaDB-D) UI スクリーン・キャプチャ集
oracle4engineer
PRO
2
3.2k
The Role of Developer Relations in AI Product Success.
giftojabu1
0
130
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
760
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
950
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
110
Featured
See All Featured
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Producing Creativity
orderedlist
PRO
341
39k
Making the Leap to Tech Lead
cromwellryan
133
8.9k
KATA
mclloyd
29
14k
We Have a Design System, Now What?
morganepeng
50
7.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Why Our Code Smells
bkeepers
PRO
334
57k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Six Lessons from altMBA
skipperchong
27
3.5k
Transcript
JAWS-UG GameTech #1 2022/06/14 木村俊彦 / 株式会社インフィニットループ Incident Managerで インシデント発生時の
エスカレーションを自動化する
• Incident Managerをエスカレーション目的で利用・運用しています • 導入に至った経緯 • 検証してわかったこと • 等々お話します 本日の内容
• 導入の経緯 • 実際に構築 • 運用前検証 • まとめ 目次
導入の経緯
• 新規構築時にエスカレーションの管理について検討 • 「連絡がつかない場合」のエスカレーションをどうするか ◦ 特に休日や夜中など • 可能な限りAWS内で完結できないか検討 経緯
None
• 本来はコンタクトセンターの構築運用向け • 「問い合わせフロー」と、それを起動するLambdaの組み合わせで検討 • 電話番号の利用料+発信料金と料金もシンプル • 日本の携帯電話番号(090/080/070)への発信は制限解除申請が必要 Amazon Connect
フローやLambdaを構築し検証
しかし...
• エスカレーションの各種管理をどうするかの設計が必要 ◦ 順番、発信済みかどうかの管理、受諾したかどうかのチェック • 電話番号どこに保持するかの検討が必要 ◦ メンバーの入れ替え時に番号も入れ替えが必要 • 管理するリソースが多いのではないかという疑問
◦ フロー、Lambda、それら付随する様々 ◦ 特にLambdaはメンテナンス性を考慮する必要がある 検証してわかったこと
None
• 正確には AWS Systems Manager Incident Manager ◦ Systems Manager内のサービス
• インシデントの起票や管理、呼び出し(エスカレーション)を行ってくれる サービス ◦ CloudWatch Alermと組み合わせれば自動化できる • SlackやAmazon Chimeとも連動 • 対応プランの数に応じて課金 ◦ インシデント起票時のテンプレートのようなもの Incident Manager
None
• エスカレーション開始時に、「誰に」「どの方法で」「どの間隔で」通知する か設定できる • 通知先はメール・SMS・通話 • 間隔やトータルの実行時間、件数はクォータの範囲内で設定 エスカレーションプラン
None
これで行こう!
構築する
初期の構成
• アラートはIncident ManagerとSlackへ送信 ◦ 回復通知はSlackのみ • 事前設定した対応プランに沿ってインシデントが開始 • 対応プランに紐付けられた設定でエスカレーションも開始 シンプルに設計
そんなある日
レベルによって調整したい + 別システムにも通知してほしい
None
• 基本的な構図は変わらず • Alertからの橋渡しはEventBridge • 1つめのLambdaはレベルの切り分け ◦ EventBridgeから渡されたデータに基づいて判定 ◦ それを元に対応プランとエンゲージメントを起動
• 2つめのLambdaは別システムへの通知 要望に合わせて改良
結局複雑なのでは...
• それぞれの処理はシンプル ◦ メインロジックは30行以内 • 用途は異なるので、1つで済ませず、別々に構築 Lambdaはシンプルに
• アラームとLambdaをルールで紐付けるのみ • 入力トランスフォーマーでレベルを付与 EventBridgeもシンプルに
いざ検証
• Incident Managerからの通話は英語 • アクティベーションの確認番号は聞き取れる • エスカレーション時の通話が辛い... ◦ とにかく早口で長い ◦
通話中に「1」を押すと確認済みになり、「9」を押してしまうとリストから 外されてしまう ◦ 周知することで対処 通話が英語
• もしくは非通知、番号は変わる場合もある • いたずら電話と思われたり、拒否設定にしていると届かない可能性がある ◦ 許容できない場合は、Amazon Connectが選択肢になる • あらかじめ周知して対策 ◦
最悪取らなくてもチャットは見てほしい 電話の発信元がアメリカ
None
• いきなり電話は考え物 • 呼び出し時は最初メールで通知 ◦ エンゲージメントを承認するコードが記載されている • それにも気づかれていないようであれば電話というフロー ◦ 間隔は10分~15分後
順番を考慮する
None
• こだわりが少なければシンプルな構成 ◦ 既存のアラートに埋め込める ◦ こだわっても何とかなるはず • 英語という壁こそありますが、乗り越えられれば最有力? • 一連のフローについては定期的に訓練という形で検証を行い、問題ない
ことを確認する予定 ◦ 肝心な時に動かないのでは意味がない • ぜひ検証からはじめてみてはいかがでしょうか まとめ
• 木村俊彦 / @taiko19xx • 株式会社インフィニットループ • 主な業務 ◦ バックエンド構築(PHP/C#)
/ インフラ構築(AWS) • 好きなゲーム ◦ Civilization / Age of Empires / Rize of Nations etc… • 好きなAWSのサービス ◦ LambdaとDynamoDB 自己紹介
ありがとうございました