Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

• • •

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

⚫ ⚫ ⚫ https://github.com/cncf/toc/blob/master/DEFINITION.md 最近日本語が登場したので差し替えます. ありがとう @yokawasa さん

Slide 7

Slide 7 text

⚫ ⚫ ⚫ https://github.com/cncf/toc/blob/master/DEFINITION.md 最近日本語が登場したので差し替えます. ありがとう @yokawasa さん

Slide 8

Slide 8 text

• • • • 高度に発達したシステムの異常は神の怒りと見分けがつかない / IPSJ-ONE 2017 y_uuki https://speakerdeck.com/yuukit/ipsj-one-2017-y-uuki O‘Reilly『Infrastructure as Code』より

Slide 9

Slide 9 text

⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ 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/

Slide 10

Slide 10 text

⚫ ⚫ ⚫ 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/

Slide 11

Slide 11 text

⚫ ⚫ ⚫ ⚫ ダッシュボード 通知 設定 時系列 データベース タスク管理 観測 データ収集 データ利用 メール チャット

Slide 12

Slide 12 text

⚫ ⚫ ダッシュボード 通知 時系列 データベース タスク管理 観測 データ収集 データ利用 メール チャット

Slide 13

Slide 13 text

⚫ ⚫ 参考資料 https://microservices.io/patterns/service-registry.html https://microservices.io/ ⚫ ⚫ 後述するPromerrheus では…

Slide 14

Slide 14 text

• • •

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

⚫ ⚫ ⚫ ⚫

Slide 17

Slide 17 text

⚫ ⚫ ⚫ ⚫ ⚫

Slide 18

Slide 18 text

⚫ ⚫ ⚫ https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/

Slide 19

Slide 19 text

https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/ ⚫ ⚫ ⚫ ⚫

Slide 20

Slide 20 text

⚫ ⚫ ⚫ https://coreos.com/blog/introducing-operators.html https://operatorhub.io/

Slide 21

Slide 21 text

実践入門Kubernetes カスタムコントローラへの道 Programming Kubernetes: Developing Cloud-Native Applications

Slide 22

Slide 22 text

https://prometheus.io/docs/introduction/overview/ OVERVIEW

Slide 23

Slide 23 text

https://prometheus.io/docs/prometheus/latest/configuration/configuration/#kubernetes_sd_config

Slide 24

Slide 24 text

⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ OpenShift Monitoring - 自律化したPrometheus運用 -

Slide 25

Slide 25 text

⚫ https://github.com/coreos/prometheus-operator

Slide 26

Slide 26 text

インスタンス管理 ⚫ Prometheusデプ ロイメントを定義。 リソース定義に一 致するデプロイメ ントが常に実行さ れていることを確 認。 インスタンス管理 Alertmanagerデプ ロイメントを定義。 リソース定義に一 致するデプロイメ ントが常に実行さ れていることを確 認 ルール設定 Prometheusルー ルファイルを定義。 このファイルは、 アラートおよび記 録ルールを含む Prometheusのイ ンスタンスに ロード。 取得対象設定 サービスのグルー プを監視する方法 を宣言的に指定。 定義に基づいて Prometheus設定 ファイルの構成を 自動的に生成 取得対象設定 ポッドのグループ を監視する方法を 宣言的に指定。 定義に基づいて Prometheus設定 ファイルの構成を 自動的に生成

Slide 27

Slide 27 text

• • •

Slide 28

Slide 28 text

No content

Slide 29

Slide 29 text

⚫ ⚫ ⚫ https://argoproj.github.io/argo-cd/

Slide 30

Slide 30 text

⚫ ⚫ ⚫ https://www.weave.works/technologies/gitops/

Slide 31

Slide 31 text

似たような環境のものが100サイト • • •

Slide 32

Slide 32 text

似たような環境のものが100サイト ⚫ ⚫ ⚫ ⚫

Slide 33

Slide 33 text

⚫ ⚫ ⚫ ⚫ ⚫

Slide 34

Slide 34 text

⚫ ⚫ ⚫ ⚫ ⚫ ArgoCD で同じく扱える Helmと悩んだが学習コストが少なくて済むメリットが多かった為 採用

Slide 35

Slide 35 text

⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫ ⚫

Slide 36

Slide 36 text

kube repo base 各サイト develop production

Slide 37

Slide 37 text

kube repo base 各サイト develop production resources: # 標準の秘密情報が載ってる - secret.yaml # 何もデプロイされてない時の為のぺージ表示など - deployment.yaml # 80,443 サービスについて記載されている - service.yaml # 80,443 へのServiceMonitorと prometheusRule が記載 # endpoint の監視だけが監視として追加される。 - prometheusRule.yaml # commonLabelsや Annotations など

Slide 38

Slide 38 text

kube repo base 各サイト develop production resources: # 標準の秘密情報が載ってる - secret.yaml # 何もデプロイされてない時の為のぺージ表示など - deployment.yaml # 80,443 サービスについて記載されている - service.yaml # 80,443 へのServiceMonitorと prometheusRule が記載 # endpoint の監視だけが監視として追加される。 - prometheusRule.yaml # commonLabelsや Annotations など ⚫

Slide 39

Slide 39 text

kube repo base 各サイト develop production resources: # 標準の秘密情報が載ってる - secret.yaml # 何もデプロイされてない時の為のぺージ表示など - deployment.yaml # 80,443 サービスについて記載されている - service.yaml # 80,443 へのServiceMonitorと prometheusRule が記載 # endpoint の監視だけが監視として追加される。 - prometheusrule.yaml # commonLabelsや Annotations など ⚫

Slide 40

Slide 40 text

kube repo base 各サイト develop production # baseとなるkustomization.yamlを含むディレクトリ bases: - ../base # リソース名のprefix nameSuffix: "-*-gmo-jp" # patchを当てるためのファイルを指定する patches: - ./deployment.yaml # アクセス情報などは分離しておくと便利が良い resources: - ./ingress.yaml

Slide 41

Slide 41 text

kube repo base 各サイト develop production # baseとなるkustomization.yamlを含むディレクトリ bases: - ../base # リソース名のprefix nameSuffix: "-*-gmo-jp" # patchを当てるためのファイルを指定する patches: - ./deployment.yaml # アクセス情報などは分離しておくと便利が良い resources: - ./ingress.yaml ⚫

Slide 42

Slide 42 text

app repo Check app repo container repo Deploy 既存 検証環境による確認 pull req 自動生成 ※1 tag:dev kubernetes repo kustomize generate tag:dev dev. tag:prd push ※1 kustomize generate prd kube repo

Slide 43

Slide 43 text

⚫ ⚫ ⚫ ⚫ additionalScrapeConfigs https://github.com/coreos/prometheus-operator/blob/master/Documentation/additional-scrape-config.md additionalAlertManagerConfigs

Slide 44

Slide 44 text

⚫ ⚫ ⚫ ⚫

Slide 45

Slide 45 text

No content