0

デプロイを管理するカスタム リソースがあります。デプロイを直接スケーリングするのではなく、デプロイの CPU 使用率に基づいて HPA で CR レプリカ数をスケーリングできるようにしたいと考えています。デプロイを直接スケーリングする場合、調整ループがトリガーされると、CR に記載されているようにデプロイ レプリカ数と目的のレプリカ数との不一致がすぐにわかり、それに応じてデプロイが更新されます。

私はかなり近いです。CR のスケール エンドポイントが正常に機能しており、HPA もエンドポイントに到達できます。子のリソース使用量を読み取ることができません。

展開を直接スケーリングする場合も機能しますが、上で述べたように、それは実行可能なソリューションではありません。メトリクス サーバーが正常に機能しており、リソースの使用率が取得可能であることを証明するだけです。

HPA YAML:

kind: HorizontalPodAutoscaler
metadata:
  name: {{.metadata.name}}
  namespace: {{.spec.namespace}}
spec:
  minReplicas: 1
  maxReplicas: 2
  metrics:
  - resource:
      name: cpu
      targetAverageUtilization: 2
    type: Resource
  scaleTargetRef:
    apiVersion: testcrds.group.test/v1alpha1
    kind: MyKind
    name: my-kind-1

そして、HPA が少なくとも CR のスケール エンドポイントに到達できることを証明します。

Name:                                                  my-hpa
Namespace:                                             default
Labels:                                                <none>
Annotations:                                           kubectl.kubernetes.io/last-applied-configuration:
                                                         {"kind":"HorizontalPodAutoscaler","apiVersion":"autoscaling/v2beta1","metadata":{"name":"my-kind-1","namespace":"default","creationTimestamp":n...
CreationTimestamp:                                     Wed, 21 Aug 2019 17:22:11 -0400
Reference:                                             MyKind/my-kind-1
Metrics:                                               ( current / target )
  resource cpu on pods  (as a percentage of request):  <unknown> / 2%
Min replicas:                                          1
Max replicas:                                          2
MLP pods:                                              0 current / 1 desired
Conditions:
  Type         Status  Reason            Message
  ----         ------  ------            -------
  AbleToScale  True    SucceededRescale  the HPA controller was able to update the target scale to 1
Events:
  Type    Reason             Age                   From                       Message
  ----    ------             ----                  ----                       -------
  Normal  SuccessfulRescale  3m54s (x80 over 23m)  horizontal-pod-autoscaler  New size: 1; reason: Current number of replicas below Spec.MinReplicas

ご覧のとおり、リソース使用率の取得にダイスはありません...

4

1 に答える 1

1

私はついにそれを理解しました。従うべきいくつかの手順があるため、簡単な中程度の記事を書きました。記事で回答してください: https://medium.com/@thescott111/autoscaling-kubernetes-custom-resource-using-the-hpa-957d00bb7993

于 2019-08-23T17:02:39.283 に答える