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
第129回 雲勉【オンライン】AWS Healthを活用してAWSアカウントの運用をしよう
Search
iret.kumoben
March 07, 2024
Technology
1
390
第129回 雲勉【オンライン】AWS Healthを活用してAWSアカウントの運用をしよう
下記、勉強会での資料です。
https://youtu.be/bAEUmlZKc3A
iret.kumoben
March 07, 2024
Tweet
Share
More Decks by iret.kumoben
See All by iret.kumoben
第155回 雲勉 サーバレスアーキテクチャを 用いたコスト重視 AI サービス
iret
0
36
第154回 雲勉 AWS Codeシリーズ盛り上げ隊 ~ Codeシリーズは砕けない ~
iret
0
38
第153回 雲勉 トラシューが秒で終わる新機能 Amazon Q Developer operational investigations
iret
0
52
第150回 雲勉 AWS AppSyncではじめるGraphQL体験
iret
0
44
第151回 雲勉 プロジェクトのドキュメントにおける課題をAmazon Bedrockで解決してみる
iret
0
61
第152回 雲勉 シームレスなマルチリージョンへの移行と検討 ~Amazon EKSとAWS Global Acceleratorを使用した環境〜
iret
0
57
第149回 雲勉 AWS ベストプラクティスの最新と実際 AWS Well-Architected
iret
0
88
第148回 雲勉 Web アプリケーションセキュリティ
iret
0
52
第147回 雲勉 Amazon CloudWatchをウォッチ!
iret
0
66
Other Decks in Technology
See All in Technology
組織におけるCCoEの役割とAWS活用事例
nrinetcom
PRO
4
120
実は強い 非ViTな画像認識モデル
tattaka
2
1.2k
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
8
3.5k
サイト信頼性エンジニアリングとAmazon Web Services / SRE and AWS
ymotongpoo
7
1.4k
クラウドサービス事業者におけるOSS
tagomoris
4
1k
Autonomous Database Serverless 技術詳細 / adb-s_technical_detail_jp
oracle4engineer
PRO
17
45k
Raycast Favorites × Script Command で実現するお手軽情報チェック
smasato
1
140
Potential EM 制度を始めた理由、そして2年後にやめた理由 - EMConf JP 2025
hoyo
2
2.5k
Visualize, Visualize, Visualize and rclone
tomoaki0705
9
81k
AIエージェント時代のエンジニアになろう #jawsug #jawsdays2025 / 20250301 Agentic AI Engineering
yoshidashingo
8
3.4k
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
8
2.1k
「正しく」失敗できる チームの作り方 〜リアルな事例から紐解く失敗を恐れない組織とは〜 / A team that can fail correctly
i35_267
4
840
Featured
See All Featured
Bash Introduction
62gerente
611
210k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.3k
Building Applications with DynamoDB
mza
93
6.2k
Faster Mobile Websites
deanohume
306
31k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
RailsConf 2023
tenderlove
29
1k
Into the Great Unknown - MozCon
thekraken
35
1.6k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Statistics for Hackers
jakevdp
797
220k
The Invisible Side of Design
smashingmag
299
50k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Transcript
AWS Healthを活⽤して AWSアカウントの運⽤をしよう 第129回 雲勉【オンライン】
0.講師⾃⼰紹介 2 n まつなが まき • クラウドインテグレーション事業部 MSP開発セクション所属 • アイレット4年⽬
• アイレット歴 = クラウド歴 • 花粉症がつらいこの頃
アジェンダ 3 1. AWSアカウントの運⽤で気にすべきこと 2. AWS Healthについて 3. AWS Healthの確認⽅法
4. AWS Healthの活⽤例 5. まとめ
本⽇のゴール 4 n AWS Health • どんなものか知る • ダッシュボードでの⾒⽅を知る •
運⽤例を知る
1. AWSアカウントの運⽤で気にすべきこと 5
1.AWSアカウントの運⽤で気にすべきこと 6 n AWSアカウントでサービスを構築すると定期的なメンテナンスや障害対応が必要 運⽤・保守 メンテナンス対応 障害影響 EOL対応 インスタンス再起動 レイテンシー増加
リージョン障害 ΞΧϯτཧऀ など など
1.AWSアカウントの運⽤で気にすべきこと 7 n AWSアカウントのメンテナンスや障害の情報はどうやって取得する︖ 「AWS Health イベント」としてAWSから通知される
2. AWS Health について 8
2.AWS Health について 9 n AWS Health とは︖ • AWSアカウントに影響のある障害や情報をお知らせしてくれるサービス(仕組み)のこと
• AWS Health が各AWS サービスの代わりにまとめてお知らせを通知してくれる • AWS Healthから通知されるお知らせを AWS Health イベントという AWS Health AWSの各サービス 様々な通知(AWS Health イベント)を集約
2.AWS Health について 10 n AWS Health イベントの種類 種類 説明
パブリックイベント (Service Health) AWSアカウント固有でないサービスイベント、サービス状況に関するもの サインイン不要、AWS アカウント不要で確認できるイベント https://health.aws.amazon.com/health/status 例)AWSリージョン障害のイベント アカウント固有のイベント (Your Account) AWS アカウントに固有のイベント 例)使⽤中のインスタンスの問題のイベント
3. AWS Health の確認⽅法 11
3.AWS Health の確認⽅法 12 n AWS Health イベントを確認する⽅法 No ⽅法
説明 1 AWS Health Dashboard 全てのAWSサービスの状態と発⽣イベントを確認できる 2 AWS Health API AWS Health Dashboardで表⽰している情報をAPIで取得 できる ⚠ いずれも90⽇前までのイベントが⾒られる ⚠ AWS Health APIはAWS ビジネス、AWS Enterprise On-Ramp、AWS エンタープライズサポートで利⽤可能 https://aws.amazon.com/jp/premiumsupport/faqs/ - Q: プログラムで AWS Health にアクセスできますか?
3. AWS Health 確認⽅法 ①AWS Health Dashboard 13
14 n AWS Health Dashboard • AWS Health イベントの通知をリアルタイムで集約したダッシュボードを 提供するAWSのサービス
AWS Health Dashboard AWSの各サービス アカウント管理者 様々な通知 サービスの状態 確認 3.AWS Health の確認⽅法 ①AWS Health Dashboard
3.AWS Health の確認⽅法 ①AWS Health Dashboard 15 n マネージメントコンソール画⾯ ログイン
> AWS Health Dashboard
3.AWS Health の確認⽅法 ①AWS Health Dashboard 16 n AWS Health
イベントの種類 ダッシュボードでは以下のいずれのイベントも確認可能 種類 説明 パブリックイベント (Service Health) AWSアカウント固有でないサービスイベント、サービス状況に関するもの サインイン不要、AWS アカウント不要で確認できるイベント https://health.aws.amazon.com/health/status 例)AWSリージョン障害のイベント アカウント固有のイベント (Your Account) AWS アカウントに固有のイベント 例)使⽤中のインスタンスの問題のイベント
3.AWS Health の確認⽅法 ①AWS Health Dashboard 17 n パブリックイベントの確認 サービスの状態(Service
Health)タブを⾒る
3.AWS Health の確認⽅法 ①AWS Health Dashboard 18 n パブリックイベントの確認 発⽣中の問題(障害など)があると、「未解決の問題」にイベントが表⽰される
3.AWS Health の確認⽅法 ①AWS Health Dashboard 19 n パブリックイベントの確認 ステータス履歴でサービスの稼働状況や過去発⽣したパブリックイベントがわかる
3.AWS Health の確認⽅法 ①AWS Health Dashboard 20 n アカウント固有のイベントの確認 アカウントの状態(Your
Account)タブを⾒る ※サインインが必要
3.AWS Health の確認⽅法 ①AWS Health Dashboard 21 n アカウント固有のイベントの確認 過去7⽇間に発⽣した問題は「未解決の問題と最近の問題」に表⽰される
グローバルサービスなので、全リージョンの問題を確認できる
3.AWS Health の確認⽅法 ①AWS Health Dashboard 22 n アカウント固有のイベントの確認 過去のイベントは、イベントログで確認
90⽇前のものまで管理されています
3.AWS Health の確認⽅法 ①AWS Health Dashboard 23 n アカウント固有のイベントの確認 影響を受けるリソース
に記載があるのが、 アカウント固有のイベント その他は パブリックイベント (どちらも表⽰される) アカウント固有の イベント
3.AWS Health の確認⽅法 ①AWS Health Dashboard 24 n アカウント固有のイベントの確認 イベントのカテゴリには「問題」「予定された変更」「その他の通知」がある
3.AWS Health の確認⽅法 ①AWS Health Dashboard 25 n イベントのカテゴリ 種類
説明 問題 サービスやリージョンの障害に関するイベント 例) エラーの増加 予定された変更 計画されたライフサイクルイベントについてのイベント 例) Lambdaランタイムのサポート終了 MySQL エンジンバージョンのサポート終了 RDS 認証局証明書の有効期限満了 その他の通知 上記以外のイベント 例)変更リリースの通知
3.AWS Health の確認⽅法 ①AWS Health Dashboard 26 n アカウント固有のイベントの確認 リージョン/ゾーンが「-」のものはグローバルサービスに関するイベント
3.AWS Health の確認⽅法 ①AWS Health Dashboard 27 n アカウント固有のイベントの確認 イベントをクリックで詳細が⾒れる(パブリックイベントはサービスの状態で同じ内容が⾒れる)
3.AWS Health の確認⽅法 ①AWS Health Dashboard 28 n アカウント固有のイベントの確認 「影響を受けるリソース」でアカウント内の影響を受けるリソースがわかる
3. AWS Health 確認⽅法 ②AWS Health API 29
3.AWS Health の確認⽅法 ②AWS Health API 30 n AWS Health
APIとは • AWS Health Dashboard に表⽰される情報に、プログラムを使⽤して アクセスできる • 特定のサービス、イベントタイプのカテゴリ、イベントタイプのコード でイベントをフィルタリングできる • APIのエンドポイントは「us-east-1」と「us-east-2」 https://docs.aws.amazon.com/ja_jp/health/latest/ug/health-api.html#endpoints
3.AWS Health の確認⽅法 ②AWS Health API 31 n DescribeEventsでイベント⼀覧を取得 aws
health describe-events --region us-east-1
3.AWS Health の確認⽅法 ②AWS Health API 32 { "events": [
:...skipping... { "arn": "arn:aws:health:ap-northeast-1::event/BILLING/AWS_BILLING_NOTIFICATION/AWS_BILLING_NOTIFICATION_.....", "service": "BILLING", "eventTypeCode": "AWS_BILLING_NOTIFICATION", "eventTypeCategory": "accountNotification", "region": "ap-northeast-1", "startTime": "2024-01-06T22:05:00+09:00", "lastUpdatedTime": "2024-01-06T23:12:51.263000+09:00", "statusCode": "open", "eventScopeCode": "ACCOUNT_SPECIFIC" }, :...skipping... ] } n アカウント固有イベントの場合
3.AWS Health の確認⽅法 ②AWS Health API 33 { "events": [
:...skipping... { "arn": "arn:aws:health:us-west-2::event/DYNAMODB/AWS_DYNAMODB_OPERATIONAL_ISSUE/AWS_DYNAMODB_OPERATIONAL_ISSUE_...", "service": "DYNAMODB", "eventTypeCode": "AWS_DYNAMODB_OPERATIONAL_ISSUE", "eventTypeCategory": "issue", "region": "us-west-2", "startTime": "2023-12-10T12:17:00+09:00", "endTime": "2023-12-10T13:31:30+09:00", "lastUpdatedTime": "2023-12-10T13:31:30.005000+09:00", "statusCode": "closed", "eventScopeCode": "PUBLIC" } :...skipping... ] } n パブリックイベントの場合
3.AWS Health の確認⽅法 ②AWS Health API 34 n DescribeEventDetailsでイベントの詳細を取得 aws
health describe-event-details --region us-east-1 --event-arns “{イベントのarnを指定}"
3.AWS Health の確認⽅法 ②AWS Health API 35 { "successfulSet": [
{ "event": { "arn": "arn:aws:health:us-west-2::event/DYNAMODB/AWS_DYNAMODB_OPERATIONAL_ISSUE/AWS_DYNAMODB_OPERATIONAL_ISSUE_...", "service": "DYNAMODB", "eventTypeCode": "AWS_DYNAMODB_OPERATIONAL_ISSUE", "eventTypeCategory": "issue", "region": "us-west-2", "startTime": "2023-12-10T12:17:00+09:00", "endTime": "2023-12-10T13:31:30+09:00", "lastUpdatedTime": "2023-12-10T13:31:30.005000+09:00", "statusCode": "closed", "eventScopeCode": "PUBLIC" }, "eventDescription": { “latestDescription”: “Current severity level: Operating normally¥n¥n[RESOLVED] Increased Error Rates¥n¥n[08:29 PM PST] The issue has been resolved and the service is operating normally.¥n¥n[08:17 PM PST] Starting at 6:45 PM PST, DynamoDB experienced increased error rates and latencies for API requests in the US-WEST-2 Region. (ҎԼলུ)} } ], "failedSet": [] }
3.AWS Health の確認⽅法 ②AWS Health API 36 n オープンなアカウント固有イベントのみを取得 •
ステータスやリージョンは --filter を使⽤して絞ることができる • eventScopeCode はfilter条件に指定できないためjqコマンドを使⽤ aws health describe-events --region us-east-1 --filter "eventStatusCodes=open" | jq ' .events[] | select(.eventScopeCode == "ACCOUNT_SPECIFIC")' https://docs.aws.amazon.com/ja_jp/health/latest/ug/supported-operations.html
3.AWS Health の確認⽅法 ②AWS Health API 37 n オープンなパブリックイベントのみを取得 •
ステータスやリージョンは --filter を使⽤して絞ることができる • eventScopeCode はfilter条件に指定できないためjqコマンドを使⽤ aws health describe-events --region us-east-1 --filter "eventStatusCodes=open" | jq ' .events[] | select(.eventScopeCode == ”PUBLIC")' https://docs.aws.amazon.com/ja_jp/health/latest/ug/supported-operations.html
3.AWS Health の確認⽅法 ②AWS Health API 38 n AWS Health
API • DescribeEventTypes でイベントタイプ⼀覧を取得 aws health describe-event-types --region us-east-1 { "eventTypes": [ :...skipping... { "service": "ACM", "code": "AWS_ACM_API_ISSUE", "category": "issue" }, :...skipping... ] }
3.AWS Health の確認⽅法 ②AWS Health API 39 n イベントタイプ⼀覧 •
イベントに関する AWS のサービス、イベントタイプコード、カテゴリのテンプレート定義 • AWS Health でサポートされるイベントタイプコード、サービスは、時間とともに増える
3.AWS Health の確認⽅法 ②AWS Health API 40 n イベントタイプ⼀覧 以下の情報が取得できる
ɾΠϕϯτλΠϓίʔυͷҰཡ aws health describe-event-types --region us-east-1 | jq '[.eventTypes[].code] | unique’ → ͲͷΑ͏ͳΠϕϯτ͕औಘͰ͖Δͷ͔Ұཡ͕Θ͔Δ ɾαʔϏεͷҰཡ aws health describe-event-types --region us-east-1 | jq '[.eventTypes[].service] | unique’ → ͲͷαʔϏεͷΠϕϯτ͕औಘͰ͖Δͷ͔Ұཡ͕Θ͔Δ
3.AWS Health の確認⽅法 ②AWS Health API 41 n その他のAWS Health
API • DescribeAffectedEntities イベントの影響を受けるエンティティの情報を取得 • DescribeEventAggregates イベントタイプのカテゴリ別のイベント数を取得 • DescribeEntityAggregates イベントから影響を受けるエンティティ (リソース) の数を取得
4. AWS Healthの活⽤例 42
4.AWS Healthの活⽤例 43 n AWS Health を使⽤して新規イベントを検知したい ⽅法はいくつかある 例 ⽅法
例1 AWS Health Dashboardを定期的に⾒て新しいイベントを確認する 例2 AWS Health DashboardとEvent Bridgeを連携し、イベント発⽣時にSNSで通知 例3 (応⽤) AWS Organizationsと統合し、組織内のアカウントのイベントを1つの委任アカウント に集約させる。Event Bridgeを連携し、イベント発⽣時にSNSで通知
4.AWS Healthの活⽤例 44 n AWS Health を使⽤して新規イベントを検知する⽅法 例 ⽅法 例1
AWS Health Dashboardを定期的に⾒て新しいイベントを確認する • 最もお⼿軽な⽅法 • イベントが多くなると⼤変(頻度など) • 障害イベントにリアルタイムで対応できない
4.AWS Healthの活⽤例 45 n AWS Health を使⽤して新規イベントを検知する⽅法 例 ⽅法 例2
AWS Health DashboardとEvent Bridgeを連携し、イベント発⽣時にSNSで通知 Amazon EventBridge AWS Health Dashboard Amazon SNS AWS Chatbot https://docs.aws.amazon.com/ja_jp/health/latest/ug/cloudwatch-events-health.html
4.AWS Healthの活⽤例 46 n AWS Health を使⽤して新規イベントを検知する⽅法 例 ⽅法 例2
AWS Health DashboardとEvent Bridgeを連携し、イベント発⽣時にSNSで通知 • リアルタイムにイベントを検知できる • ルールの設定で検知するイベントをフィルタできる • パブリックイベントを検知するにはus-east-1でルールを作成する • アカウント固有イベントは、各リージョンごとにルールを作成する必要がある • 監視対象のアカウントが多くなると各アカウントの設定が必要
4.AWS Healthの活⽤例 47 n AWS Health を使⽤して新規イベントを検知する⽅法 例 ⽅法 例3(応⽤)
AWS Organizationと統合し、組織内のアカウントのイベントを1つの委任アカウント に集約させる。Event Bridgeを連携し、イベント発⽣時にSNSで通知。 + AWS Organizations有効化 組織メンバーアカウント 管理アカウント (委任アカウント) Amazon EventBridge Amazon SNS 集約
4.AWS Healthの活⽤例 48 n AWS Health を使⽤して新規イベントを検知する⽅法 例 ⽅法 例3(応⽤)
AWS Organizationsと統合し、組織内のアカウントのイベントを1つの委任アカウント に集約させる。 • Organizationsに紐づく全てのアカウントへのイベント情報を取得できる • ルールの設定で検知するイベントをフィルタできる • 組織全体のメンテナンスイベントを⼀括で管理できる • 組織内の全てのアカウントで組織ビューを有効化するなど事前設定は必要 https://docs.aws.amazon.com/ja_jp/health/latest/ug/enable-organizational-view-in-health-console.html
4.AWS Healthの活⽤例 49 n 新規イベントを検知した後はLambdaやSQSを使⽤して⾃動化も可能 例 ⽅法 例2 AWS Health
DashboardとEvent Bridgeを連携し、イベント発⽣時にSNSで通知 例3 (応⽤) AWS Organizationと統合し、Health APIを使⽤して新規イベントを定期的に取得する Amazon EventBridge AWS Health AWS Lambda 検知 Amazon EC2 Amazon RDS イベント毎のアクション イベントソース
4.AWS Healthの活⽤例 50 n 社内事例の紹介 • Health APIを使⽤して、複数アカウント(※)の新規イベントを定期的に取得して通知する (※)同じ組織に所属していないためAWS Organizations統合ができない
+ AWS Health APIを利⽤ AWS Lambda 対象アカウント AWS STS 実⾏アカウント イベント取得(定期実⾏) 通知
4.活⽤例 51 n 社内事例として公開しています • AWS Healthのイベント情報を⼀元管理するダッシュボードを作成し、作業効率を⼤幅改善︕ イベント情報管理システムの構築 https://www.iret.co.jp/works/116.html
4.AWS Healthの活⽤例 52 n Health APIを使ってみて良かった点 • 全リージョンのイベントを取得可能 • パブリックイベントも取得可能
• APIの引数パラメータを使⽤して取得対象のイベントを絞れる
5. まとめ 53
5.まとめ 54 n AWS Health • どんなものか知る → 各AWS サービスからの通知イベント
• ダッシュボードでの⾒⽅を知る → ダッシュボードやAPIを活⽤ • 運⽤例を知る → EventBridgeを使⽤してリアルタイム通知しイベント毎のアクション実⾏ → APIの活⽤