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
220
petなEC2をまとめて監視してみた
20240311 OpsJaws#27 でお話しした内容です。
監視の存在しないEC2をスケールする形で監視するシナリオでお話します。
athagi
March 11, 2024
Tweet
Share
More Decks by athagi
See All by athagi
社内でAWS GameDayを開催しよう
athagi
2
480
既存の仕組みを棄てる技術
athagi
0
740
冴えない開発環境の育てかた
athagi
0
89
GitLab-CI でPrivate Registry を利用する話
athagi
0
1.5k
Kubernetes がない世界の CloudNative ジャーニー
athagi
0
370
ゆるキャンはじめました。
athagi
0
1.6k
Windows Server にAnsibleを使ってみた話
athagi
2
2.1k
Other Decks in Technology
See All in Technology
Amazon Bedrockで実現する 新たな学習体験
kzkmaeda
1
510
How Community Opened Global Doors
hiroramos4
PRO
1
110
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
180
生成AIで小説を書くためにプロンプトの制約や原則について学ぶ / prompt-engineering-for-ai-fiction
nwiizo
3
780
Кто отправит outbox? Валентин Удальцов, автор канала Пых
lamodatech
0
330
Claude Code Actionを使ったコード品質改善の取り組み
potix2
PRO
6
2.1k
より良いプロダクトの開発を目指して - 情報を中心としたプロダクト開発 #phpcon #phpcon2025
bengo4com
1
3.1k
米国国防総省のDevSecOpsライフサイクルをAWSのセキュリティサービスとOSSで実現
syoshie
2
1k
生成AIでwebアプリケーションを作ってみた
tajimon
2
140
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
220
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
100
TechLION vol.41~MySQLユーザ会のほうから来ました / techlion41_mysql
sakaik
0
180
Featured
See All Featured
Speed Design
sergeychernyshev
32
1k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Unsuck your backbone
ammeep
671
58k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.3k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
How to train your dragon (web standard)
notwaldorf
92
6.1k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
930
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
How STYLIGHT went responsive
nonsquared
100
5.6k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
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に通知をする • 増えたとしても楽に設定配布はできるようになったが、かゆいところに手が届かな いので作り込む必要がある