ホームページ > ウェブフロントエンド > jsチュートリアル > AWS インシデント管理をマスターする: Systems Manager Incident Manager による対応の自動化

AWS インシデント管理をマスターする: Systems Manager Incident Manager による対応の自動化

Linda Hamilton
リリース: 2025-01-04 02:30:38
オリジナル
575 人が閲覧しました

概要

AWS Lambda でエラー率の増加に対処する場合、エラーを分類し、エスカレーション パスを定義することが重要です。このガイドでは、AWS Systems Manager Incident Manager を使用して、インシデントを効果的に自動的に処理およびエスカレーションする方法を説明します。このワークフローには、Runbook を使用してエラーの詳細を収集し、Amazon SNS を通じて関係者に通知することが含まれます。

AWS Systems Manager Incident Manager を使用する理由?

AWS Systems Manager Incident Manager は、AWS 環境内でのインシデント対応の一元管理を提供します。主な利点は次のとおりです:

  1. ネイティブ AWS 統合: Amazon CloudWatch、AWS Lambda、Amazon EventBridge などのサービスとシームレスに統合します。

  2. Runbook Automation: 自動または半自動のワークフローを促進して、インシデントのトラブルシューティングと対処を行います。

  3. マルチチャネル通知: Amazon SNS、Slack、Amazon Chime 経由の通知をサポートします。

  4. コスト効率: 中小規模の環境向けの商用ソリューションの実行可能な代替手段。

制限事項

詳細なレポート、複雑なチーム階層、多層エスカレーション フローを必要とする大規模組織の場合は、PagerDuty や ServiceNow などの特殊なツールの方が適切な場合があります。

アーキテクチャの概要

このアーキテクチャでは、CloudWatch アラームを使用して AWS Lambda 関数のエラーを監視します。 Incident Manager は、インシデントを自動的に作成し、エラー処理と通知のための Runbook を実行します。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

エラーのシナリオ

  • エラー A: 電子メール通知による標準インシデント。

  • エラー B: SMS 通知とエスカレーションが必要な重大なインシデントです。

CloudWatch アラームは、これらのエラー タイプを区別し、それに応じて特定のインシデント対応をトリガーするように構成されています。


段階的な構成

ステップ 1: Lambda エラー用の CloudWatch アラームを作成する

ラムダ関数の例:

import logging

logger = logging.getLogger()
logger.setLevel(logging.INFO)

def lambda_handler(event, context):
    error_type = event.get("errorType")

    try:
        if error_type == "A":
            logger.error("Error A: A standard exception occurred.")
            raise Exception("Error A occurred")
        elif error_type == "B":
            logger.error("Error B: A critical runtime error occurred.")
            raise RuntimeError("Critical Error B occurred")
        else:
            logger.info("No error triggered.")
            return {"statusCode": 200, "body": "Success"}
    except Exception as e:
        logger.exception("An error occurred: %s", e)
        raise
ログイン後にコピー
ログイン後にコピー

CloudWatch メトリクスとアラームを構成します。

  1. メトリクス フィルター: エラー A とエラー B のフィルターを作成します。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

  1. アラーム: これらのフィルターを、適切なしきい値と期間を持つアラームにリンクします。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

  1. アラーム アクション: インシデント マネージャー ワークフローを開始するトリガーを設定します。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

ステップ 2: インシデント マネージャーをセットアップする

  1. インシデントマネージャーを有効にする:
import logging

logger = logging.getLogger()
logger.setLevel(logging.INFO)

def lambda_handler(event, context):
    error_type = event.get("errorType")

    try:
        if error_type == "A":
            logger.error("Error A: A standard exception occurred.")
            raise Exception("Error A occurred")
        elif error_type == "B":
            logger.error("Error B: A critical runtime error occurred.")
            raise RuntimeError("Critical Error B occurred")
        else:
            logger.info("No error triggered.")
            return {"statusCode": 200, "body": "Success"}
    except Exception as e:
        logger.exception("An error occurred: %s", e)
        raise
ログイン後にコピー
ログイン後にコピー

ステップ 3: 通知連絡先を構成する

  • メール: 管理者にエラー A を通知します。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

  • SMS: エラー B エスカレーションについて関係者に通知します。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

ステップ 4: エスカレーション計画を定義する

  • エラー A: 未解決の場合は電子メール通知に続いて SMS が送信されます。

  • エラー B: 即時 SMS 通知。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

ステップ 5: ランブックを作成する

ランブック テンプレート:

- Navigate to the Incident Manager settings in the AWS Management Console and onboard your account.
ログイン後にコピー

ステップ 6: 対応計画の作成

  • エラー A とエラー B に対して個別の対応計画を定義します。

  • Runbook と通知チャネルを各対応計画にリンクします。

ステップ 7: CloudWatch アラームをインシデントマネージャーにリンクする

  • アラーム アクションを編集して、対応するインシデント マネージャーの対応計画をトリガーします。

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

デモ

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

Mastering AWS Incident Management: Automating Responses with Systems Manager Incident Manager

商用ツールの比較

Feature AWS Incident Manager PagerDuty ServiceNow
Cost Efficiency High Medium Low
AWS Integration Seamless Limited Limited
Escalation Flexibility Moderate High High
Reporting and Analytics Basic Advanced Advanced

AWS Incident Manager の理想的な使用例:

  • AWS 中心のアーキテクチャを備えた小規模から中規模の環境。

  • 簡単なエスカレーションと通知が必要です。

  • コスト重視の展開


結論

AWS Systems Manager Incident Manager は、AWS 中心の環境におけるインシデント対応のためのコスト効率の高いツールです。商用ソリューションの高度な機能がいくつか欠けていますが、AWS サービスとの堅牢な統合と、多くのユースケースに十分な機能を提供します。セットアップが簡単でコストが低いため、小規模から中規模の運用にとって魅力的な選択肢となります。


参考文献

  • AWS Systems Manager インシデントマネージャー

  • AWS Lambda モニタリング

  • Amazon CloudWatch アラーム

  • PagerDuty

  • ServiceNow

以上がAWS インシデント管理をマスターする: Systems Manager Incident Manager による対応の自動化の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート