How do I run HPA and VPA jobs on self-hosted runners with Azure Pipelines?

To run Horizontal Pod Autoscaler (HPA) and Vertical Pod Autoscaler (VPA) jobs on self-hosted runners with Azure Pipelines, you need to configure your Azure Pipeline YAML file to include jobs that specifically handle the deployment and management of these Kubernetes resources. Here’s a simple example to illustrate this process:

trigger: - main pool: name: 'MySelfHostedPool' # The pool you have for self-hosted runners jobs: - job: DeployHPA displayName: 'Deploy Horizontal Pod Autoscaler' steps: - checkout: self - script: | kubectl apply -f hpa.yaml displayName: 'Apply HPA Configuration' - job: DeployVPA displayName: 'Deploy Vertical Pod Autoscaler' dependsOn: DeployHPA steps: - checkout: self - script: | kubectl apply -f vpa.yaml displayName: 'Apply VPA Configuration'

In this example, hpa.yaml and vpa.yaml are the configuration files for the Horizontal and Vertical Pod Autoscalers, respectively. Make sure you have the correct permissions and configurations set up in your Azure Pipeline to access your Kubernetes cluster.


devops HPA VPA Azure Pipelines self-hosted runners Kubernetes autoscaling