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
オンプレミス市監視村の人達と学ぶCloudWatch基礎
Search
Toru_Kubota
August 21, 2024
Technology
890
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
オンプレミス市監視村の人達と学ぶCloudWatch基礎
Toru_Kubota
August 21, 2024
More Decks by Toru_Kubota
See All by Toru_Kubota
AWSアップデートから考える継続的な運用改善
toru_kubota
2
410
AWS Systems Managerのハイブリッドアクティベーションを使用したガバメントクラウド環境の統合管理
toru_kubota
1
290
ガバメントクラウド運用改善からSaaS製品の開発へ
toru_kubota
0
77
生成AI活用によるガバメントクラウド運用管理補助業務の効率化
toru_kubota
0
59
「どこにある?」の解決。生成AI(RAG)で効率化するガバメントクラウド運用
toru_kubota
4
1.1k
いつも初心者向けの記事に助けられているので得意分野では初心者向けの記事を書きます
toru_kubota
2
660
AWSの利点
toru_kubota
0
280
AWSサービスメニュー開発をしていてAWSを好きだ!と感じた瞬間
toru_kubota
0
380
Security Hubのセキュリティスコアはどうやって計算されるか
toru_kubota
0
780
Other Decks in Technology
See All in Technology
小さくはじめるSLI/SLO ~育てながら組織に定着させる実践知~ / Starting Small with SLI/SLOs: Building Adoption Through Continuous Growth
nari_ex
7
1.8k
Socrates × Looker 〜セマンティックレイヤーで進化するデータ分析エージェント〜
hanon52_
3
2.2k
手塩にかけりゃいいってもんじゃない
ming_ayami
0
470
AIソロプレナー時代に2ヶ月で20人増員した事業創造会社の開発組織の話
miyatakoji
0
610
自律型AIエージェントは何を破壊するのか
kojira
0
150
Chainlitで作るお手軽チャットUI
ynt0485
0
210
protovalidate-es を導入してみた
bengo4com
0
170
社内 AI エージェント Synapse と セマンティックレイヤーの育て方
hiroakis
2
1.7k
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
130
Amazon Bedrock AgentCore ワークショップ JAWS UG TOHOKU / amazon-bedrock-agentcore-workshop-jawsug-tohoku-2026
gawa
9
740
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
230
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
1
230
Featured
See All Featured
Building Flexible Design Systems
yeseniaperezcruz
330
40k
How STYLIGHT went responsive
nonsquared
100
6.2k
The Curious Case for Waylosing
cassininazir
1
380
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
840
Claude Code のすすめ
schroneko
67
230k
KATA
mclloyd
PRO
35
15k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
290
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
280
Six Lessons from altMBA
skipperchong
29
4.3k
GraphQLの誤解/rethinking-graphql
sonatard
75
12k
The Curse of the Amulet
leimatthew05
1
13k
Transcript
オンプレミス市監視村の人達と学ぶ CloudWatch基礎 Amazon CloudWatch入門<会 みのるんのゲリラ勉強会&インフラ技術基礎勉強会コラボ 2024/08/21 久保田 亨
自己紹介 ・ 会社:株式会社大崎コンピュータエンヂニアリンク ・ 氏名:久保田 亨 ・ 業務:ガバメントクラウド関連(インフラ)
オンプレ歴が結構長いです
オンプレの例も入れつつ説明します よろしくお願いします!
こんな感じの構成があったとして 機器が壊れたらこまるな~
昔から利用されているSNMP監視 SNMPエージェント SNMPエージェント SNMPマネージャー ネットワークの通信量 サーバのCPU使用率 問合せ 応答
昔から利用されているPing監視 監視対象機器 SNMPエージェント 監視サーバ 死活監視 Ping 応答
責任共有モデル
こんな感じの構成があったとして AWSだとどうなりますか 中央のルーター その下のルーター サーバー
VPC Amazon EC2 AWS Transit Gateway 中央のルーター その下のルーター サーバー
VPC Amazon EC2 AWS Transit Gateway Amazon CloudWatch ※EC2はSNMPも可能です。 AWSだとCloudWatchを
使用すると良いよ
基本モニタリング → EC2を例に → 作ると有効になる Amazon EC2
CloudWatch Agentを入れる 間隔は指定可能 有料 自動的に有効になる 基本5分間隔 無料 CPU使用率 EC2ステータス メモリ使用率
ディスク使用率 メトリクス 設定で有効にする 1分間隔 有料 EC2を例に ・・・・・・・ ・・・・・・・ 基本モニタリング カスタムメトリクス 詳細モニタリング 赤枠が前のページの 「作ると有効になる」 とこね!
Amazon CloudWatch カスタムメトリクス → サーバの中から取得 基本モニタリング → サーバの外から取得 メモリ使用率 ディスク使用率
・・・・・・・ CPU使用率 EC2ステータス ・・・・・・・ CloudWatch Agent 余談 サーバの中から取るものと 外から取るもの
こんな感じの構成があったとして EC2以外のネットワークの とこは? 中央のルーター その下のルーター サーバー
VPC Amazon EC2 AWS Transit Gateway Amazon CloudWatch マネージドサービスは AWSだとCloudWatchを
使用する必要があるよ
Amazon CloudWatch 余談 今まで使用していた監視ツールも 使用出来ます CloudWatch API Amazon EC2 AWS
Transit Gateway
Transit Gatewayを例に AWS Transit Gateway → 作ると有効になる
通信内容の確認がしたい 例えば 192.168.1.10から10.1.1.10宛の 通信ログを見たいとかね
こんな感じの構成があったとして ログ ログ ログ わざわざログイン 機器故障でログ損失
昔からのログの集中管理 ログ ログ ログ ログ 監視サーバ Syslogサーバ むかしよく作りましたね!
CloudWatch Logsだと ログ ログ ログ CloudWatch Logs Alarm Amazon EC2
AWS Transit Gateway Amazon VPC もう作らなくていいんですね!
CloudWatch Logs → VPCを例に → VPCFlowlogsを作成する。 Amazon VPC 2024-07-14T06:48:04.000+09:002 123456789012
eni-12345678901234567 192.168.1.10 10.1.1.10 443 37344 6 26 7481 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 37344 443 6 20 6039 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 50948 6 27 7527 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 50948 443 6 20 6141 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 50956 6 25 7149 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 50956 443 6 17 3869 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 37344 6 26 7481 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 37344 443 6 20 6039 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 50948 6 27 7527 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 50948 443 6 20 6141 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 50956 6 25 7149 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 50956 443 6 17 3869 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 37344 6 26 7481 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 37344 443 6 20 6039 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 50948 6 27 7527 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 50948 443 6 20 6141 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 50956 6 25 7149 1720907284 1720907320 ACCEPT OK 2024-07-14T06:48:04.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 50956 443 6 17 3869 1720907284 1720907320 ACCEPT OK 2024-07-14T06:49:05.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 35498 6 4 184 1720907345 1720907345 ACCEPT OK 2024-07-14T06:49:05.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 35498 443 6 4 160 1720907345 1720907345 ACCEPT OK 2024-07-14T06:49:48.000+09:002 123456789012 eni-12345678901234567 xxx.xxx.xxx.xxx xxx.xxx.xxx.xxx 443 45420 6 21 6947 1720907388 1720907389 ACCEPT OK
もっと見やすい方法はありますか 例えば 192.168.1.10から10.1.1.10宛の 通信ログだけ見たいとかね
CloudWatch Logs → VPCを例に CloudWatch Logs Insightsで見やすく Amazon CloudWatch fields
@timestamp, srcAddr, srcPort, dstAddr, dstPort, srcPort, action, protocol
CloudWatch Logs → VPCを例に ENI毎の通信量TOP10 Amazon CloudWatch fields @timestamp, @message
| stats sum(bytes) as TotalBytes by interfaceId | sort TotalBytes DESC | limit 10
特定のキーワードが出たらアラート 例えば /var/log/messagesに 1分で3回以上ERRORという文字列
〇〇フィルターというものがある →メトリクスフィルター →サブスクリプションフィルター 何々?? 用語が難しくて分らんよwww
メトリクスフィルター → EC2を例に → CloudWatch Agentを設定する。 /var/log/messages 2024-07-09T07:56:28.713+09:00 Jul 8
22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx systemd: XXXXXXXXXXXXXXXXXXX 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx systemd: XXXXXXXXXXXXXXXXXXX 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: XXXXXXXXXXXXXXXXXXX 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: XXXXXXXXXXXXXXXXXXX 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: XXXXXXXXXXXXXXXXXXX 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx systemd: XXXXXXXXXXXXXXXXXXX 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx systemd: XXXXXXXXXXXXXXXXXXX Amazon EC2
メトリクスフィルター → EC2を例に Logs Metrics Alarm /var/log/messages 2024-07-09T07:56:28.713+09:00 Jul 8
22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR キーワードの出力回数をカウント するメトリクス作成 出力回数のしきい値を設定 Amazon EC2 ERRORが何回出たかカウント
サブスクリプションフィルター → EC2を例に Logs 特定のキーワードを検知して 次の処理に送る 例)Lambda AWS Lambda ・
ログ本文を次の処理に渡せる ・ SNSにそのまま渡すことが出来ない ・ アカウントレベルを最大1つ、1つのロググループに最大2つまで Amazon EC2 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR 2024-07-09T07:56:28.713+09:00 Jul 8 22:56:27 ip-xxx-xxx-xxx-xxx-xxx amazon-ssm-agent: ERROR
アラートを見やすくしたい Slack通知もあるけど メール通知で考えてみる
デフォルト設定でも大丈夫だよ 英語分からないよwww
アラート通知 → メール通知を例に Metrics Alarm アラームでアクションの設定 Amazon SNS アラーム状態 OK
データ不足
アラート通知 → メール通知を例に Metrics EventBridgeで検知 Amazon SNS Amazon EventBridge アラーム状態
OK データ不足 状態変化があったら次の処理へ
アラート通知 → メール通知を例に Metrics メールの整形が簡単 Amazon SNS Amazon EventBridge
Amazon EC2 AWS Transit Gateway Amazon VPC Logs Metrics Alarm
Metrics AWS Lambda CloudWatch Logs まとめ メトリクスフィルター サブスクリプションフィルター CloudWatch Metrics CloudWatch Logs Insights Alarm Amazon EventBridge CloudWatch Alarm
ありがとうございました!