Docker ve Kubernetes bellek kullanımı anlamında


0

Bir ana ve iki çalışan düğüme sahip küçük bir Kubernetes kümesi işletiyorum. Hafıza kullanımını ve kaynakları tüketip tüketmediğimi anlamaya çalışıyorum ... Ve öyleyse, bunu nasıl doğru bir şekilde saptamalıyım.

Düğümlerin her biri 4 GB belleğe sahiptir ve takası yoktur (en iyi uygulamalar için). Düğümlerden birine bakıldığında, konteynerler Docker'a göre 16 GB bellek kullanıyor. Bu nasıl mümkün olabilir?

khost1:~$ docker stats --no-stream --format 'table {{.MemUsage}}' | sed 's/\.\([0-9]*\)GiB/\1MiB/g' | sed 's/[A-Za-z]*//g' | awk '{sum += $1} END {print sum "MB"}'
16436.8MB
khost1:~$ free
              total        used        free      shared  buff/cache   available
Mem:        4039552     3255808      234400       54336      549344      473648
Swap:             0           0           0

Ayrıca, Kubernetes Dashboard’da görebildiğim tek şey, 3.6 GB’ın 11.3 GB’ın (her üç düğümde?) Rezerve edilmiş olmasıdır. Bunun, kapsüllerimin çoğunlukla istek ve sınır belirlemediği için olduğunu sanıyorum. Kubernet'lerin belleği etkin bir şekilde yönetebilmeleri için yapmam gerekir mi?

Yanıtlar:


2

docker stats disk önbelleklemesi için kullanılan ve kullanılan, biraz yanıltıcı olan sayfaları bildirme.

Projeniz kaynak kullanımı konusunda hassassa, kesinlikle kaynak isteklerini kullanmalı ve parametreleri sınırlamalısınız.

Kümenizin kaynak tükenmesini korumak için, Kaynak Kotalarını etkinleştirmek de isteyebilirsiniz.

Etkinleştirdikten sonra, fiili kaynak kullanımını özellikle ad alanındaki bölmelerle kontrol edebileceksiniz.

kubectl describe quota
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.