Estoy probando GKE con sus gráficos de seguimiento predeterminados.
El resumen del clúster dice que cada nodo (n2-custom-4-8192) tiene 6,36 GB de memoria asignable.
En la página de detalles del nodo, puedo ver que el pico "Usado" es 4,19 cuando se elimina el pod.
Respuesta1
En este caso todo funciona según lo previsto. Supongo que te perdiste información sobre Eviction threshold
.
Allocatable
es el valor de Capacity
menos Reserved
y Eviction Threshold
.
En GKE
documentaciónRecursos asignables de nodoPuede encontrar información sobre la asignación de recursos.
Algunos de los recursos de un nodo son necesarios para ejecutar los
GKE
componentes del nodo de Kubernetes necesarios para que ese nodo funcione como parte de sucluster
. Como tal, puede notar una disparidad entre los recursos totales de su nodo (como se especifica en la documentación del tipo de máquina) y losallocatable
recursos del nodo enGKE
. A medida que los tipos de máquinas más grandes tienden a ejecutar máscontainers
(y, por extensión, más Pods), la cantidad de recursos queGKE
se reservanKubernetes components
aumenta para las máquinas más grandes.Windows Server nodes
También requieremore resources
que un típicoLinux node
. Los nodos necesitan recursos adicionales para tener en cuenta la ejecución del sistema operativo Windows y los componentes de Windows Server que no se pueden ejecutar en contenedores.
Para inspeccionar los recursos asignables de nodo disponibles en un clúster, ejecute el siguiente comando:
$ kubectl describe node ${NodeName} | grep Allocatable -B 7 -A 6
El resultado devuelto contiene campos Capacidad y Asignable con medidas de almacenamiento efímero, memoria y CPU.
Si se desplaza un poco más abajo paraMemoria asignable y recursos de CPULeerás que los recursos asignables se calculan de la siguiente manera:
Allocatable = Capacity - Reserved - Eviction Threshold
Para los recursos de memoria, GKE reserva lo siguiente:
- 255 MiB de memoria para máquinas con menos de 1 GB de memoria
- 25% de los primeros 4GB de memoria
- 20% de los siguientes 4 GB de memoria (hasta 8 GB)
- 10% de los siguientes 8 GB de memoria (hasta 16 GB)
- 6% de los siguientes 112 GB de memoria (hasta 128 GB)
- 2% de cualquier memoria superior a 128 GB