Skip to main content

Hi,

 

I've recently completed a FME Server

deployment on Azure Kubernetes and I'm positively thrilled about the

capabilities of FME Server on this environment.

The automatic scaling of the Azure node pools for dynamic engines makes it very easy for large requests to be handled easily by FME Server.

When you assign a number of engines to a specific node pool with property: “compute” via a helm upgrade command

     - name: "dynamic-group-1"  ->   - name: "dynamic-group-1"

       engines: 2                                               engines: 8

       type: "DYNAMIC"                                type: "DYNAMIC"

       nodeSelector:                                     nodeSelector:

         property: compute                          property: compute          

 

Azure Kubernetes handles this perfectly with autoscaling and start up these nodes and engines without issue.

However, I would expect that when these engines are not in use FME Server would interact with Azure Kubernetes to downscale the VM’s as they are not in use to preserve resources. Now, these VM’s keep running whilst there are no jobs being submitted to these dynamic engines and the deployment should be altered with another helm upgrade command.

Is there something that can be configured via Helm or the values.yaml file to automatically downscale the FME Server dynamic engine nodes?

Hi @marnickcle​ 

 

We don't currently have any examples of this, so unfortunately my only recommendation would be to look into the horizontal pod autoscaler. You can also do a web search to see how other people have used the HPA with external metrics (application metrics like FME), there's a few blogs showing how they did it with applications like nginx.

 


Reply