XV。APIリソースの指標とカスタムインディケータAPI

リソース指標:メトリック・サーバー

リソース指標:メトリック・サーバーの紹介

導入後、K8S V1.8から、Metric-APIリソースインデックスにheapsterアクセスの使用に以前、heapsterが自分の取得パスを持って、ないapiServerによって、そのリソースインデックス前のデータとの直接のアクセス、apiServerことができないユーザー、およびその他のコンポーネントを必要Kubernetesアクセスするためのマスタープロキシ道経由。後でK8SメトリクスServerコンポーネントとリソースインデックスのAPI(メトリックAPI)を紹介するだけでなく、いくつかのデータを収集するために、だけでなく、API、APIを公開したが統一するために、どのように要求しますAPI-サーバーの/apis/metricsメトリックサーバに転送するための要求、解決策は次のとおりですkube-aggregator、もはや他の手段を通じて、K8SでAPIからの直接のインデックスデータリソースはそうありません。

  • 唯一の現在の測定データを照会することができメトリクスAPIは過去のデータを格納していません
  • メトリックのAPI URIは、メンテナンスk8s.io/metrics /apis/metrics.k8s.io/です
  • メトリック・サーバーは、APIを使用するためにKubeletの概要APIを呼び出すことによって取得メトリクス・サーバーのデータを配置する必要があります

メトリックサーバモードインジケータデータ収集は、各ノードkubeletによって提供概要APIからデータを収集することであるノードおよびポッドコア指標データリソース、主にメモリとCPU使用率態様収集情報を収集し、メモリに格納されているが、 kubectlトップ歴史的な状況を介してリソースデータを表示できないときに、他のリソースのインデックスデータは、プロメテウスによって収集されます。

K8Sは、これらのコンポーネントが実行されていないAPI・リソース測定基準、例えばkubectlトップ、HPA、そうでない場合、リソースインデックスAPIインタフェースの機能に応じて多くのコンポーネントです。

監視システムの新世代は、コア指標パイプラインおよびパイプライン監視指標の相乗的組成物で構成されてい

  • パイプライン・コア指標:kubelet、メトリックサーバとなるAPIサーバーが提供するAPI、 CPU累積使用、リアルタイムでのメモリ使用率、ディスク使用率と容器ポッドのリソース使用率
  • パイプライン監視:システムからデータを収集するために使用される指標の種類とエンドユーザに提供される、ストレージシステム及びHPAを、彼らは、多くの非コア指標とコア指標を含みます。非コア指標はK8Sを解決できません

メトリック-Serverの展開

ダウンロードファイルYAML

for i in auth-delegator.yaml auth-reader.yaml metrics-apiservice.yaml metrics-server-deployment.yaml metrics-server-service.yaml resource-reader.yaml;do wget https://raw.githubusercontent.com/kubernetes/kubernetes/master/cluster/addons/metrics-server/$i; done

壁の、ミラーイメージを事前にダウンロードしているので、当然のことながら、手動でもYAML関連ファイルを変更することができます

docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.5
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.5 k8s.gcr.io/metrics-server-amd64:v0.3.5

docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer:1.8.5
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer:1.8.5 k8s.gcr.io/addon-resizer:1.8.5

ファイル、またはエラーを修正します

修正resource-reader.yaml

# 在resources下添加一行nodes/stats, 下列代码为部分代码
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: system:metrics-server
  labels:
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile
rules:
- apiGroups:
  - ""
  resources:
  - pods
  - nodes/stats         #添加此行
  - nodes
  - namespaces

修正metrics-server-deployment.yaml

デフォルトのインデックスデータ取得のHTTPから10255ベースのkubeletのポートが、セキュリティ通信の目的のために、kubeadmクラスタを初期化するとき、それは不可能正常なデータを得ることができる、ポート10255をオフにします

# 第一个container metrics-server的command只留下以下三行
      containers:
      - name: metrics-server
        image: k8s.gcr.io/metrics-server-amd64:v0.3.5
        command:
        - /metrics-server
        - --kubelet-insecure-tls                        # 不验证客户端证书
        - --kubelet-preferred-address-types=InternalIP  # 直接使用节点IP地址获取数据
# 第二个container metrics-server-nanny的command中内存和CPU修改为自己需要的具体的数值
        command:
          - /pod_nanny
          - --config-dir=/etc/config
          - --cpu=20m
          - --extra-cpu=0.5m
          - --memory=200Mi #{{ base_metrics_server_memory }}
          - --extra-memory=50Mi
          - --threshold=5
          - --deployment=metrics-server-v0.3.5
          - --container=metrics-server
          - --poll-period=300000
          - --estimator=exponential
          - --minClusterSize=10

作りますMetric-Server

# 进入到yaml文件目录执行命令
kubectl apply -f ./
# 可以看到pod已经运行起来了
kubectl get pods -n kube-system |grep metrics-server

[root@master ~]# kubectl api-versions|grep metrics #已经可以看到metric的api了
metrics.k8s.io/v1beta1

[root@master ~]# kubectl proxy --port=8080
[root@master ~]# curl http://localhost:8080/apis/metrics.k8s.io/v1beta1
[root@master ~]# curl http://localhost:8080/apis/metrics.k8s.io/v1beta1/nodes
# kubectl可以使用了
[root@master ~]# kubectl top node
NAME     CPU(cores)   CPU%   MEMORY(bytes)   MEMORY%
master   513m         25%    1348Mi          78%
node01   183m         18%    1143Mi          66%

カスタムリソース指標:プロメテウス

プロメテウスは、他の指標の様々な捕捉プロメテウス収集されたメトリックと直接ではなくK8Sに、データ形式の両方に互換性がないため、それはまた別のコンポーネントが必要であることができ(kube-state-metrics)データ形式プロメテウスに認識可能な指標K8S APIインターフェイスを変換しましたフォーマット変換した後、としては、カスタムAPIであるので、我々はまた、使用する必要がありますKubernetes aggregator直接/ APIを/アクセスを通じて順にメインサーバのAPIに登録します。

K8S-プロメテウス・アダプター・プロジェクト

プロメテウス

上記のように、それぞれが専用のホストによってモニターすることができるexporterプログラムインタフェース出力監視データを提供し、待つPrometheus、サーバは、定期的にデータをフェッチします。アラームルールが存在した後、次いで、警報は、警報状態が発生したとする送られる満たし、データをフェッチする場合には、ルールに従って計算されるAlertmanagerアラーム集約及び分布を完了します。アクティブなプッシュ対象のデータを監視するための要求があるときは、することができPushgateway受け、一時的にデータコンポーネントを保存し、その後のを待ちPrometheus、データ収集を完了するためのサーバー。

  • 監視エージェント:もしnode_exporterそのようなように、平均負荷、CPU、メモリ、ディスク、ネットワーク、およびAS指標データ収集ホストの複数のディメンション、からインデックスデータ:
  • kubelet(cAdvisor):回収容器インデックスデータは、K8Sをコア指標を収集し、各コンテナ関連するインデックスデータは:CPU使用率、制限、ファイルシステムを読み書きクォータ制限、及びメモリ使用量、ネットワークパケットの送信、受信をその上率を破棄し。
  • APIサーバー:APIサーバーは、キューの制御性能、要求レートと遅延時間の長さなどを含む、パフォーマンスデータを収集します
  • etcd:メトリックデータの収集は、ストレージクラスタをetcd
  • KUBEステートメトリック:このコンポーネントは、メインカウンタ及びメタデータ情報に関連するインデックスデータのK8Sの複数導出することができる製剤、リソース割り当て、及び容器ステータスポッドリソースラベルシリーズの種類のオブジェクトの総数を含む、リソースタイプに関連付けられています。

プロメテウスを監視し、クラスタの監視をすることができ、すべてのオブジェクトのためのサービス発見システムとしてのAPIサーバーを見つけ
、ここで特別な注意の必要性を、ポッドリソースは、次の注釈情報を追加する必要が自動的プロメテウスシステムを発見することができ、その内蔵のグラブインデックスデータ。

  • prometheus.io/scrape:インデックスデータを取得するかどうかを、真/偽
  • prometheus.io/path:URLパスインデックスデータをフェッチするとき、多くの場合、使用/メトリック
  • prometheus.io/port:インデックスデータをクロールするときに使用するソケットポートのポート番号

唯一の希望プロメテウスは、バックエンド用のカスタム指標を生成すると、あなただけでも持続機能せず、サービスプロメテウスを展開することができます

プロメテウスは、クラスタK8Sで展開しました

githubのアドレス

https://github.com/kubernetes/kubernetes/tree/master/cluster/addons/prometheus

展開されるサービスのリスト

  • node-exporter:プロメテウスエクスポート、監視データのレベルが収集ノード
  • prometheus:サーバ、ノード、輸出からプルアップデータを監視し、時系列データとして記憶されます。
  • kube-state-metrics:プロメテウスは、対応するデータK8SにインデックスPromQLデータにクエリを変換するために使用することができます
  • k8s-prometheus-adpater:重合フィードapiserverは、つまり、カスタム・メトリック・apiserverが実装します
  • 开启Kubernetes aggregator功能(メトリック・サーバー上で参照してください)

すべてのサービスとプラグインのインストールと展開

展開KUBE-状態メトリック

# 下载相关yaml文件
for i in kube-state-metrics-deployment.yaml kube-state-metrics-rbac.yaml kube-state-metrics-service.yaml; do wget https://raw.githubusercontent.com/kubernetes/kubernetes/master/cluster/addons/prometheus/$i; done
# 所有节点都要执行
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer:1.8.6
docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/addon-resizer:1.8.6 k8s.gcr.io/addon-resizer:1.8.6
docker pull quay-mirror.qiniu.com/coreos/kube-state-metrics:v1.3.0
docker tag quay-mirror.qiniu.com/coreos/kube-state-metrics:v1.3.0 quay.io/coreos/kube-state-metrics:v1.3.0
# 查看提供的指标数据
curl 10.105.51.200:8080/metrics  # 10.105.51.200 是Service的IP

展開とノードの輸出輸出

9100ポートをリスニング
実際、kubeletまたはcAdvisorによりインデックスデータノードを提供することができ、各ノード自体は、プログラムをnode_exporterインストールする必要はありません

for i in node-exporter-ds.yml node-exporter-service.yaml; do wget https://raw.githubusercontent.com/kubernetes/kubernetes/master/cluster/addons/prometheus/$i; done
kubectl apply -f ./
curl 10.0.0.51:9100/metrics  # 10.0.0.51是node01节点的IP

警報システムのAlertManager

prometheusアラームルールに送信アラーム情報alertmanager、及びその後alertmanager受信したアラーム情報の重複を含む処理、および受信側警報にルートパケットの
永続ストレージ・ボリュームを使用してのAlertManager、PVC、ここでしかテストし、そのように修飾のこの部分;ポート9093は、Web UIになります

for i in alertmanager-configmap.yaml alertmanager-deployment.yaml alertmanager-pvc.yaml alertmanager-service.yaml; do wget https://raw.githubusercontent.com/kubernetes/kubernetes/master/cluster/addons/prometheus/$i; done
# 修改alertmanager-deployment.yaml的pvc设置
      volumes:
        - name: config-volume
          configMap:
            name: alertmanager-config
        - name: storage-volume
          emptyDir: {}
#          persistentVolumeClaim:
#            claimName: alertmanager
# 修改alertmanager-service.yaml
spec:
  ports:
    - name: http
      port: 80
      protocol: TCP
      targetPort: 9093
      nodePort: 30093
  selector:
    k8s-app: alertmanager
  type: "NodePort"
kubectl apply -f ./
kubectl get deployments -n kube-system
# 浏览器可以直接访问到Web UI
http://10.0.0.50:30093/#/alerts

サービス展開プロメテウス

プロメテウスは、ウェブUI、ポート9090、必要な記憶容量を提供volumeClaimTemplatesによって提供され、これだけテストので、変形のこの部分ので、取付配備マルコの使用

# 官方安装yaml文件
for i in prometheus-configmap.yaml prometheus-rbac.yaml prometheus-service.yaml prometheus-statefulset.yaml; do wget https://raw.githubusercontent.com/kubernetes/kubernetes/master/cluster/addons/prometheus/$i; done

# 马哥安装yaml文件
git clone https://github.com/iKubernetes/k8s-prom.git && cd k8s-prom #我只使用了这里边的prometheus文件, 并且把namespace统一修改成了kube-system
[root@master prometheus]# ls
prometheus-cfg.yaml  prometheus-deploy.yaml  prometheus-rbac.yaml  prometheus-svc.yaml

kubectl apply -f ./
# 查看Web UI: 
http://10.0.0.50:30090

カスタムメトリックアダプタK8S-プロメテウスアダプタ

PromQLが直接カスタム指標などのデータソースへのインターフェイスではない、それはサーバは、重合APIではありません
が必要ですk8s-prometheus-adapter

# 配置ssl证书
cd /etc/kubernetes/pki/
(umask 077;openssl genrsa -out serving.key 2048)
openssl req -new -key serving.key -out serving.csr -subj "/CN=serving"
openssl x509 -req -in serving.csr -CA /etc/kubernetes/pki/ca.crt -CAkey /etc/kubernetes/pki/ca.key -CAcreateserial -out serving.crt -days 3650

カスタムメトリックのデフォルトの名前空間で展開K8S-プロメテウス・アダプタは、この名前空間に秘密のオブジェクトを作成します

serving.crtとserving.keyと呼ばれる証明書と秘密鍵、

cd /etc/kubernetes/pki/
kubectl create namespace custom-metrics
kubectl create secret generic cm-adapter-serving-certs -n custom-metrics --from-file=serving.crt=./serving.crt --from-file=serving.key=./serving.key
git clone https://github.com/DirectXMan12/k8s-prometheus-adapter
cd k8s-prometheus-adapter/deploy/manifests/
# 编辑:custom-metrics-apiserver-deployment.yaml 第28行. 因为我的promethus部署在了kube-system名称空间中
--prometheus-url=http://prometheus.prom.svc:9090/  -> --prometheus-url=http://prometheus.kube-system.svc:9090/
# 查看API
kubectl api-versions | grep custom
# 列出指标名称
kubectl get --raw "/apis/custom.metrics.k8s.io/v1beta1" | jq '.resources[].name'
# 查看pod内存占用率
kubectl get --raw "/apis/custom.metrics.k8s.io/v1beta1/namespaces/kube-system/pods/*/memory_usage_bytes" | jq 

HPA自動弾性スケーリング

自動格納式の伸縮ツールオートスケーリング:

  • HPA、水平ポッドAutoscaler、二つのバージョン、HPAインデックスCPUのサポートのみ; HPAv2サポートリソースインデックスAPIおよびカスタムメトリックスAPI
  • CA、クラスタAutoscaler、弾性伸縮クラスタサイズは自動的に、自動的にクラウド環境のノードの数を増減することができ
  • VPA、垂直ポッドAutoscaler、ポッド垂直スケーリングアプリケーションツール、伸縮を完了するために、オブジェクトポッドのCPUとメモリのリソース要件を調整します
  • AR、リソースの追加の構成要素に対する需要を調整するために、クラスタ内のノードの数に基づいて、アドオンリサイズ、アプリケーションポッド垂直スケーリングツールの簡略版、

水平方向のポッド自動スケーリングが可能CPU使用率に応じて(内存为不可压缩资源)自動伸縮複製コントローラー、展開またはポッドレプリカセットの数。

HPA自体は制御周期、--horizo​​ntal-POD-autoscaler-SYNC-によって定義される周期である周期オプションコントローラマネージャの、デフォルトの30秒
ポッドは未定義ターゲットリソース要求のために、コントローラは、容器HPAのCPU使用率を定義することはできません率は、および指標の任意のアクションを取ることはありません
ポッドカスタム指標のそれぞれに対して、HPAだけでなく、元の値の利用方法

ジッタを防止するために、遅延量削減5分のデフォルトの長さ、時間遅延拡張長さ3分、

HPAは、現在、2つだけのバージョンが、あるバージョンのみV1定義コア指標をサポートをサポートします。

[root@master ~]# kubectl api-versions |grep autoscaling
autoscaling/v1           # 仅支持CPU一种资源指标的扩容
autoscaling/v2beta1      # 支持更多自定义资源指标的扩容
autoscaling/v2beta2      # 支持更多自定义资源指标的扩容

実験1:HPA

コマンドラインで限られたリソースでポッドを作成します

kubectl run myapp --image=ikubernetes/myapp:v1 --replicas=1 --requests='cpu=50m,memory=100Mi' --limits='cpu=50m,memory=100Mi' --labels='app=myapp' --expose --port=80
[root@master ~]# kubectl get pod
NAME                   READY   STATUS    RESTARTS   AGE
myapp-cf57cd7b-2r6q2   1/1     Running   0          2m3s

ここでは、ポッドことができ、自動的に水平展開をmyappにしましょう

kubectlオートスケールでは、実際には、それはHPAコントローラを作成することです

kubectl autoscale deployment myapp --min=1 --max=8 --cpu-percent=60
# --min:表示最小扩展pod的个数  
# --max:表示最多扩展pod的个数 
# --cpu-percent:cpu利用率
[root@master ~]# kubectl get hpa
NAME    REFERENCE          TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
myapp   Deployment/myapp   0%/60%    1         8         1          4m14s
kubectl patch svc myapp -p '{"spec":{"type": "NodePort"}}'
kubectl get svc |grep myapp

# [root@master ~]# kubectl get svc |grep myapp
# myapp        NodePort    10.99.246.253   <none>        80:31835/TCP   11m
#压测命令
ab -c 100 -n 500000000 http://10.0.0.51:30304/index.html 

[root@master manifests]# kubectl describe hpa |grep -A 3 "resource cpu"
  resource cpu on pods  (as a percentage of request):  81% (40m) / 60%
Min replicas:                                          1
Max replicas:                                          8
Deployment pods:                                       3 current / 3 desired

[root@master manifests]# kubectl get pod
NAME                   READY   STATUS    RESTARTS   AGE
myapp-cf57cd7b-2lqdx   1/1     Running   0          14m
myapp-cf57cd7b-bwm4h   1/1     Running   0          3m19s
myapp-cf57cd7b-fc5ns   1/1     Running   0          91s
# 压测结束五分钟后, 资源恢复到初始值
[root@master manifests]# kubectl describe hpa |grep -A 3 "resource cpu"
  resource cpu on pods  (as a percentage of request):  0% (0) / 60%
Min replicas:                                          1
Max replicas:                                          8
Deployment pods:                                       1 current / 1 desired
[root@master manifests]# kubectl get pod
NAME                   READY   STATUS    RESTARTS   AGE
myapp-cf57cd7b-2lqdx   1/1     Running   0          22m

実験2:HPA v2の

HPA(V2)コア指標メトリックサーバからの支援要求を、カスタムメトリックK8S-プロメテウス・アダプタAPIからデータを取得し、カスタムクラス、場合指数計算複数の、大勝利の数値結果

ルールナンバーワン

apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
  name: myapp
spec:
  scaleTargetRef:  # 要缩放的目标资源
    apiVersion: apps/v1
    kind: Deployment
    name: myapp
  minReplicas: 2
  maxReplicas: 10
  metrics:
  - type: Resource
    resource:
      name: cpu
      targetAverageUtilization: 50
  - type: Resource
    resource:
      name: memory
      targetAverageValue: 50Mi

メトリックは、コピーポッドインデックスリストの必要数を算出するのコピーの最終数の全ての結果を取って、各指標について別々に計算された最大値と

  • 外部:非基準グローバルインデックスに取り付けられた任意のオブジェクト、インデックスデータは、メッセージキューの長さとして、クラスタ以外の部品であってもよいです
  • 目的:このようなヒット毎秒他のオブジェクトの入力でのように、単一のオブジェクトの特定のクラスタ索引の説明を参照
  • ポッド:特定の参照インデックスが現在伸縮性オブジェクトポッドであります
  • リソース:リソース参照インデックス、すなわち、要求は現在弾性伸縮容器であるポッド限界定義メトリックオブジェクト
  • タイプ:オブジェクトのタイプインジケータソース、ポッド、リソース

ルール番号2

/メトリックおよびパス出力によってikubernetes /メトリクスアプリランタイムはhttp_requests_total http_requests_per_second 2つのインジケータは
prometheus.io/scrape:"true注意「ポッドは、メトリックPromethuesを収集するオブジェクトを有効にします

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: metrics-app
  name: metrics-app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: metrics-app
  template:
    metadata:
      labels:
        app: metrics-app
      annotations:
        prometheus.io/scrape: "true"
        prometheus.io/port: "80"
        prometheus.io/path: "/metrics"
    spec:
      containers:
      - image: ikubernetes/metrics-app
        name: metrics-app
        ports:
        - name: web
          containerPort: 80
        resources:
          requests:
            cpu: 200m
            memory: 256Mi
        readinessProbe:
          httpGet:
            path: /
            port: 80
          initialDelaySeconds: 3
          periodSeconds: 5
        livenessProbe:
          httpGet:
            path: /
            port: 80
          initialDelaySeconds: 3
          periodSeconds: 5
---
apiVersion: v1
kind: Service
metadata:
  name: metrics-app
  labels:
    app: metrics-app
spec:
  ports:
  - name: web
    port: 80
    targetPort: 80
  selector:
    app: metrics-app
curl 10.98.175.207/metrics  # IP为上一个文件创建的service IP

HPAの作成

Prometheusポッド新しく、その後で提供取得オブジェクト識別指数と注釈に含まれる構成情報に応じて、サービス発見機構で見つかったオブジェクトを作成しk8s-prometheus-adapter、これらのメトリックは、カスタムAPIに登録し、それがに提供されHPA(v2)、コントローラなどをスケジュールするスケジューラは、評価パラメータとして使用されています

apiVersion: autoscaling/v2beta1
kind: HorizontalPodAutoscaler
metadata:
  name: metrics-app-hpa
spec:
  scaleTargetRef:
    apiVersion: apps/v1
    kind: Deployment
    name: metrics-app
  minReplicas: 2
  maxReplicas: 10
  metrics:
  - type: Pods
    pods:
      metricName: http_requests_per_second
      targetAverageValue: 800m # 800m 即0.8个/秒
# 压测命令
while true; do curl 10.98.175.207/metrics &>/dev/null; sleep 0.1; done # IP为service IP

圧力試験結果

[root@master ~]# kubectl describe hpa metrics-app-hpa |grep -A 4 Metrics
Metrics:                               ( current / target )
  "http_requests_per_second" on pods:  4350m / 800m
Min replicas:                          2
Max replicas:                          10
Deployment pods:                       10 current / 10 desired

http_requests_per_secondをカスタム指標を追加します。

編集k8s-prometheus-adapter/deploy/manifests/custom-metrics-config-map.yamlルールを追加します。

    rules:
    - seriesQuery: 'http_requests_total{kubernetes_namespace!="",kubernetes_pod_name!=""}'
      resources:
        overrides:
          kubernetes_namespace: {resource: "namespace"}
          kubernetes_pod_name: {resource: "pod"}
      name:
        matches: "^(.*)_total"
        as: "${1}_per_second"
      metricsQuery: 'sum(rate(<<.Series>>{<<.LabelMatchers>>}[2m])) by (<<.GroupBy>>)'

カスタムルール参考資料:

K8Sカスタム指標にアップグレードプロメテウス指標は、我々はルールを定義する必要があります

  • https://github.com/DirectXMan12/k8s-prometheus-adapter/blob/master/docs/config-walkthrough.md
  • https://github.com/DirectXMan12/k8s-prometheus-adapter/blob/master/docs/walkthrough.md

http_requests_totalコマンドhttp_requests_per_secondカスタム指標は
設定を有効にすることができます:
あなたは、カスタム・メトリック・apiserver-XXXXポッドマニュアルはカスタム距離空間の削除カスタムメトリクス-CONFIG-map.yamlを使用する必要があります
注:設定マップを変更した後、削除しないでくださいポッドは、有効になりません。

テスト:
PODS -w GET kubectl
カール10.104.226.230/metrics
kubectl ITの迅速化クライアント--image RUN = cirros --rm - / binに/ SH
trueにしばらく;やるカールHTTPを://のApp-メトリクス; I ++はLET; SLEEP 0 。$ RANDOM;#アナログ圧力をやっ

とき5分、3分のとき、遅延拡張の長さディレイボリューム削減のデフォルトの長さ:テストに達することはので、自動拡張を確認するために数分を必要とした後、

参考リンク

https://www.cnblogs.com/fawaikuangtu123/p/11296510.html
https://www.qingtingip.com/h_252011.html
https://www.servicemesher.com/blog/prometheus-operator-manual/
ます。https: //www.cnblogs.com/centos-python/articles/10921991.html
https://pdf.us/tag/docker

おすすめ

転載: www.cnblogs.com/peitianwang/p/11607677.html