I'm trying to make sense of container_memory_rss or container_memory_working_set_bytes with respect to node_memory_used i.e (node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes)
Here what I meant
PROMQL 1:
sum(container_memory_rss) by (instance) / 1024 / 1024 / 1024
{instance="172.19.51.8:10250"} 7.537441253662109
PROMQL 2:
sum(node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes) by (instance) / 1024 / 1024 / 1024
{instance="172.19.51.8:9100"} 2.2688369750976562
PROMQL 3:
sum(container_memory_working_set_bytes) by (instance) / 1024 / 1024 / 1024
{instance="172.19.51.8:10250"} 9.285114288330078
PROMQL 4:
sum(node_memory_MemAvailable_bytes) by (instance) / 1024 / 1024 / 1024
{instance="172.19.51.8:9100"} 13.356605529785156
So if a Pod always runs on a Node. I fail to understand why is container_memory_rss or container_memory_working_set_bytes is more than node_memory_used
i.e values for PROMQL 1 and PROMQL 3 are way more than the value of PROMSQL 2 i.e the memory used by the node.
I don't know if I'm correct shouldn't the pod / container rss should always be <= nodes memory used (even if no default resource limit is set)