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
410
既存の仕組みを棄てる技術
athagi
0
720
冴えない開発環境の育てかた
athagi
0
77
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
明日からできる!技術的負債の返済を加速するための実践ガイド~『ホットペッパービューティー』の事例をもとに~
recruitengineers
PRO
3
100
The 5 Obstacles to High-Performing Teams
mdalmijn
0
270
リアルタイム分析データベースで実現する SQLベースのオブザーバビリティ
mikimatsumoto
0
950
PL900試験から学ぶ Power Platform 基礎知識講座
kumikeyy
0
110
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
500
Googleマップ/Earthが一般化した 地図タイルのイマ
mapconcierge4agu
1
200
サーバーレスアーキテクチャと生成AIの融合 / Serverless Meets Generative AI
_kensh
12
3k
ビジネスと現場活動をつなぐソフトウェアエンジニアリング~とあるスタートアッププロダクトの成長記録より~
mizunori
0
210
生成AIの利活用を加速させるための取り組み「prAIrie-dog」/ Shibuya_AI_1
visional_engineering_and_design
1
140
30分でわかる『アジャイルデータモデリング』
hanon52_
9
2.2k
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
130
データ基盤の成長を加速させる:アイスタイルにおける挑戦と教訓
tsuda7
3
650
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Code Review Best Practice
trishagee
66
17k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Typedesign – Prime Four
hannesfritz
40
2.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Being A Developer After 40
akosma
89
590k
KATA
mclloyd
29
14k
A better future with KSS
kneath
238
17k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
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に通知をする • 増えたとしても楽に設定配布はできるようになったが、かゆいところに手が届かな いので作り込む必要がある