成人性生交大片免费看视频r_亚洲综合极品香蕉久久网_在线视频免费观看一区_亚洲精品亚洲人成人网在线播放_国产精品毛片av_久久久久国产精品www_亚洲国产一区二区三区在线播_日韩一区二区三区四区区区_亚洲精品国产无套在线观_国产免费www

主頁 > 知識庫 > docker 內存監(jiān)控與壓測方式

docker 內存監(jiān)控與壓測方式

熱門標簽:陜西辦理400電話 宿州外呼系統(tǒng)公司 貴陽網絡外呼系統(tǒng)軟件 株洲電銷 海外工廠地圖標注 南昌外呼系統(tǒng)定制 信陽電銷外呼系統(tǒng)怎么樣 南充電銷外呼系統(tǒng) 地圖標注小程序

一直運行的docker容器顯示內存已經耗盡,并且容器內存耗盡也沒出現(xiàn)重啟情況,通過后臺查看發(fā)現(xiàn)進程沒有占用多少內存。內存的監(jiān)控使用的是cadvisor,計算方式也是使用cadvisor的頁面計算方式,所以決定對docker的內存計算做下研究。

docker version:

Client:
 Version:  1.12.6
 API version: 1.24
 Go version: go1.6.4
 Git commit: 78d1802
 Built:  Tue Jan 10 20:20:01 2017
 OS/Arch:  linux/amd64

Server:
 Version:  1.12.6
 API version: 1.24
 Go version: go1.6.4
 Git commit: 78d1802
 Built:  Tue Jan 10 20:20:01 2017
 OS/Arch:  linux/amd64

kubernetes version:

Client Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.2+coreos.0", GitCommit:"4c0769e81ab01f47eec6f34d7f1bb80873ae5c2b", GitTreeState:"clean", BuildDate:"2017-10-25T16:24:46Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.2+coreos.0", GitCommit:"4c0769e81ab01f47eec6f34d7f1bb80873ae5c2b", GitTreeState:"clean", BuildDate:"2017-10-25T16:24:46Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}

1.創(chuàng)建pod yaml文件,使用busybox鏡像做測試,對鏡像設定2核2G內存的限制

[docker@k8s busybox]$ cat busybox.yaml


apiVersion: v1
kind: Pod
metadata:
 name: busybox
 namespace: default
spec:
 containers:
 - image: registry.dcos:8021/public/busybox:latest
 command:
  - sleep
  - "3600"
 imagePullPolicy: IfNotPresent
 name: busybox
 resources:
  limits:
  cpu: "2"
  memory: 2Gi
  requests:
  cpu: 100m
  memory: 64Mi
 restartPolicy: Always

2.通過kubectl命令生成busybox服務

[docker@k8s busybox]$ kubectl create -f busybox.yaml


pod "busybox" created

3.進入容器的/sys/fs/cgroup/memory目錄,ls查看得到如下文件

-rw-r--r-- 1 root  root   0 May 31 03:18 cgroup.clone_children
--w--w--w- 1 root  root   0 May 31 03:18 cgroup.event_control
-rw-r--r-- 1 root  root   0 May 31 03:18 cgroup.procs
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.failcnt
--w------- 1 root  root   0 May 31 03:18 memory.force_empty
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.kmem.failcnt
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.kmem.limit_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.kmem.max_usage_in_bytes
-r--r--r-- 1 root  root   0 May 31 03:18 memory.kmem.slabinfo
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.kmem.tcp.failcnt
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.kmem.tcp.limit_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.kmem.tcp.max_usage_in_bytes
-r--r--r-- 1 root  root   0 May 31 03:18 memory.kmem.tcp.usage_in_bytes
-r--r--r-- 1 root  root   0 May 31 03:18 memory.kmem.usage_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.limit_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.max_usage_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.memsw.failcnt
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.memsw.limit_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.memsw.max_usage_in_bytes
-r--r--r-- 1 root  root   0 May 31 03:18 memory.memsw.usage_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.move_charge_at_immigrate
-r--r--r-- 1 root  root   0 May 31 03:18 memory.numa_stat
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.oom_control
---------- 1 root  root   0 May 31 03:18 memory.pressure_level
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.soft_limit_in_bytes
-r--r--r-- 1 root  root   0 May 31 03:18 memory.stat
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.swappiness
-r--r--r-- 1 root  root   0 May 31 03:18 memory.usage_in_bytes
-rw-r--r-- 1 root  root   0 May 31 03:18 memory.use_hierarchy
-rw-r--r-- 1 root  root   0 May 31 03:18 notify_on_release
-rw-r--r-- 1 root  root   0 May 31 03:18 tasks

我們主要關注一下幾個文件

文件名 含義
memory.usage_in_bytes 已使用的內存量(包含cache和buffer)(字節(jié)),相當于linux的used_meme
memory.limit_in_bytes 限制的內存總量(字節(jié)),相當于linux的total_mem
memory.failcnt 申請內存失敗次數(shù)計數(shù)
memory.stat 內存相關狀態(tài)

memory.stat的文件包含的內容

字段 含義
cache 頁緩存,包括 tmpfs(shmem),單位為字節(jié)
rss 匿名和 swap 緩存,不包括 tmpfs(shmem),單位為字節(jié)
mapped_file memory-mapped 映射的文件大小,包括 tmpfs(shmem),單位為字節(jié)
pgpgin 存入內存中的頁數(shù)
pgpgout 從內存中讀出的頁數(shù)
swap swap 用量,單位為字節(jié)
active_anon 在活躍的最近最少使用(least-recently-used,LRU)列表中的匿名和 swap 緩存,包括 tmpfs(shmem),單位為字節(jié)
inactive_anon 不活躍的 LRU 列表中的匿名和 swap 緩存,包括 tmpfs(shmem),單位為字節(jié)
active_file 活躍 LRU 列表中的 file-backed 內存,以字節(jié)為單位
inactive_file 不活躍 LRU 列表中的 file-backed 內存,以字節(jié)為單位
unevictable 無法再生的內存,以字節(jié)為單位
hierarchical_memory_limit 包含 memory cgroup 的層級的內存限制,單位為字節(jié)
hierarchical_memsw_limit 包含 memory cgroup 的層級的內存加 swap 限制,單位為字節(jié)

查看memory.limit_in_bytes文件

/sys/fs/cgroup/memory # cat memory.limit_in_bytes 
2147483648

計算容器的限制內存為2g,和yaml文件里面定義的限制內存一樣。查看memory.usag_in_bytes文件

/sys/fs/cgroup/memory # cat memory.usage_in_bytes 
2739376

通過docker stats 容器id查看容器的占用內存,和memory.usage_in_bytes的數(shù)據相符。

4.使用dd命令快速生成1.5g大文件

~ # dd if=/dev/zero of=test bs=1M count=1500
1500+0 records in
1500+0 records out
1572864000 bytes (1.5GB) copied, 1.279989 seconds, 1.1GB/s

再次通過docker stats 容器id查看容器的占用內存

查看memory.usage_in_bytes文件

/sys/fs/cgroup/memory # cat memory.usage_in_bytes 
1619329024

發(fā)現(xiàn)容器的占用內存達到了1.5g,查看memory.stat

/sys/fs/cgroup/memory # cat memory.stat
cache 1572868096
rss 147456
rss_huge 0
mapped_file 0
dirty 1572868096
writeback 0
swap 0
pgpgin 384470
pgpgout 433
pgfault 607
pgmajfault 0
inactive_anon 77824
active_anon 12288
inactive_file 1572864000
active_file 4096
unevictable 0
hierarchical_memory_limit 2147483648
hierarchical_memsw_limit 4294967296
total_cache 1572868096
total_rss 147456
total_rss_huge 0
total_mapped_file 0
total_dirty 1572868096
total_writeback 0
total_swap 0
total_pgpgin 384470
total_pgpgout 433
total_pgfault 607
total_pgmajfault 0
total_inactive_anon 77824
total_active_anon 12288
total_inactive_file 1572864000
total_active_file 4096
total_unevictable 0

memory.stat文件中的cache字段添加了1.5g,而inactive_file字段為1.5g,因此,dd所產生的文件cache計算在inactive_file上。這就導致了所看到的容器內存的監(jiān)控居高不下,因為cache是可重用的,并不能反映進程占用內存。

一般情況下,計算監(jiān)控內存可根據計算公式:

active_anon + inactive_anon = anonymous memory + file cache for tmpfs + swap cache
Therefore
active_anon + inactive_anon ≠ rss, because rss does not include tmpfs.
active_file + inactive_file = cache - size of tmpfs

所以實際內存使用計算為:

real_used = memory.usage_in_bytes - (active_file + inactive_file)

5.壓測

(1)準備tomcat鏡像和jmeter壓測工具,tomcat的yaml文件如下

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
 name: tomcat-deployment
spec:
 replicas: 1
 template:
 metadata:
  labels:
  app: tomcat
 spec:
  containers:
  - name: tomcat
  image: registy.dcos:8021/public/tomcat:8
  ports:
  - containerPort: 8080
  resources:
   limits:
   cpu: "1"
   memory: 300Mi
--- 
apiVersion: v1
kind: Service
metadata:
 labels:
 name: tomcat
 name: tomcat
 namespace: default
spec:
 ports:
 - name: tomcat
 port: 8080
 protocol: TCP
 targetPort: 8080
 type: NodePort 
 selector:
 app: tomcat

yaml文件中限制tomcat鏡像的使用內存為300Mi,執(zhí)行命令生成文件。通過docker stats查看沒有負載情況下tomcat容器的內存占用。

(2)提取tomcat的service nodePort端口

[docker@ecs-5f72-0006 ~]$ kubectl get svc tomcat -o=custom-columns=nodePort:.spec.ports[0].nodePort
nodePort
31401

(3)登陸jmeter官網下載壓測工具

在windows上運行jmeter工具,到bin目錄點擊運行jmeter,配置jmeter如下:

配置好測試選項后點擊啟動按鈕開始壓測,通過docker stats查看容器內存使用情況發(fā)現(xiàn)已經到達限制。

通過kubectl get pods查看pod的運行情況發(fā)現(xiàn)tomcat由于內存超過限制值被kill掉。

總結

關于docker stats內存監(jiān)控的問題一直存在,docker將cache/buffer納入內存計算引起誤解。docker內存的計算方式和linux的內存使用計算方式一致,也包含了cache/buffer。

但是cache是可重復利用的,經常使用在I/O請求上,使用內存來緩解可能被再次訪問的數(shù)據,為提高系統(tǒng)性能。

在官方github上,也有很多人提交了關于內存監(jiān)控的issue,直到了Docker 17.06版本,docker stats才解決了這個問題。

但是這也僅僅是docker stats的顯示看起來正常了,而進入容器查看內存的使用還是包含的cache,如果直接使用cadvisor搜集的數(shù)據,還是會出現(xiàn)包含了cache的情況。

通過壓測docker,最后發(fā)現(xiàn)當壓測到程序的限制內存時,pod出現(xiàn)重啟,這也解釋了我們在使用docker監(jiān)控時,即使內存占用99%+,卻不出現(xiàn)pod重啟的情況,這里面有相當一部分的內存是cache占用。

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽:開封 拉薩 三明 石嘴山 汕頭 晉城 鄭州 玉林

巨人網絡通訊聲明:本文標題《docker 內存監(jiān)控與壓測方式》,本文關鍵詞  docker,內存,監(jiān)控,與,壓測,;如發(fā)現(xiàn)本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統(tǒng)采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《docker 內存監(jiān)控與壓測方式》相關的同類信息!
  • 本頁收集關于docker 內存監(jiān)控與壓測方式的相關信息資訊供網民參考!
  • 推薦文章
    欧美另类中文字幕| 波多野吉衣中文字幕| 九九热中文字幕| japan乱配videos老少配| 国内自拍视频在线播放| 亚洲精品男人天堂| 99国产精品久久久久久久成人热| 午夜少妇久久久久久久久| 综合伊思人在钱三区| 欧美日韩一区二区三区视频播放| 欧美午夜精品伦理| 色视频www在线播放国产成人| 日本欧美在线视频免费观看| 亚洲依依成人| 亚洲国产剧情在线观看| 午夜黄色福利视频| 激情五月激情综合| 极品校花啪啪激情久久| 久久精品一区二区三区不卡牛牛| 免费av福利| 精人妻一区二区三区| 国产va在线视频| h视频在线观看网站| 4hu四虎永久网址| 国产一区二区在线网站| 琪琪亚洲精品午夜在线| 久久蜜桃资源一区二区老牛| 久久夜夜操妹子| 国产精一区二区三区| 国产福利91精品一区| 日本一区二区免费视频| 午夜性色福利视频| 青青青草原在线| 欧美精品一二三| 污污视频在线观看网站| 亚洲欧美另类久久久精品2019| 色视频www在线播放国产| 欧美凹凸一区二区三区视频| 国产偷亚洲偷欧美偷精品| 久久久久无码国产精品一区| 26uuu亚洲电影| 国产91精品免费| 亚洲精品乱码久久久久久不卡| 国产精品第一页第二页第三页| 羞羞视频在线免费国产| 欧美电影在线观看完整版| 久久久久久久国产视频| 中文字幕欧美在线观看| 久久人体做爰大胆| 五月香视频在线观看| 免费不卡在线观看av| 黑人玩弄人妻一区二区三区| 蜜臀a∨国产成人精品| 岛国大片在线免费观看| 亚洲pron| 91精品久久香蕉国产线看观看| 美国毛片一区二区| 久久五月天综合| 国产免费一区二区三区免费视频| 日本亚洲色大成网站www久久| 无码人妻一区二区三区一| 日韩一区二区在线播放| 婷婷中文字幕综合| 亚洲欧美www| 日韩欧美在线字幕| 美女视频黄的免费| 日本超碰在线观看| 国产精品久久久久久亚洲av| 精彩视频一区二区三区| 黄色a级片免费看| 一区二区三区视频网站| 中文字幕欧美色图| 成人久久久久久久| 国产一区二区女| 亚洲高清免费在线观看| 中文字幕日本一区| 欧美日本久久| 91影院未满十八岁禁止入内| 亚洲网友自拍偷拍| 国语精品免费视频| 成人国产视频在线| 亚洲精品视频自拍| 国产黄网站在线观看| 嫩草嫩草嫩草嫩草嫩草| 国产日韩欧美一区| 九九九九精品九九九九| 日韩啪啪网站| 亚洲色欲久久久综合网东京热| 久久视频在线直播| 最近中文字幕mv免费高清在线| 内射中出日韩无国产剧情| 久久高清免费观看| 亚洲视屏在线播放| 国产美女极品在线| 久久这里精品国产99丫e6| 小小影院久久| 一本色道无码道dvd在线观看| 91麻豆精品国产91久久久平台| 欧美久久影院| 久久99亚洲精品| 欧美精品在线观看| 欧美日韩在线观看视频| 久久久精品在线视频| 亚洲成av人片乱码色午夜| 欧美在线观看网址综合| 综合分类小说区另类春色亚洲小说欧美| 日韩一级视频在线观看| 在线a免费观看| 亚洲国产精品视频在线观看| 成人视屏免费看| 亚洲综合激情在线| 欧美三级免费| 福利一区福利二区| 欧美成a人片在线观看久| 久久99精品久久久久久噜噜| 亚洲精品怡红院| 成人爽a毛片| 久久久99精品久久| 91麻豆国产在线| 国产aⅴ精品一区二区三区久久| 欧美成人自拍视频| 另类尿喷潮videofree| 啦啦啦在线视频免费观看高清中文| 夫妻性生活毛片| 欧美视频在线第一页| 51色欧美片视频在线观看| 国产精品久久久一区二区| 久久综合九色欧美狠狠| 91精品人妻一区二区三区果冻| 97cao在线| 午夜精品久久久久久久| 日韩精品视频网| 亚洲二区三区四区| 91系列在线观看| 精品国产乱码久久久久久闺蜜| 粉嫩一区二区三区国产精品| 欧美激情综合色| 国产精品露脸自拍| 国产日韩欧美精品电影三级在线| 欧美高跟鞋交xxxxxhd| 亚洲欧洲在线观看| 国产99久久精品| 亚洲高清黄色| 国产精品一站二站| 欧美黄页在线免费观看| 蜜臀av中文字幕| 中文字幕欧美精品在线| 精品夜夜嗨av一区二区三区| 欧美老女人性视频| 欧美日韩一区二区在线观看| 最新亚洲一区| 久久99精品久久久久久野外| 性折磨bdsm欧美激情另类| 亚洲自拍偷拍网址| 国产激情视频一区二区三区欧美| 97久久久久久| 日韩精品一区二区三区国语自制| 国模精品一区二区三区色天香| 精品av一区二区| 91久久精品日日躁夜夜躁国产| 欧美被狂躁喷白浆精品| 日本不卡中文字幕| 一区二区欧美视频| 久久久精品三级| 中文字幕av在线免费观看| 水莓100在线视频| 久久久久久久人妻无码中文字幕爆| 国产成人羞羞电影网站在线观看| 波多野结衣日韩| yiren22亚洲综合伊人22| 欧美日产在线观看| h视频在线观看免费| 欧美大片免费观看在线观看网站推荐| 宅男视频免费在线观看视频| 久久久91精品国产一区二区精品| 成人性色生活片| 尤物视频最新网址| 久久成人18免费网站| 波多野结衣一区二区三区在线| 欧美丝袜丝交足nylons| 精品国产欧美一区二区三区成人| 国内自拍亚洲| 日本丰满少妇黄大片在线观看| 欧美日韩激情一区二区三区| 日本高清久久天堂| h在线视频免费观看完整版| 中文字幕一区二区三区中文字幕| 好吊日视频在线观看| 久久精品播放| 日韩天堂在线视频| 蜜桃视频无码区在线观看| 日韩亚洲欧美精品| 一区二区免费电影| 国产精品成人**免费视频| 色综合久久中文| 欧美 日韩 国产一区二区在线视频| 成人video亚洲精品| 国产成人精品亚洲精品色欲| 国产一区二区三区日韩欧美| 日韩一区二区免费视频| 国产精品一区二区女厕厕| 欧美福利在线视频| 在线观看免费亚洲| 麻豆最新免费在线视频| 黄色网址多少| 91欧美视频在线| 日日噜噜夜夜狠狠| 国产一区二区三区小说| 亚洲欧洲高清| 国产一区二区中文字幕| 亚洲青青久久| 日本成人中文字幕| 国产精品久久久久久久久免费看| 精品中文字幕在线| 美日韩黄色大片| 一区二区三区色| 欧美区一区二| r级无码视频在线观看| 91sa在线看| 日韩免费特黄一二三区| jiujiure精品视频播放| 国产精品青草久久久久福利99| 男人搞女人网站| 精品久久国产老人久久综合| av资源站一区| 欧美高清视频一区二区三区| 色综合久久悠悠| 亚洲国产精品成人综合| 日韩精品午夜| 一区二区三区电影| 亚洲av无码专区在线播放中文| 国产伊人网av.| 国产精品久久免费观看| 欧美日一区二区三区在线观看国产免| 欧美黑人极品猛少妇色xxxxx| 777琪琪电影午夜理伦片| 美女网站免费观看| 日日摸夜夜爽人人添av| 一区二区三区四区五区精品视频| 国产精品成人网站| 国产伦精品一区二区三区照片91| 亚洲三级视频网站| 国产成人8x视频一区二区| 国产综合av在线| 69国产成人精品视频软件| 丝袜美腿诱惑一区二区三区| 国产精品白浆| 成人毛片免费| 日本中文字幕在线视频观看| 精品国产乱码久久久久久天美| 成人亚洲精品777777ww| 欧美老年两性高潮| 爱情岛论坛亚洲入口| 国产真人真事毛片视频| 中文字幕在线视频网| 黄色国产在线播放| xxxxxx欧美| 久草在线视频资源| 国产91亚洲精品久久久| 五月花丁香婷婷| 狠狠躁狠狠躁视频专区| 免费在线稳定资源站| a在线视频播放观看免费观看| 国产美女在线看| 久九九久频精品短视频| 日韩精品一区二区三区在线视频| 欧美男人天堂| 久久久久欧美| 亚洲综合一区在线| 色婷婷久久久久swag精品| 日本无删减在线| 亚洲国产高清不卡| 在线欧美视频| 日韩乱码在线视频| 美女18一级毛片一品久道久久综合| 中文字幕21页在线看| 国产一区二区三区视频播放| 视频一区在线免费观看| 久久97人妻无码一区二区三区| 人妻无码一区二区三区| 中文字幕三级电影| 国产亚洲精品超碰| 91成人国产在线观看| 欧美中日韩免费视频| 日韩hd视频在线观看| 色综合婷婷久久| 69精品视频| 999精品视频在线观看播放| 青青青在线视频| 欧洲亚洲一区二区| 狠狠色丁香九九婷婷综合五月| 偷偷要 色偷偷| av今日在线| 久久99久久99精品免观看软件| 国产91精品一区| 在线观看国产视频一二三| 色婷婷av一区二区三区软件| 天美星空大象mv在线观看视频| 大黄网站在线观看| 九色porny自拍视频在线观看| 久久精品国产亚洲av高清色欲| 免费黄色日本网站| 久久久全国免费视频| 在线综合视频| 亚洲精品国产一区二| 538国产精品一区二区免费视频| 一本色道久久亚洲综合精品蜜桃| 在线视频国内自拍亚洲视频| 在线观看91精品国产麻豆| 中文字幕久精品免| 激情五月综合网| 高潮毛片在线观看| 国产成人综合自拍| 亚洲激情在线观看视频免费| 午夜精品久久久久久99热| 国产亚洲欧美日韩高清| 日本不卡高清视频一区| 中文字幕免费精品一区高清| 一个色免费成人影院| 日韩中文视频免费在线观看| 丁香六月激情网| 中国日本在线视频中文字幕| 免费电影网站在线视频观看福利| 久久久精品国产免大香伊| 日韩免费看网站| 国产精品男女猛烈高潮激情| 日韩伦理一区| 一本色道久久综合狠狠躁的推荐|