Kubernetes ResourceQuota and Autoscale

3/23/2020

I have an azure Kubernetes cluster which include 2 types of nodepools inside it. Let's assume vm1 has 2vcpu & 8GB ram and vm2 has 8vcpu & 32GB ram. Also, I have fully functional set of applications which runs on those two nodepools by using nodeSelector/agentpool (some are defined to run on nodepool 1 and other on nodepool 2). Both the nodepools are set up for vm level autoscale as minimun nodepool as 1 and it can extend upto 3. My applications are working perfectly with horizontal pod autoscaling and vm (nodepool) level scalling with current setup. Now I want to set up new cluster include two namespaces with ResourceQuota defined. My problem is let's say we defined 2 namespaces as QA and Dev and assign some ResourceQuota as below for example,

kind: ResourceQuota
metadata:
  name: namespace-quota-allocation
  namespace: myNamespace
spec:
  hard:
    requests.cpu: "1"
    requests.memory: 2Gi
    limits.cpu: "2"
    limits.memory: 2.5Gi

Then how the VM level scale going to happen and how can i test that? can someone explain please.

My current architecture is like this, enter image description here

And I want something like this with vm level scaling enabled, enter image description here

-- anXler
azure-aks
azure-kubernetes
azure-vm-scale-set
horizontal-pod-autoscaling
kubernetes

0 Answers