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
Survey and Short Dive Prometheus Operator
Search
nwiizo
May 28, 2020
Programming
2
2.4k
Survey and Short Dive Prometheus Operator
Prometheus Meetup Tokyo #4
https://prometheus.connpass.com/event/175547/
nwiizo
May 28, 2020
Tweet
Share
More Decks by nwiizo
See All by nwiizo
メインテーマはKubernetes
nwiizo
2
370
SREの前に
nwiizo
12
3.3k
2024年版 運用者たちのLLM
nwiizo
4
910
Platform Engineering と SRE の門
nwiizo
16
5.7k
運用者の各領域で向き合うLLM
nwiizo
1
480
可観測性ガイダンス
nwiizo
14
3.7k
書を捨てよ、現場へ出よう
nwiizo
12
11k
走馬灯のIaCは考えておいて
nwiizo
10
5.9k
SREとPlatform Engineerの交差点
nwiizo
9
6.8k
Other Decks in Programming
See All in Programming
Go の GC の不得意な部分を克服したい
taiyow
2
710
今からはじめるAndroidアプリ開発 2024 / DevFest 2024
star_zero
0
990
Java 23の概要とJava Web Frameworkの現状 / Java 23 and Java web framework
kishida
2
400
RWC 2024 DICOM & ISO/IEC 2022
m_seki
0
190
競技プログラミングへのお誘い@阪大BOOSTセミナー
kotamanegi
0
330
これでLambdaが不要に?!Step FunctionsのJSONata対応について
iwatatomoya
2
3.4k
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
150
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
110
ブラウザ単体でmp4書き出すまで - muddy-web - 2024-12
yue4u
2
440
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
320
The rollercoaster of releasing an Android, iOS, and macOS app with Kotlin Multiplatform | droidcon Italy
prof18
0
150
Monixと常駐プログラムの勘どころ / Scalaわいわい勉強会 #4
stoneream
0
170
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
510
Designing for Performance
lara
604
68k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Testing 201, or: Great Expectations
jmmastey
40
7.1k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
GraphQLとの向き合い方2022年版
quramy
44
13k
A Modern Web Designer's Workflow
chriscoyier
693
190k
A better future with KSS
kneath
238
17k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
48
2.2k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
RailsConf 2023
tenderlove
29
930
Transcript
None
None
• • •
None
None
⚫ ⚫ ⚫ https://github.com/cncf/toc/blob/master/DEFINITION.md 最近日本語が登場したので差し替えます. ありがとう @yokawasa さん
⚫ ⚫ ⚫ https://github.com/cncf/toc/blob/master/DEFINITION.md 最近日本語が登場したので差し替えます. ありがとう @yokawasa さん
• • • • 高度に発達したシステムの異常は神の怒りと見分けがつかない / IPSJ-ONE 2017 y_uuki https://speakerdeck.com/yuukit/ipsj-one-2017-y-uuki
O‘Reilly『Infrastructure as Code』より
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ Grafana Labs
at KubeCon: What is the Future of Observability? https://grafana.com/blog/2019/05/27/grafana-labs-at-kubecon-what-is-the-future-of-observability/
⚫ ⚫ ⚫ Grafana Labs at KubeCon: What is the
Future of Observability? https://grafana.com/blog/2019/05/27/grafana-labs-at-kubecon-what-is-the-future-of-observability/
⚫ ⚫ ⚫ ⚫ ダッシュボード 通知 設定 時系列 データベース タスク管理
観測 データ収集 データ利用 メール チャット
⚫ ⚫ ダッシュボード 通知 時系列 データベース タスク管理 観測 データ収集 データ利用
メール チャット
⚫ ⚫ 参考資料 https://microservices.io/patterns/service-registry.html https://microservices.io/ ⚫ ⚫ 後述するPromerrheus では…
• • •
None
⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/
https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ https://coreos.com/blog/introducing-operators.html https://operatorhub.io/
実践入門Kubernetes カスタムコントローラへの道 Programming Kubernetes: Developing Cloud-Native Applications
https://prometheus.io/docs/introduction/overview/ OVERVIEW
https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ OpenShift Monitoring - 自律化したPrometheus運用 -
⚫ https://github.com/coreos/prometheus-operator
インスタンス管理 ⚫ Prometheusデプ ロイメントを定義。 リソース定義に一 致するデプロイメ ントが常に実行さ れていることを確 認。 インスタンス管理
Alertmanagerデプ ロイメントを定義。 リソース定義に一 致するデプロイメ ントが常に実行さ れていることを確 認 ルール設定 Prometheusルー ルファイルを定義。 このファイルは、 アラートおよび記 録ルールを含む Prometheusのイ ンスタンスに ロード。 取得対象設定 サービスのグルー プを監視する方法 を宣言的に指定。 定義に基づいて Prometheus設定 ファイルの構成を 自動的に生成 取得対象設定 ポッドのグループ を監視する方法を 宣言的に指定。 定義に基づいて Prometheus設定 ファイルの構成を 自動的に生成
• • •
None
⚫ ⚫ ⚫ https://argoproj.github.io/argo-cd/
⚫ ⚫ ⚫ https://www.weave.works/technologies/gitops/
似たような環境のものが100サイト • • •
似たような環境のものが100サイト ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫
⚫ ⚫ ⚫ ⚫ ⚫ ArgoCD で同じく扱える Helmと悩んだが学習コストが少なくて済むメリットが多かった為 採用
⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫
⚫
kube repo base 各サイト develop production
kube repo base 各サイト develop production resources: # 標準の秘密情報が載ってる -
secret.yaml # 何もデプロイされてない時の為のぺージ表示など - deployment.yaml # 80,443 サービスについて記載されている - service.yaml # 80,443 へのServiceMonitorと prometheusRule が記載 # endpoint の監視だけが監視として追加される。 - prometheusRule.yaml # commonLabelsや Annotations など
kube repo base 各サイト develop production resources: # 標準の秘密情報が載ってる -
secret.yaml # 何もデプロイされてない時の為のぺージ表示など - deployment.yaml # 80,443 サービスについて記載されている - service.yaml # 80,443 へのServiceMonitorと prometheusRule が記載 # endpoint の監視だけが監視として追加される。 - prometheusRule.yaml # commonLabelsや Annotations など ⚫
kube repo base 各サイト develop production resources: # 標準の秘密情報が載ってる -
secret.yaml # 何もデプロイされてない時の為のぺージ表示など - deployment.yaml # 80,443 サービスについて記載されている - service.yaml # 80,443 へのServiceMonitorと prometheusRule が記載 # endpoint の監視だけが監視として追加される。 - prometheusrule.yaml # commonLabelsや Annotations など ⚫
kube repo base 各サイト develop production # baseとなるkustomization.yamlを含むディレクトリ bases: -
../base # リソース名のprefix nameSuffix: "-*-gmo-jp" # patchを当てるためのファイルを指定する patches: - ./deployment.yaml # アクセス情報などは分離しておくと便利が良い resources: - ./ingress.yaml
kube repo base 各サイト develop production # baseとなるkustomization.yamlを含むディレクトリ bases: -
../base # リソース名のprefix nameSuffix: "-*-gmo-jp" # patchを当てるためのファイルを指定する patches: - ./deployment.yaml # アクセス情報などは分離しておくと便利が良い resources: - ./ingress.yaml ⚫
app repo Check app repo container repo Deploy 既存 検証環境による確認
pull req 自動生成 ※1 tag:dev kubernetes repo kustomize generate tag:dev dev.<domain> tag:prd push ※1 kustomize generate prd kube repo
⚫ ⚫ ⚫ ⚫ additionalScrapeConfigs https://github.com/coreos/prometheus-operator/blob/master/Documentation/additional-scrape-config.md additionalAlertManagerConfigs
⚫ ⚫ ⚫ ⚫
None