<p>I've begun testing Google Cloud's Kubernetes Engine new Autopilot feature, and I'm having a fair number of issues with the autoscaling backend.</p>
<p>I have a fairly standard cluster configuration with basically all of the defaults selected.  I'm attempting to deploy a number of microservices backed by a single nginx ingress to manage traffic.</p>
<p>What I'm seeing is that the compute resources are simply not scaling up, and I'm not seeing anything in the configuration that would suggest why this is.</p>
<p>If I review the cluster logs, I see results that explain why the scaling isn't happening, but I have no explanation to explain the problem it's reporting or how to fix them.</p>
<p>For example:</p>
<pre><code>{
  &quot;noDecisionStatus&quot;: {
    &quot;measureTime&quot;: &quot;1623700519&quot;,
    &quot;noScaleUp&quot;: {
      &quot;unhandledPodGroupsTotalCount&quot;: 1,
      &quot;unhandledPodGroups&quot;: [
        {
          &quot;podGroup&quot;: {
            &quot;totalPodCount&quot;: 1,
            &quot;samplePod&quot;: {
              &quot;name&quot;: &quot;proxy-9d779889d-zt8pv&quot;,
              &quot;namespace&quot;: &quot;default&quot;,
              &quot;controller&quot;: {
                &quot;kind&quot;: &quot;ReplicaSet&quot;,
                &quot;apiVersion&quot;: &quot;apps/v1&quot;,
                &quot;name&quot;: &quot;proxy-9d779889d&quot;
              }
            }
          },
          &quot;napFailureReasons&quot;: [
            {
              &quot;messageId&quot;: &quot;no.scale.up.nap.pod.zonal.resources.exceeded&quot;,
              &quot;parameters&quot;: [
                &quot;northamerica-northeast1-c&quot;
              ]
            }
          ]
        }
      ],
...
</code></pre>
<blockquote>
<p>no.scale.up.nap.pod.zonal.resources.exceeded</p>
</blockquote>
<p>This seems to suggest I'm not allowed to scale this single-zone cluster beyond where it currently is.  But I can't see any documentation explaining this limitation. Additionally, the resources I'm currently using seem way too low to be hitting a quota.</p>
<p>The cluster currently reports a total <strong>CPU provision of 3.25, and memory of 12 GB</strong>.</p>
<p>That's using 6 deployments of 1 pod each. I can't imagine that being the limit of a single availability zone in GKE.</p>
<p>The logs are consistently updating, which leads me to believe GKE is <em>trying</em> to scale, but it keeps being declined.  I need to know why and how I can fix that.</p>
<p>Kubernetes version: 1.19.9-gke.1900</p>

<p>Using default configuration will give you a public cluster. The public cluster will assign external IP to each node, which might cause your cluster to hit the IP address quota.</p>
<p>What do you want is to configure the cluster to be a private cluster. Private does not mean it can not be accessed via public, it just means node and pod are isolated from the internet by default.</p>
<p><a href="https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters#all_access" rel="nofollow noreferrer">https://cloud.google.com/kubernetes-engine/docs/how-to/private-clusters#all_access</a></p>
