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
コンテナ監視って何見るの?~初心者編~
Search
kaojiri
July 26, 2021
Technology
8
5.5k
コンテナ監視って何見るの?~初心者編~
OpsJAWS Meetup #19でのLT登壇資料です。
kaojiri
July 26, 2021
Tweet
Share
More Decks by kaojiri
See All by kaojiri
Kubernetesモニタリングのベストプラクティス_JAWSDays2021_20210320
kaojiri
0
950
AWS SummitTokyo2019-reCap_20190620
kaojiri
1
71
JAWS-UG_SAITAMA_20190420
kaojiri
1
190
OpsJAWS-JAWSUG-KANAZAWA_20181123
kaojiri
1
270
AWS Systems ManagerとAWS Configのちょっといい話
kaojiri
3
1.6k
組織を意識したAWS構成管理プロセスを考える_20180112
kaojiri
0
730
JAWS Days2017 EXCEL構成管理からの脱却と次世代MSPとDevOps 2.0 by OpsJAWS
kaojiri
0
1.8k
OpsJAWS#7 20160729 SIerにおけるDevOpsの現状 ~terraformを使ったAWS開発~
kaojiri
1
1.1k
OpsJAWS#5 20160420 背伸びをしないAWS構成管理
kaojiri
0
2.9k
Other Decks in Technology
See All in Technology
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
300
インフラとバックエンドとフロントエンドをくまなく調べて遅いアプリを早くした件
tubone24
1
430
安心してください、日本語使えますよ―Ubuntu日本語Remix提供休止に寄せて― 2024-11-17
nobutomurata
1
990
Application Development WG Intro at AppDeveloperCon
salaboy
0
180
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
複雑なState管理からの脱却
sansantech
PRO
1
140
Can We Measure Developer Productivity?
ewolff
1
150
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.6k
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
0
110
社内で最大の技術的負債のリファクタリングに取り組んだお話し
kidooonn
1
550
10XにおけるData Contractの導入について: Data Contract事例共有会
10xinc
5
600
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
136
6.6k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Gamification - CAS2011
davidbonilla
80
5k
KATA
mclloyd
29
14k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
Making Projects Easy
brettharned
115
5.9k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Designing for Performance
lara
604
68k
4 Signs Your Business is Dying
shpigford
180
21k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Building Applications with DynamoDB
mza
90
6.1k
What's new in Ruby 2.0
geeforr
343
31k
Transcript
コンテナ監視って何見るの? ~初心者編~ Koji Aizawa 2021/07/26 OpsJAWS
Agenda 1. コンテナの課題とオーケストレーションの必要性 2. 監視の基本的な考え方 a. アプローチの仕方 b. コンテナの状態変化を継続的に把握する重要性 3.
まとめ
コンテナって何見ればいいの? コンテナって何を見ればいいの?
1. コンテナの課題とオーケストレーションの必 要性
本番環境では各コンポーネントを 冗長化するのが基本 • コンテナの障害対策 ◦ 複数台のコンテナを起動 ◦ ロードバランサーでアクセス分散 • サーバの障害対策
◦ 各コンテナは別々のサーバで起動 コンテナ単体の課題とオーケストレーションの必要性 出典:『Kubernetes on AWS』(リックテレコム刊 2020年)
コンテナ単体の課題とオーケストレーションの必要性 本番環境では各コンポーネントを 冗長化するのが基本 • コンテナの障害対策 ◦ 複数台のコンテナを起動 ◦ ロードバランサーでアクセス分散 •
サーバの障害対策 ◦ 各コンテナは別々のサーバで起動 コントロールプレーン コンテナ単体の課題とオーケストレーションの必要性 出典:『Kubernetes on AWS』(リックテレコム刊 2020年)
オーケストレーションサービスの構成要素 • コントロールプレーン ノードはどれか、コンテナをどのノード に配置すべきかなどの管理を行うもの • データプレーン コンテナを実行するサーバそのもの AWS Blog(Docker
on AWS)より引用: https://aws.amazon.com/jp/blogs/news/jp-docker-on-aws-container-service-selection-example/
オーケストレーションサービスの構成要素 コントロールプレーン データプレーン コンテナたち
2. 監視の基本的な考え方
監視の基本的な考え方 1/3 • コントロールプレーン ノードはどれか、コンテナをどのノード に配置すべきかなどの管理を行うもの • データプレーン コンテナを実行するサーバそのもの コントロールプレーンの監視
→マネージドなので不要 AWS Blog(Docker on AWS)より引用: https://aws.amazon.com/jp/blogs/news/jp-docker-on-aws-container-service-selection-example/
監視の基本的な考え方 2/3 • コントロールプレーン ノードはどれか、コンテナをどのノード に配置すべきかなどの管理を行うもの • データプレーン コンテナを実行するサーバそのもの コントロールプレーンの監視
→マネージドなので不要 データプレーンの監視 →EC2なので今までと同じ (Fargateなら管理から解放) AWS Blog(Docker on AWS)より引用: https://aws.amazon.com/jp/blogs/news/jp-docker-on-aws-container-service-selection-example/
監視の基本的な考え方 3/3 • コントロールプレーン ノードはどれか、コンテナをどのノード に配置すべきかなどの管理を行うもの • データプレーン コンテナを実行するサーバそのもの コントロールプレーンの監視
→マネージドなので不要 データプレーンの監視 →EC2なので今までと同じ (Fargateなら管理から解放) AWS Blog(Docker on AWS)より引用: https://aws.amazon.com/jp/blogs/news/jp-docker-on-aws-container-service-selection-example/ コンテナの監視 ・EC2ベース(プロセス監視に近い ) ・オーケストレーションならではのコン テナ挙動を捉える
具体例:Amazon ECSのタスク起動フロー 1. タスク定義で指定したキャパシティ(CPU・メモリ)でノードのリソースを 確保 2. コンテナレジストリからイメージをpull 3. コンテナを起動 4.
ヘルスチェック 5. ユーザーからのリクエストを受け付ける Running Pending Task Status
具体例:Amazon ECSのタスク起動フロー 1. タスク定義で指定したキャパシティ(CPU・メモリ)でノードのリソースを 確保 → リソースを確保できない 2. コンテナレジストリからイメージをpull → イメージをPullできない 3.
コンテナを起動 → コンテナを正常に起動できない(起動処理失敗など) 4. ヘルスチェック → ヘルスチェック失敗 5. ユーザーからのリクエストを受け付ける → 高負荷などによるリソース過剰使用など Running Pending Task Status
具体例:この時何が起こるか? いずれもタスクの再作成(問題のタスクは停止され、新しいタスクが作成)が 繰り返される • Pendingから停止した場合は、一定間隔で再試行&試行回数上限あり。 • Runningから停止した場合は、無期限で再作成される ※AWS公式Docより つまり、予期しないタスクの再作成が発生する可能性がある、ということ Amazon EC2時代も、何らかのサーバー異常により
Amazon EC2のTerminate・再作成がないわけ ではないが、コンテナ(=プロセス)の停止・起動の方がよりカジュアルに発生しやすいと言える コンテナの状態変化を”継続的”に把握することが重要
3. まとめ
ああ コンテナ監視のポイント コントロールプレーンの監視 マネージドサービスを使えばノータッチで OK データプレーンの監視 EC2時代と同じ コンテナの監視 EC2時代と同じ + オーケストレーション固有の挙動(状態変化)を継
続的に捉える 本番でコンテナを使うための構成を理解する コンテナ単体の課題とオーケストレーションの必要性を 理解する ※ブログで同内容を公開中: https://blog.newrelic.co.jp/container/container-monitoring-practice/
2021.9.15 ¥ 3,300 (including tax) ついに発売される New Relic の全てを理解できる 330
ページにわたる技術書籍。オブザーバビリティの基本から New Relic One の基本機能、さらには16のオブザーバビリ ティ実装パターンまで含めた、初心者から応用を理解したい上 級者まで対象にした New Relic のパーフェクトガイドブック。 予約受付中 単行本版 & Kindle版 同時発売 CLICK & CHECK IT OUT!
Thank you @kaojiri