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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
athagi
March 11, 2024
Technology
280
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
petなEC2をまとめて監視してみた
20240311 OpsJaws#27 でお話しした内容です。
監視の存在しないEC2をスケールする形で監視するシナリオでお話します。
athagi
March 11, 2024
More Decks by athagi
See All by athagi
社内でAWS GameDayを開催しよう
athagi
2
570
既存の仕組みを棄てる技術
athagi
0
820
冴えない開発環境の育てかた
athagi
0
110
GitLab-CI でPrivate Registry を利用する話
athagi
0
1.6k
Kubernetes がない世界の CloudNative ジャーニー
athagi
0
450
ゆるキャンはじめました。
athagi
0
1.7k
Windows Server にAnsibleを使ってみた話
athagi
2
2.2k
Other Decks in Technology
See All in Technology
手塩にかけりゃいいってもんじゃない
ming_ayami
0
590
なぜ Platform Engineering の土台に Kubernetes を選ぶのか
r4ynode
2
650
「エンジニア進化論」2028年の開発完全自動化、エンジニアはどう進化するか
cyberagentdevelopers
PRO
6
5.3k
気づかぬうちにセキュリティ負債を生むAPIキー運用
sgwrmctk
0
140
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
6
2.4k
Kiroで書いた 設計書 が AI レビューの 採点基準 になる
ezaki
0
110
AIはどのように 組織のアジリティを変えるのか?
junki
4
940
Chainlitで作るお手軽チャットUI
ynt0485
0
260
エラーバジェットのアラートのタイミングを考える.pdf
kairim0
0
150
SONiCのLinuxベースを活かしたZabbix監視
sonic
0
180
AIのReact習熟度を測る
uhyo
2
600
Snowflakeと仲良くなる第一歩
coco_se
4
480
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
37
3.7k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
Un-Boring Meetings
codingconduct
0
310
What's in a price? How to price your products and services
michaelherold
247
13k
Navigating Weather and Climate Data
rabernat
0
220
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Automating Front-end Workflow
addyosmani
1370
210k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Accessibility Awareness
sabderemane
1
140
Build your cross-platform service in a week with App Engine
jlugia
234
18k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
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に通知をする • 増えたとしても楽に設定配布はできるようになったが、かゆいところに手が届かな いので作り込む必要がある