Why does kubernetes memory usage seem higher?
I'm confused which metric is the real process's memory usage
kubernetes top pod
kubectl exec -it cm-gw-ts-skt-b4f5cd9bd-9mz66 -- jstat -gc
pgrep java
1000 3| tail -n 3 | awk '{split($0,a," "); total=a[1]+a[2]+a[5]+a[7]; sum=a[3]+a[4]+a[6]+a[8]; print "used: " sum ", total: " total}'top > 'ss'
please let me know the truth
/ # jstat -gc `pgrep java` 1000 3| tail -n 3 | awk '{split($0,a," "); total=a[1]+a[2]+a[5]+a[7]; sum=a[3]+a[4]+a[6]+a[8]; print "used: " sum ", total: " total}'
used: 316446, total: 1003648
used: 324332, total: 1003648
used: 328515, total: 1003648
/ # java -XX:+PrintFlagsFinal -version | grep -iE 'heapsize|permsize|threadstacksize'
intx CompilerThreadStackSize = 1024 {pd product} {default}
size_t ErgoHeapSizeLimit = 0 {product} {default}
size_t HeapSizePerGCThread = 43620760 {product} {default}
size_t InitialHeapSize = 1027604480 {product} {ergonomic}
size_t LargePageHeapSizeThreshold = 134217728 {product} {default}
size_t MaxHeapSize = 16418603008 {product} {ergonomic}
size_t MinHeapSize = 8388608 {product} {ergonomic}
uintx NonNMethodCodeHeapSize = 5826188 {pd product} {ergonomic}
uintx NonProfiledCodeHeapSize = 122916026 {pd product} {ergonomic}
uintx ProfiledCodeHeapSize = 122916026 {pd product} {ergonomic}
size_t SoftMaxHeapSize = 16418603008 {manageable} {ergonomic}
intx ThreadStackSize = 1024 {pd product} {default}
intx VMThreadStackSize = 1024 {pd product} {default}
I don't know what to do