私は持っている:
- k8s でのサービス A と B の展開
- プロメテウス 1D
サービス B のメトリック m1 が変更されたときに、サービス A をスケーリングしたい。私が見つけた、多かれ少なかれ適切ではないソリューション:
- 仕様の次の部分を使用して、サービス A の HPA を定義できます。
- type: Object
object:
metric:
name: m1
describedObject:
apiVersion: api/v1
kind: Pod
name: certain-pod-of-service-B
current:
value: 10k
技術的には、うまくいきます。ただし、k8s の動的な性質には適していません。また、HPA でポッド メトリック (metrics: - type: Pods pods:) を使用することはできません。これは、サービス A のポッドに対して m1 メトリックを要求するためです (明らかにこれはありません)。
サービス B のポッドから m1 メトリックを照会するプロメテウス アダプターでカスタム メトリックを定義します。
外部指標も同様
非現実的なケースのようには見えないので、何かを見逃していると感じています:)それで、k8sであるサービスを別のサービスのメトリックでスケーリングする方法を教えてください。