Home Depot、Kubernetes が稼働する 2,200 以上の店舗をPrometheusでモニタリング

Home Depot、Kubernetes が稼働する 2,200 以上の店舗をPrometheusでモニタリング

Home Depot、Kubernetes が稼働する 2,200 以上の店舗をPrometheusでモニタリング

The Home Depot では、店舗、クラウド、データセンターをつなぐ、高度に分散したハイブリッドおよびマルチクラウドの IT 環境を運用しています。BigQuery に切り替えたことにより、売り上げ予測、在庫管理、パフォーマンス スコアカードの効果が向上した結果生じた変革については、こちらでご確認いただけます。ただし、高度な分析に必要なデータを収集するには、当社のシステムが稼働している必要があります。かつては、当社のすべての環境で稼働しているインフラストラクチャとアプリケーションをモニタリングすることは複雑なプロセスでした。Google Cloud Managed Service for Prometheus は、オブザーバビリティ スタックの主要コンポーネントである指標の統合に役立ちました。現在では、開発者、オペレーター、SRE、セキュリティ チームが指標を一括表示できるようになっています。

ベアメタル版 Kubernetes が稼働する 2,200 以上の店舗をモニタリング

当社は、オンプレミスのデータセンター、クラウド、そして店舗の片隅で、マネージドおよびセルフマネージドの Kubernetes を組み合わせてアプリケーションを稼働させています。実際に 2,200 以上の各店舗で、ベアメタル版 Kubernetes を動かしています。当社が扱っている膨大な数の指標を想像してみてください。たとえば、データを圧縮しなければ、各店舗からの外向きトラフィックは 20~30 Mbps になります。これらの指標を管理することは、すぐに運用上の大きな負担となりました。特に以下の点で苦労しました。

  • ストレージの連携: オープンソースの Prometheus は、スケーリングを考慮して設計されていません。デフォルトでは、1 台のマシン上で稼働し、そのマシン上でローカルに指標を保存します。アプリケーションが拡大していくと、1 台のマシンでは指標をスクレイピングして保存することがすぐにできなくなります。この問題に対処するには、Prometheus の指標を連携させる、つまり複数のマシンから集約して保存します。私たちは当初、オープンソース ソリューションの Thanos を使って指標を集約、保存しようとしましたが、維持するために多くのエンジニアリング リソースが必要となりました。
  • 稼働時間: 連携が複雑になるにつれ、増大し続けるインフラストラクチャのフットプリントを維持し、連携構造が崩れるような指標の変更に対処する必要が出てきます。最終的には、指標のスクレイピング、ストレージ、クエリ サービスの稼働に特化したチームを持つことになります。そこで先ほどの質問に戻ります。SRE マネージャーとして、この指標運用は、ハンマーを購入しやすくするものなのか、アウトソーシングを検討すべき運用上の重荷なのか?
https://storage.googleapis.com/gweb-cloudblog-publish/images/Graphic_1_for_THD_blog.max-1100x1100.jpg

Managed Service for Prometheus が提供する The Home Depot の IT フットプリントの図

当社にとっての正解は、これらすべてにひとつのサービスを利用することでした。そして、Google Cloud Managed Service for Prometheus を選択しました。この選択により、エコシステムや柔軟性など、高く評価している Prometheus の特長(Prometheus 形式の指標を出力するアプリケーションやインフラストラクチャ、その他文字どおりあらゆるものをモニタリング可能)をすべて保持しながら、スケーリングに伴う運用上の大きな負荷を軽減することができました。

The Home Depot のオブザーバビリティを高める一括表示の作成

SRE ディレクターである私の業務のひとつに、優れたアプリケーションの作成に利用できるプロセスやツールを提供し、チームの開発者やオペレーターがより効率的に作業できるようにすることがあります。当社のオブザーバビリティ スタックは、ログ、指標、トレースを結合させて包括的に表示し、IT フットプリント全体を可視化して、根本原因の分析に必要なデータを提供します。

https://storage.googleapis.com/gweb-cloudblog-publish/original_images/The_Home_Depot_blog_recording.gif

The Home Depot の 2,200 以上の店舗で使われている、集約された指標のダッシュボード表示

続きは Google Cloud ブログ へ

事例カテゴリの最新記事