Member-only story
Custom Metrics上でスケーリングを使ってKubernetesアプリケーションを構築する方法。 — 第1回
Custom Metrics上でスケーリングを使ってKubernetesアプリケーションを構築する方法についての記事です。今回も長い記事なので2つに分けて投稿します。今回は前半です。手順1~3までをご紹介します。
GitHub Repo: https://github.com/flipstone42/k8s-prometheus-custom-scaling
今回学ぶこと:
joined-upのモニタリング パイプラインのデプロイ
このチュートリアルにあるプロジェクトは、プロジェクトを導入する技術志向の人と、素人の両方のために簡単な内容になっています。 デプロイメントがリアルタイムで拡大することを示す、きちんとした小さなGrafanaダッシュボードが含まれています。
Kubernetes やPrometheusをあまりよく知らない方は、このチュートリアルはあまり役に立たないと思います。詳しい内容については、リンクを貼っておきますが、少なくともシステムについて実践的に理解している必要があります。
私はMinikubeを使用してこれを開発し、NGINXのイングレス設定のみを含めましたが、クラウドプロバイダーまたはディストリビューションで動作するはずです。
Pre-requisites:
•k8sクラスターへのアクセス(k8s version >= 1.8.0)
•おすすめのMinikube
•クラスターで初期化されたHelm
Step 1: Clone the project
まず、スケールするアプリケーションを見てみましょう。Flaskと React フロントエンドを使用してPythonで構築されています。また、優れたコミュニティライブラリである「Flask Prometheus Exporter」も利用しています。
from flask import Flask, render_templatefrom prometheus_flask_exporter.multiprocess import GunicornInternalPrometheusMetrics