<p>There are two fields in k8s, requests, and limits. I want to know that whether GKE cost us on requests or limits.</p>
<p>If request is 1Gi and limits is 2Gi
Will I be costed for 1Gi or 2Gi?</p>

<p>There are two different modes of operation in Google Kubernetes Engine: Autopilot (easier to manage, but less flexible) and Standard. They're billed <a href="https://cloud.google.com/kubernetes-engine/pricing#google-kubernetes-engine-pricing" rel="nofollow noreferrer">differently</a>.</p>
<p>In Standard mode, you're essentially <strong>billed for Compute Engine instances</strong> used in your cluster. That means your requests and limits are only used indirectly, as you're expected to be responsible for setting up your cluster so that it's scaled according to those. When doing this, you should remember that some of each node's resources <a href="https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-architecture#node_allocatable" rel="nofollow noreferrer">are required to run the GKE and Kubernetes node components</a> necessary to make that node function as part of your cluster.</p>
<p>In Autopilot mode, you're <strong>billed for resources</strong> - CPU, memory, ephemeral storage - requested by your currently scheduled Pods. The catch is that each Pod in Autopilot mode is <a href="https://cloud.google.com/kubernetes-engine/docs/concepts/autopilot-overview#allowable_resource_ranges" rel="nofollow noreferrer">considered to be a Guaranteed QoS Class Pod</a>:</p>
<blockquote>
<p>Autopilot automatically sets resource limits equal to requests if you
do not have resource limits specified. If you do specify resource
limits, your limits will be overridden and set to be equal to the
requests.</p>
</blockquote>
<p>To be more specific, in your example 2 Gi limit will be overridden and set to 1 Gi, the same as request. You'll be billed accordingly.</p>
