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.6k
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
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
7
1.3k
転職したらMCPサーバーだった件
nwiizo
14
11k
ここはMCPの夜明けまえ
nwiizo
32
14k
生成AIによるCloud Native基盤構築の可能性と実践的ガードレールの敷設について
nwiizo
8
1.6k
Kubernetesで実現できるPlatform Engineering の現在地
nwiizo
3
2.2k
SLI/SLO・ラプソディあるいは組織への適用の旅
nwiizo
4
1.5k
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
6
5k
Platform Engineeringは自由のめまい
nwiizo
4
2.6k
Site Reliability Engineering on Kubernetes
nwiizo
6
6.4k
Other Decks in Programming
See All in Programming
2度もゼロから書き直して、やっとブラウザでぬるぬる動くAIに辿り着いた話
tomoino
0
150
TypeScript を活かしてデザインシステム MCP を作る / #tskaigi_after_night
izumin5210
5
520
try-catchを使わないエラーハンドリング!? PHPでResult型の考え方を取り入れてみよう
kajitack
3
490
Beyond Portability: Live Migration for Evolving WebAssembly Workloads
chikuwait
0
310
機械学習って何? 5分で解説頑張ってみる
kuroneko2828
0
190
從零到一:搭建你的第一個 Observability 平台
blueswen
1
790
Cursor Meetup Tokyo ゲノミクスとCursor: 進化と制約のあいだ
koido
2
950
Your Architecture as a Crime Scene:Forensic Analysis
manfredsteyer
PRO
0
100
コード書くの好きな人向けAIコーディング活用tips #orestudy
77web
3
270
人には人それぞれのサービス層がある
shimabox
3
660
Rails産でないDBを Railsに引っ越すHACK - Omotesando.rb #110
lnit
1
160
List Unfolding - 'unfold' as the Computational Dual of 'fold', and how 'unfold' relates to 'iterate'"
philipschwarz
PRO
0
180
Featured
See All Featured
BBQ
matthewcrist
89
9.7k
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Practical Orchestrator
shlominoach
188
11k
4 Signs Your Business is Dying
shpigford
183
22k
Six Lessons from altMBA
skipperchong
28
3.8k
Building Applications with DynamoDB
mza
95
6.4k
Docker and Python
trallard
44
3.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
Writing Fast Ruby
sferik
628
61k
Thoughts on Productivity
jonyablonski
69
4.7k
Balancing Empowerment & Direction
lara
1
250
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
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