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
petなEC2をまとめて監視してみた
Search
athagi
March 11, 2024
Technology
1
200
petなEC2をまとめて監視してみた
20240311 OpsJaws#27 でお話しした内容です。
監視の存在しないEC2をスケールする形で監視するシナリオでお話します。
athagi
March 11, 2024
Tweet
Share
More Decks by athagi
See All by athagi
社内でAWS GameDayを開催しよう
athagi
2
420
既存の仕組みを棄てる技術
athagi
0
720
冴えない開発環境の育てかた
athagi
0
79
GitLab-CI でPrivate Registry を利用する話
athagi
0
1.4k
Kubernetes がない世界の CloudNative ジャーニー
athagi
0
350
ゆるキャンはじめました。
athagi
0
1.6k
Windows Server にAnsibleを使ってみた話
athagi
2
2k
Other Decks in Technology
See All in Technology
LayerXにおけるAI活用事例とその裏側(2025年2月) バクラクの目指す “業務の自動運転” の例 / layerx-ai-deim2025
yuya4
1
540
データモデルYANGの処理系を再発明した話
tjmtrhs
0
300
Pwned Labsのすゝめ
ken5scal
2
570
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
200
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
240
生成AI×財務経理:PoCで挑むSlack AI Bot開発と現場巻き込みのリアル
pohdccoe
1
810
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
1.1k
IAMのマニアックな話2025
nrinetcom
PRO
6
1.4k
OPENLOGI Company Profile
hr01
0
60k
JAWS FESTA 2024「バスロケ」GPS×サーバーレスの開発と運用の舞台裏/jawsfesta2024-bus-gps-serverless
ma2shita
3
340
サバイバルモード下でのエンジニアリングマネジメント
konifar
21
7.1k
2/18 Making Security Scale: メルカリが考えるセキュリティ戦略 - Coincheck x LayerX x Mercari
jsonf
0
250
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Music & Morning Musume
bryan
46
6.4k
Six Lessons from altMBA
skipperchong
27
3.6k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Why Our Code Smells
bkeepers
PRO
336
57k
Statistics for Hackers
jakevdp
797
220k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.2k
Transcript
petなEC2をまとめて監視してみた 20240311 OpsJAWS #27 #opsjaws #jawsug HAGITA Atsushi @_athagi
自己紹介 名前:萩田 篤(@_athagi) 所属:株式会社 Works Human Intelligence 肩書:EM, SM 仕事:DX推進(Developer
eXperience) 好きなAWSサービス:AWS Support, IAM, SSM
目次 1. 目指すゴール 2. 各コンポーネントの説明 a. Resource GroupとTag b. Run
CommandとDocuments c. State Manager d. 通知 3. まとめ
目指すゴール
目指すゴール シナリオ • まだ監視の存在しないEC2インスタンス • それぞれが別々のワークロードで利用されている • 今後EC2インスタンスは増える可能性がある • (SaaSは利用せずに)AWSで完結させたい
• なるべく楽がしたい
目指すゴール
各コンポーネントの説明
Resource GroupとTag
Resource GroupとTag • 大切に育てていたインスタンスをまとめて管理で きるようにする • Tag Editor等を利用してインスタンスにタグを付与 (CFnインポートできるとgood) •
Resource Groupの対象とするインスタンスはAND 式でフィルタできる • 作成したリソースグループを起点にして管理でき るようにしていく • タグを設定しておくことでAWS Backupの設定でも 楽ができる
Run CommandとDocuments
Run CommandとDocuments • Systems Managerで管理ができるように権限付与を行う ◦ AmazonSSMManagedInstanceCore ▪ SSMがEC2を管理下におくための基本的なポリシー
◦ CloudWatchAgentServerPolicy ▪ CloudWatchに対してデータを送信できるようにするポリシー • 数分後にSystems Manager側からも見えるようになる • 高速セットアップやRun Commandで実行対象として作成したResource Groupを選 択できるようになる • Session Managerも利用できる
Run CommandとDocuments • Parameter StoreにCW用のconfig.jsonを用意 ◦ 文字数制限(4096バイト)があるので注意 •
CloudWatch Agentとconfig.jsonをインストールでき るDocumentを作成 ◦ 高速セットアップだと任意のconfig.jsonを配布 できない ◦ 以下をまとめたDocumentを作成 ▪ AWS-ConfigureAWSPackage • Agent をインストール&最新の状態に保つ ▪ AmazonCloudWatch-ManageAgent • config.jsonをインストールする • 設定方法が複数(configの上書き、追加、部分 更新)がある
State Manager
State Manager • Resource Groupにインスタンスが追加・変更されたタイミングで自動で発火するよ うにする • cronで時刻ベースで実行する設定も追加できる • 任意のタイミングで実行させたいときは、CLIでstart-associations-once
を実行す る • 高速セットアップ(Host Management)のCloudWatch Agentのインストールは無効 化しておく 関連付けはいつリソースに適用されますか?
State Manager それぞれのインスタンスに対しての実行結果が確認できる
State Manager • インスタンス/ステップごとに実行結果のログをRun Commandの実行ログから確認 できる • S3やCloudWatch Logsに保存することも可能
通知
通知 • 送信されたメトリクスからダッシュボードやアラームを作成し、Chatbot経由で slack等に送信 ◦ slackのスレッドで簡易的にクエリできる • Alermからlambda経由でRun Commandを実行したり、インスタンスを再起動した
りできる
まとめ
まとめ • インスタンスに適切にタグとロールを付けるところから始める • Resource Groupを利用してインスタンスをまとめる • Run CommandでCloudWatch
Agentの管理をする • State Managerを利用して自動的に設定変更を配布する • Chatbotを使ってslackに通知をする • 増えたとしても楽に設定配布はできるようになったが、かゆいところに手が届かな いので作り込む必要がある