Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Prometheusの話

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.
Avatar for Yuta Imanishi Yuta Imanishi
September 26, 2019

 Prometheusの話

Prometheusの話です。参考資料に各社の採用事例を挙げさせていただきました。
Prometheus Meetup Tokyo行ってみたいです。
途中で”ポート番号の変更に対応する”みたいなことを書きましたが、IPアドレスの変更に対応するのがメインな気もします。

Avatar for Yuta Imanishi

Yuta Imanishi

September 26, 2019

More Decks by Yuta Imanishi

Other Decks in Programming

Transcript

  1. Who am I 名前:今⻄勇太 (東京理科⼤B3) 所属:CTO室CTOアシスタント 技術スタックはWeb寄り 趣味:⾃作キーボード、アニメ (詳細は https://nisshii.dev

    まで) この前コンフル書きました(BitValleyの話) https://confl.arms.dmm.com/pages/vie wpage.action?pageId=404340448
  2. Pull型とPush型の違い Pull型(Prometheusとか) • 監視サーバ上に監視対象につ いての設定を⾏い、監視対象 からデータを集める形 • 監視サーバー側が監視対象⼀ 覧を知っているため、データ 取得の成功/失敗で異常検知

    が可能 • 監視対象の数が変わった場合 に、監視対象リストのアップ デートが必要(対策を後述) Push型(Datadogとか) • 監視対象ホストにエージェン トをインストール、エージェ ントが監視サーバに対して データを送信するという形 • 監視対象を増やしやすい • 監視対象が増えた場合、監視 サーバー側の負荷集中対策が 必要 • 外部接続していないサーバー では使えない
  3. Prometheusの良いとこ悪いとこ 良いとこ • SaaSじゃないので多少は⾃ 由が効き、料⾦も安く済む • K8sとの親和性が⾼い • ServiceDiscoveryの設定が 書きやすい(後述)

    • PromQLが良い(らしい) 悪いとこ • 各Exporterを⽤意する⼿間 (各Exporterの信ぴょう性) • メトリクスの信頼性 (メトリクス単位の整合性より も転送量を重視しているた め、多少の誤差や⽋損がある かも)
  4. 例:EC2インスタンスの監視 scrape_configs: - job_name: 'TEST_PROJECTʼ ec2_sd_configs: - region: ap-northeast-1 access_key:

    XXXXXXXXXXXXXXXXXXX secret_key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX port: 9100 # 監視対象ポート ただ、これだとポート番号を変更するとymlを更新する必要があ り、⾯倒なので tag で設定してあげる⽅が良い
  5. scrape_configs: - job_name: 'TEST_PROJECTʼ ec2_sd_configs: - region: ap-northeast-1 access_key: XXXXXXXXXXXXXXXXXXX

    secret_key: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX port: 9100 # 監視対象ポート relabel_configs: - source_labels: [__meta_ec2_tag_Name] target_label: instance ec2のtagのkey-value set で指定
  6. 参考資料 • https://prometheus.io/docs/prometheus/latest/configuratio n/configuration/ • https://github.com/kubernetes/kubernetes/blob/master/clu ster/addons/prometheus/ • https://github.com/bakins/minikube-prometheus-demo (archivedだけど、必要なことは⼤体載っている)

    • https://developers.cyberagent.co.jp/blog/archives/3814/ (AbemaTVでの実運⽤例、現在もPrometheusを使っている) 他にもクックパッド, Yahoo, PFNでも実運⽤してるようです
  7. 参考資料続き(実運⽤例) • https://speakerdeck.com/rrreeeyyy/cookpad-and- prometheus • https://www.slideshare.net/techblogyahoo/prometheus- 148831678 • https://www.slideshare.net/pfi/prometheus-at-preferred- networks

    上記3つはいずれもPrometheus Tokyo Meetupの資料です。 ⾏ったことがない(前回は6⽉)ので、次回は⾏ってみたいです!!