MEGAZONEブログ

ChatOpsを使用して最新のワークロードのインシデント管理を自動化する
Automate incident management of modern workloads using ChatOps
Pulisher : Enterprise Managed Service Group ミン・ジホ
Description : AWS ChatbotやAWS Systems ManagerなどのAWSサービスとMicrosoft TeamsやSlackなどのコラボレーションプラットフォームを使用してChatOpsを実装する方法についての紹介セッション。
はじめに
管理ポイントなどを減らし、ガバナンスまで自動で合わせてくれる事例を体験してみたい、EMSメッセンジャーであるSlackの活用方法についてアイデアを得たいと思い、このセッションを申し込みました。
Builder’s Sessionを通じてAmazonのエンジニアと一緒にAWS Chatbotの構築を一緒に進めたいと思いました。
セッションの概略紹介
問題を解決し、ダウンタイムを最小限に抑え、インシデント対応を改善するためには、迅速かつ効率的に対応することが重要です。このビルダーセッションでは、AWS ChatbotやAWS Systems ManagerなどのAWSサービスと、Microsoft TeamsやSlackなどの一般的なコミュニケーションおよびコラボレーションプラットフォームを使用してChatOpsを実装する方法をご紹介します。最新のワークロードの運用問題を診断し、解決するのに役立つチャットベースの運用ワークフローを実装する方法もご案内します。

Cloud operationsに関する3つの項目に関するリソースは下記の通りです。
●DETECT/NOTIFY関連リソース
・Amazon CloudWatch
・AWS Config
・Amazon Simple Notification Service (Amazon SNS)
・Amazon EventBridge AWS Chatbot
●INVESTIGATE関連リソース
・AWS System Manager
・AWS Chatbot
●REMEDIATE関連リソース
・AWS System Manager
・AWS Chatbot

AWS Chatbot Clientで3つをサポートします。自社で使用するメッセンジャーを基準に、選定して使用することができ、連動テスト方法は下記の通りです。
1.テストメッセージ送信

2.テストメッセージの確認


AWS Chatbotと連動する各分野別のリソースです。
分野別によく使うAWSリソースを連動してコマンドを実行し、モニタリング、診断するテストをしてみると役に立つと思います。
- DEVELOPERS
a.Amazon EventBridge
b.AWS CodeBuild
c.AWS CodeCommit
d.AWS CodePipeline - DEVOPS
a.Amazon CloudWatch
b.AWS CloudFormation
c.AWS Health - ADMINS & ARCHITECTURES
a.AWS Billing and Cost Management
b.AWS Cost Anomaly Detection
c.AWS Config - SECURITY / INCIDENTS
a.AWS GuardDuty
b.AWS Security Hub
c.AWS Systems Manager Incident Manager

AWS Chatbotを使う理由は以下の通りです。
1.使いやすい
2.可視性と制御の向上(ex、チャットルーム内のアラーム確認)
3.問題解決時間の短縮(ex、チャットルームでボタンをクリックするとStatus Check Failedインスタンスを再起動)
4.セキュリティとコンプライアンスを維持(ex、チャット構成権限をIAM Roleで定義して、悪質な動作をブロック)

CloudWatchs, Budgets, Eventbridge, Security Hub, AWS CodeSeriesで発生するイベントをSNSに配信し、SNSに接続されたAWS Chatbotと連動して
イベントをSNSに伝達し、SNSに繋がっているAWS Chatbotと連動して、Teams、slackにメッセージアラームが送られます。AWS EventBridgeリソースでルール設定を通じて
AWSのイベントをフィルタリングすることができるので、全てのイベントをTeams, slackに送ることができると思います。



Microsoft TeamsでAWS Chatbotを通じて、AWS APIを実行させることができます。
一例として、Teamsの「aws chatbot」はボタン型AWS CLIの作成をサポートしています。
これにより、SSM documentを実行させ、ECS Taskの再起動など様々な動作を要求することができます。
活用案としては、AWS PHD発生時、複数の顧客にメール送信するボタンを押して、運営担当者の負荷を軽減するアイデアがあります。
セッションを終えて
セッション申込の目的に最適なセッションでした。
AWS Chatbotの説明と、AWS Chatbotの活用方法、AWS Chatbotの構成までやってみることで、AWS Chatbotリソースの活用の出発点となるセッションで、AWS ChatbotがSNSやEventbridgeと連動するという点で、活用方法は無限大と思われます。
まず、EC2 Health Check Failedなど、エンジニアがConsoleに接続して再起動する必要があることをAWS Chatbotを連動させて、ボタンをクリックすることでEC2がSSMを通じて自動再起動するようにするアイデアがあると思います。
この記事の読者はこんな記事も読んでいます
-
Compute re:Invent 2023Apple on AWS: Managing dev environments on Amazon EC2 Mac instances(Apple on AWS:Amazon EC2 Macインスタンスで開発環境を管理する)
-
Compute re:Invent 2023Optimizing for cost and performance with AWS App Runner(AWS App Runnerによるコストとパフォーマンスの最適化)
-
Partner Enablement re:Invent 2023Migration and modernization: Become your customer’s strategic partner