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
Mackerel のコンテナ監視の近況 / Mackerel Meetup #13
Search
astj
PRO
October 23, 2019
Technology
2.7k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Mackerel のコンテナ監視の近況 / Mackerel Meetup #13
https://mackerelio.connpass.com/event/144889/
astj
PRO
October 23, 2019
More Decks by astj
See All by astj
ISUCON14公式反省会LT: 社内ISUCONの話
astj
PRO
0
560
Mackerel の時系列データベースにおける Redis Cluster の利用と Amazon ElastiCache への移行について / AWS Purpose-Built Databases Week
astj
PRO
3
6.1k
Observability: Mackerel による観測と Mackerel の観測 / NoOps Meetup Tokyo #8
astj
PRO
2
2.4k
サービス開発と健全なプロダクトメンテナンスを開発チームで持続的に取り組む / Developers Boost KANSAI
astj
PRO
1
1.6k
Mackerel and Stripe / Qiita x Stripe Meetup
astj
PRO
0
5.7k
Mackerel をオンプレミスから AWS に移してからの1年半を振り返る / Hatena Engineer Seminar #11
astj
PRO
0
1.3k
AWS で実現した Mackerel 時系列データ1分粒度長期保存の裏側 / Mackerel Meetup #11 Tokyo
astj
PRO
6
31k
稼働中の Web サービスの perl のバージョンを上げていく
astj
PRO
0
7.6k
Perl 6 で Web Application Framework をつくる
astj
PRO
0
4.8k
Other Decks in Technology
See All in Technology
システム思考で問題に対処する
yussak
0
240
Agent 時代の Kaggle 展望 / kaggle-in-the-agentic-era
upura
1
700
オートロックマンションなのに、各部屋は施錠なし!? 攻撃者が組織内ネットワークで大暴れする理由 / The Front Door Is Locked, but the Rooms Are Wide Open: Why Attackers Move Freely Inside Enterprise Networks
nttcom
1
1.6k
Flutterをカメラで動かしたかった話
sony
1
130
サイバー捜査員研修(前半)
nomizone
1
2k
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.4k
Model Studio CLI × Token Plan
maigo999
0
140
え?フロントエンドエンジニアの ワイがインフラも!?
puku0x
1
510
サイバー捜査員研修(後半)
nomizone
1
850
【AG-UI × A2UI × MCP Apps】Generative UIをやさしく解説する
nrinetcom
PRO
1
110
強化学習「理論」入門
enakai00
3
3.6k
ブラウザ研修 2026
recruitengineers
PRO
6
910
Featured
See All Featured
Six Lessons from altMBA
skipperchong
29
4.4k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
460
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
Designing Experiences People Love
moore
143
24k
Balancing Empowerment & Direction
lara
6
1.2k
Building Adaptive Systems
keathley
44
3.2k
Facilitating Awesome Meetings
lara
57
7.1k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Odyssey Design
rkendrick25
PRO
2
750
Site-Speed That Sticks
csswizardry
13
1.4k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
660
Transcript
1 Mackerel のコンテナ監視の近況 Mackerel Drink Up #9 Tokyo id:astj (Asato
Wakisaka)
2 • id:astj(あさとじぇー) ◦ Mackerel 開発チーム ◦ アプリケーションエンジニア ◦ テックリード
自己紹介
3 • mackerel-container-agent について ◦ 概要 ◦ 最近 (Meetup #13
~) のアップデート • ECS クラスター監視について 今日の話題
4 mackerel-container-agent Mackerel のコンテナ監視の近況
5 • コンテナ監視用の軽量エージェント ◦ mackerel-agent とは別のエージェントです • Amazon ECS と
Kubernetes に対応 • 1 タスク / 1 Pod ごとにひとつの「ホスト」 mackerel-container-agent
6 タスク / Pod をホストのように扱う container-agent でやること
7 • タスク / Pod を「ホスト」として登録 ◦ サービス・ロールの割り当て • リソース状況をメトリックとして投稿
◦ コンテナごとの CPU、メモリ、トラフィック ◦ => 受け取った Mackerel サーバー側で監視 • プラグインの実行 ◦ チェック監視、カスタムメトリックの投稿 container-agent でやること
8 container-agent でやること
9 container-agent でやること
10 container-agent でやること
11 • クラスタやノードの監視 ◦ ノードの情報: mackerel-agent ▪ 実行しているコンテナの情報: mackerel-plugin-docker ◦
クラスタの情報: ▪ ノード数、タスク/Pod数、… ▪ ECS の場合: AWS インテグレーション container-agent でやらないこと
12 • 監視対象のコンテナに横付け(Side-car) ◦ ECS: タスク定義 ◦ Kubernetes: Pod manifest
• ECS / K8s の metadata API から情報を取得 ◦ ECS: Task Metadata Endpoint v3 ◦ Kubernetes: kubelet API mackerel-container-agent
13 mackerel-container-agent
14 TaskDefinition: Type: AWS::ECS::TaskDefinition Properties: RequiresCompatibilities: - FARGATE NetworkMode: awsvpc
Memory: 512 Cpu: 256 ContainerDefinitions: - Name: app Image: ... - Name: mackerel-container-agent Image: mackerel/mackerel-container-agent:latest Memory: 128 Environment: - Name: MACKEREL_CONTAINER_PLATFORM Value: ecs - Name: MACKEREL_APIKEY Value: <YOUR_MACKEREL_APIKEY> Essential: false container-agent の設定 (ECS) 元々のタスク定義 サイドカーを追加
15 container-agent の設定 (ECS) - Name: app - Name: mackerel-container-agent
Image: mackerel/mackerel-container-agent:latest Memory: 128 Environment: - Name: MACKEREL_CONTAINER_PLATFORM Value: ecs - Name: MACKEREL_APIKEY Value: <YOUR_MACKEREL_APIKEY> Essential: false
16 最近のアップデート Mackerel のコンテナ監視の近況
17 正式版のリリース (2019/06) 最近のアップデート
18 2019/02 パブリックベータ (v0.0.1) 2019/06 正式版 (v0.1.0) 最新: v0.2.0 正式版のリリース
19 • 公式プラグイン入りのイメージ ◦ v0.0.5 より ◦ 一部含めていない公式プラグインもあります ▪ 含めてほしいプラグインがあればリクエストを!
機能追加・変更 % docker pull \ mackerel/mackerel-container-agent:plugins
20 • ECS 向けの設定が統一 (v0.1.0) ◦ 注意: ECS コンテナエージェント /
Fargate プラットフォームのバージョン 機能追加・変更 ecs, ecs_v3, ecs_awsvpc,fargate ecs
21 • S3 上の設定ファイルのポーリング (v0.2.0) ◦ 元々はシグナルによる再読み込みを実装 ◦ 設定によってポーリングも可能に ◦
再デプロイせず監視設定のみを変更可能 機能追加・変更
22 課金体系の変更 (2019/05~) 最近のアップデート
23 • before: ◦ 「ホスト」 ▪ 1台200メトリックまで 1800円/台 • after:
◦ 「スタンダードホスト」 ▪ 1台200メトリックまで 1800円/台 ◦ 「マイクロホスト」 ▪ 1台30メトリックまで 648円/台 課金体系の変更 ※2019/05当時のスタンダードプランの税込金額です。 現在は消費税増税に伴い金額を改定しています。
24 • タスク / Pod は「マイクロホスト」に • 殆どの場合1タスク/Pod = 1マイクロホスト
◦ (メトリック数が多くなる場合複数台換算) ▪ 非常に多くのコンテナを含む場合 ▪ プラグインを多数追加した場合 課金体系の変更
25 summary Mackerel のコンテナ監視の近況
26 • ECS/k8s 向けのコンテナ監視エージェント • タスク/Pod をホストのように扱います ◦ Mackerel 側でホストと同様に管理・監視
• タスク/Pod ごとにサイドカーを追加します mackerel-container-agent
27 • 5月から価格体系を改めています ◦ ご利用いただきやすくなりました • 6月に正式版をリリースしました ◦ ベータから機能追加・変更しています ◦
これからも機能追加を進めてゆきます mackerel-container-agent
28 • ぜひご利用ください! ◦ フィードバックもお待ちしています! mackerel-container-agent
29 ECS クラスターの監視 おまけ
30 • container-agent はタスクのモニタリング • ECS クラスターのモニタリング: ◦ mackerel-plugin-aws-ecs ◦
AWS インテグレーション <= NEW! ECS クラスターの監視
31 • 1クラスター = 1マイクロホスト • CloudWatch を元にメトリックを取得 ◦ クラスター全体でのリソース状況
▪ (CPU, メモリ) の (割り当て, 利用) ◦ サービスごとのリソース状況 ▪ タスク実行数 ▪ (CPU, メモリ) の (割り当て, 利用) AWS インテグレーション - ECS
32 • クラスター全体の情報が1「ホスト」に集約 • container-agent で取れない情報はあまりない ◦ 例: ロールの CPU
積み上げグラフ • 要件に応じて使い分けてご利用ください! ECS クラスターの監視