Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
TechDojo_20210929_OpenShiftアプリ監視デモ
Search
Takahiro Esaki
September 28, 2021
Technology
410
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
TechDojo_20210929_OpenShiftアプリ監視デモ
Takahiro Esaki
September 28, 2021
More Decks by Takahiro Esaki
See All by Takahiro Esaki
AIの最新技術&テーマをつまんで紹介&フリートークするシリーズ #1 量子機械学習の入門
tkhresk
0
300
ITエンジニアのためのコーポレートファイナンス入門シリーズ! #5 「現在価値」を理解する
tkhresk
1
84
ITエンジニアのためのコーポレートファイナンス入門シリーズ! #4 財務分析の基本〜おかわり〜
tkhresk
3
520
ITエンジニアのためのコーポレートファイナンス入門シリーズ! #3 財務分析の基本
tkhresk
2
570
FinOps_Demo
tkhresk
0
250
ITエンジニアのためのコーポレートファイナンス入門シリーズ! #2 最低限の会計基礎
tkhresk
3
180
ITエンジニアのためのコーポレートファイナンス入門シリーズ!#全体像理解
tkhresk
3
760
クラウドネイティブ時代を乗り越えるためのオブザーバビリティ(可観測性)ことはじめ_CloudNative-Observability
tkhresk
0
280
OpenLLMetry-Hands-On 生成AIアプリを観測してみよう!OpenLLMetryハンズオン編
tkhresk
2
500
Other Decks in Technology
See All in Technology
え、こんなに早く改修できるの?──新人エンジニアとスクラムマスターの2人が語る、AI×アジャイル開発の現場
ysasago
2
700
絵ではじめるKubernetesセキュリティ
aoi1
5
710
Oracle Cloud Network Path Analyzerを試してみた/I Tried Out Oracle Cloud Network Path Analyzer
masakiokuda
1
110
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
140
Cloudflare Workers 向けアプリを C# で構築する ~WASM Native AOT への道~
nenonaninu
1
1.4k
AI 時代のスタートアップエコシステ厶から考究する技術的負債との向き合い方
m3m0r7
PRO
3
2.6k
EventBridge に「合流」はない ― サーバーレスのワークフローを育てるということ / No Join in EventBridge
yusukeshimizu
2
500
メルカリにおけるAI時代の高速プロトタイピング基盤「Arca」
ryotarai
3
950
人間はどの意思決定を手放せるのか
kawasima
15
8.1k
サーバーレスをどこまで使う? WebRTC対戦ゲームで選んだVPSとの共存設計
kaidouji85
0
380
負債のメタファと2026年 / Debt Metaphor in Agentic Engineering Age 202609 Edition
twada
PRO
11
6.6k
aws-iot-platform-architecture-use-cases.pdf
ma2shita
0
580
Featured
See All Featured
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
830
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
530
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
380
Building Applications with DynamoDB
mza
96
7.2k
Chasing Engaging Ingredients in Design
codingconduct
0
330
Git: the NoSQL Database
bkeepers
PRO
432
67k
The untapped power of vector embeddings
frankvandijk
2
1.9k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
410
How to build a perfect <img>
jonoalderson
1
6k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Technical Leadership for Architectural Decision Making
baasie
3
580
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Transcript
Tech Dojo OpenShift OpenShiftの監視デモ 2021年09⽉29⽇
アジェンダ 2 n 監視とOpenShiftの概念の確認 n デモンストレーション – ダッシュボード(リソース使⽤状況) – アラート
– メトリクス – Podのログ
アジェンダ 3 n 監視とOpenShiftの概念の確認 n デモンストレーション – ダッシュボード(リソース使⽤状況) – アラート
– メトリクス – Podのログ
監視の多様な観点と今回の焦点 © 2021 IBM Corporation 4 n 「監視」には多様な観点があるが、今回は「リソース監視」に着⽬する 監視観点 目的
具体的な監視対象 ビジネスKPI ユーザがサービスを利用できているか、サービス は期待効果を創出しているか、システムがどのラ イフサイクルに位置しているかなどを確認する • アクティブユーザ数、ログイン数、アクセス ルート、キャッシュコンバージョンレート など フロントエンド ブラウザやモバイルアプリのフロントエンドのパ フォーマンス/エラーを監視し、ユーザ満足・売り 上げに貢献しているか確認する • レンダリングパフォーマンス • JavaScriptエラー など アプリケーション アプリ単位でのパフォーマンスやエラーなどを測 定し、期待通りの動作をしているか確認する。障 害原因の調査を実施する • クエリ実行時間、外部API応答時間 • デプロイパイプラインメタ情報 • ヘルスチェック など リソース (サーバ) アプリが稼働しているサーバの物理的なメトリク スを測定し、スケーリング検討や障害原因の調査 を実施する • CPU/メモリ/ディスクなどの共通メトリクス • WebサーバのHTTPステータスコード、DB サーバのスロークエリなどの特有メトリクス ネットワーク ネットワークの疎通/パフォーマンスなどからアプ リが期待通りの動作をしているかを確認する。障 害原因の調査を実施する • インバウンド/アウトバンドのIPアドレス、 パケット、アクセス頻度、ルーティング な ど セキュリティ 不正アクセス/悪意的な攻撃などからユーザ情報や 企業機密などのデータを保護するための検知/追跡 の仕組みを構築する • ユーザ、コマンド、ファイルシステムの実行 履歴 など 本 日 の 焦 点
コンテナ単体 Kubernetes(k8s) OpenShift • コンテナ⾃体は疎結合のため、マイク ロサービスを実現するには、CPU/メ モリなどのリソースの監視(やコンテ ナ間の通信を担保するためのネット ワーク監視が必要 •
Master NodeがWorker Node内の Podの死活やCPU/メモリなどのリ ソース状況、IPアドレスなどを監視し、 定義されたマニフェストの状態と⼀致 しているか確認する。⼀致していなけ れば、⼀致するような修復命令を出す • ⼈が確認・運⽤するための監視/ロギ ングの仕組みは別途実施する必要あり • KubernetesのWorker Nodeが内部的 に実施しているCPU/メモリなどのリ ソース状況、IPアドレスなどの監視や その結果を、⼈が確認・運⽤するため の仕組みをGUIで提供する コンテナを利⽤するにあたって必要な監視 n K8sはマイクロサービス実現に必要な内部的な「リソース監視」「ネットワーク監視」の仕組みを持つ n OpenShiftは、更に⼈がGUIで確認/操作するための監視運⽤コンポーネントを提供する コンテナ コンテナ コンテナ コンテナ 監視運用のコンポーネント (Prometeus,Grafana など利用) GUI © 2021 IBM Corporation 5 Pod Worker Node kubelet kube-proxy Master Node kube-api-server kube-scheduler kube-controller- manager マニフェス ト 内部的なリソース/ ネットワーク監視 Pod 開発者/運用者
代表的なOpenShiftの監視コンポーネント n OpenShiftはk8sと親和性の⾼いOSSを活⽤して次のような監視コンポーネントを提供 機能 主な利用OSS 説明 Dashboards Grafana • ClusterやPodのCPU使用率、メモリ使用率、帯域幅、受信パケットなどデ
フォルトのメトリクスをグラフで確認 Metrics Prometheus • 任意のメトリクスをクエリを作成・実行することで結果を取得・表示 Alerting Alertmanager • アラートの管理(登録、検索 など) • サイレンスの管理(メンテナンス期間中にアラートをオフにする設定) © 2021 IBM Corporation 6
アジェンダ 7 n 監視とOpenShiftの概念の確認 n デモンストレーション – ダッシュボード(リソース使⽤状況) – アラート
– メトリクス – Podのログ
1. 左部メニューからMonitoringをクリックし、Metricsを選択 2. Dashboards メニューを押下し、モニタリング対象を指定する。 ① Dashboardをクリックし、「Kubernetes / Compute Resouces
/ Namespace (Pods)」 を選択。 ② Namespaceをクリックし、「production」を選択。 3. MemoryおよびCPU使⽤率を確認します ダッシュボード(リソース使⽤状況) © 2021 IBM Corporation 8
© 2021 IBM Corporation 9 4. 特定のプロジェクトに関するリソース確認ではなく、Openshiftクラスター全体のリソース使⽤状況を確認します。 ① Kubernetes /
Compute Resources / Cluster を選択します。 【 参考 】 Grafana-UIを押下すると、Grafana⾃体のダッシュボード画⾯でも参照可能です
1. アラートでは、発⽣しているアラート内容の確認、アラート通知を解除する設定の実施、OpenShift内で定義されているアラートの確 認ができます。新規にユーザー定義のアラートを追加する場合は、別作業が必要となります。 2. OpenShiftダッシュボードから、設定されているアラートを確認しましょう。左部メニューから、アラートを選択します。 3. アラートルールをクリックし、定義されている内容を確認します アラート 10 1.
アラート: 発⽣しているアラートの確認 2. サイレンス: サイレンスしているアラートの確認 3. アラートルール: 定義されているアラートの確認
1. Prometheus のクエリー⾔語 (PromQL) クエリーを実⾏し、プロットに可視化されるメトリクスを検査できます。 2. Openshiftダッシュボードから、設定されているアラートを確認しましょう。左部メニューから、モニタリング > メトリクスを選択し ます。
3. 「カーソルでメトリクスを挿⼊する」を選択し、事前に定義されたクエリーの⼀覧を表⽰します。 ※ クエリーとは、Prometeusクエリー(PromQL)を指します。独⾃のクエリーを作成、実⾏する場合は以下を参照 https://prometheus.io/docs/prometheus/latest/querying/basics/ メトリクス 11 sort_desc(sum(sum_over_time(ALERTS{ alertstate="firing"}[24h]))by(alertname))
© 2021 IBM Corporation 12 3. クエリーの実⾏をクリックするし、対象の内容を描画します。 参考: カスタムクエリーを作成するには、Prometheus クエリー⾔語
(PromQL) のクエリーを Expression フィールドに追加します 複数のクエリーを追加するには、「クエリーの追加」 を選択します。
Podのログ © 2021 IBM Corporation 13 n トポロジー画⾯からworklog-apiのView logsをクリック –
任意のPodを選択 (ここではworklog apiを選択) n Podのログが表⽰されるので、 内容を確認してみる
None