内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

云計算核心技術Docker教程:Docker內(nèi)存管理

Docker在默認情況下,容器使用的資源是不受限制的。也就是可以使用主機內(nèi)核調(diào)度器所允許的資源。但是在容器的使用過程中,經(jīng)常需要對容器可以使用的主機資源進行限制使容器之間會盡量不互相影響。

創(chuàng)新互聯(lián)建站專注于貴港網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供貴港營銷型網(wǎng)站建設,貴港網(wǎng)站制作、貴港網(wǎng)頁設計、貴港網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務,打造貴港網(wǎng)絡公司原創(chuàng)品牌,更為您提供貴港網(wǎng)站排名全網(wǎng)營銷落地服務。

Docker內(nèi)存控制OOME在linxu系統(tǒng)上,如果內(nèi)核探測到當前宿主機已經(jīng)沒有可用內(nèi)存使用,那么會拋出一個OOME(Out Of Memory Exception:內(nèi)存異常 ),并且會開啟killing去殺掉一些進程。

一旦發(fā)生OOME,任何進程都有可能被殺死,包括docker daemon在內(nèi),為此,docker特地調(diào)整了docker daemon的OOM_Odj優(yōu)先級,以免他被殺掉,但容器的優(yōu)先級并未被調(diào)整。經(jīng)過系統(tǒng)內(nèi)部復制的計算后,每個系統(tǒng)進程都會有一個OOM_Score得分,OOM_Odj越高,得分越高,(在docker run的時候可以調(diào)整OOM_Odj)得分高的優(yōu)先被kill掉,當然,也可以指定一些特定的重要的容器禁止被OMM殺掉,在啟動容器時使用 –oom-kill-disable=true指定。

Docker 提供的內(nèi)存限制功能有以下幾點:

容器能使用的內(nèi)存和交換分區(qū)大小。

容器的核心內(nèi)存大小。

容器虛擬內(nèi)存的交換行為。

容器內(nèi)存的軟性限制。

是否殺死占用過多內(nèi)存的容器。

容器被殺死的優(yōu)先級

一般情況下,達到內(nèi)存限制的容器過段時間后就會被系統(tǒng)殺死。

執(zhí)行docker run命令時能使用的和內(nèi)存限制相關的所有選項如下。

-m,--memory 內(nèi)存限制,格式是數(shù)字加單位,單位可以為 b,k,m,g。最小為 4M

--memory-swap 內(nèi)存+交換分區(qū)大小總限制。格式同上。必須必-m設置的大

--memory-reservation 內(nèi)存的軟性限制。格式同上

--oom-kill-disable 是否阻止 OOM killer 殺死容器,默認沒設置

--oom-score-adj 容器被 OOM killer 殺死的優(yōu)先級,范圍是[-1000, 1000],默認為 0

--memory-swappiness 用于設置容器的虛擬內(nèi)存控制行為。值為 0~100 之間的整數(shù)

--kernel-memory 核心內(nèi)存限制。格式同上,最小為 4M

使用Docker自帶的-m操作進行內(nèi)存限制時可能會由于內(nèi)核限制所以出現(xiàn)以下提示Your kernel does not support swap limit capabilities.memory limit without swap

必須通過修改grub文件/etc/default/grub 添加:

GRUB_CMDLINE_LINUX=cgroup_enable=memory swapaccount=1

之后更新grub并重啟可以解決

$ sudo update-grub

$ sudo reboot

--memory-swap設置

只有當--memory設置之后,--memory-swap 才會生效

1、如果--memory-swap設置為正整數(shù),那么這兩個--memory和 --memory-swap必須設置。--memory-swap表示可以使用的內(nèi)存和交換總量,并--memory控制非交換內(nèi)存使用的數(shù)量。因此,如果--memory=300m和--memory-swap=1g,容器可以使用300m的內(nèi)存和700m(1g - 300m)交換。

2、如果--memory-swap設置為0,則忽略該設置,并將該值視為未設置。

3、如果--memory-swap設置為與值相同的值--memory,并且--memory設置為正整數(shù),則不使用swap。

4、如果--memory-swap未設置并且--memory已--memory設置,則如果主機容器配置了交換內(nèi)存,則容器可以使用兩倍于設置的交換。例如,如果--memory=300m和--memory-swap未設置,容器可以使用300m的內(nèi)存和600m的交換。

5、如果--memory-swap明確設置為-1,則允許容器使用無限制交換,最多可達主機系統(tǒng)上可用的數(shù)量。

--memory-reservation設置

Memory reservation 是一種軟性限制,用于節(jié)制容器內(nèi)存使用。給--memory-reservation設置一個比-m小的值后,雖然容器最多可以使用-m使用的內(nèi)存大小,但在宿主機內(nèi)存資源緊張時,在系統(tǒng)的下次內(nèi)存回收時,系統(tǒng)會回收容器的部分內(nèi)存頁,強迫容器的內(nèi)存占用回到--memory-reservation設置的值大小。

--oom-kill-disable設置

默認情況下,在出現(xiàn) out-of-memory(OOM) 錯誤時,系統(tǒng)會殺死容器內(nèi)的進程來獲取更多空閑內(nèi)存。這個殺死進程來節(jié)省內(nèi)存的進程,我們姑且叫它 OOM killer。我們可以通過設置--oom-kill-disable選項來禁止 OOM killer 殺死容器內(nèi)進程。但請確保只有在使用了-m/--memory選項時才使用--oom-kill-disable禁用 OOM killer。如果沒有設置-m選項,卻禁用了 OOM-killer,可能會造成出現(xiàn) out-of-memory 錯誤時,系統(tǒng)通過殺死宿主機進程或獲取更改內(nèi)存。

--memory-swappiness設置

值為0將關閉匿名頁面交換,值100將所有匿名頁面設置為可交換,默認情況下,如果未設置--memory-swappiness,則值將從主機繼承。

當前題目:云計算核心技術Docker教程:Docker內(nèi)存管理
文章來源:http://m.rwnh.cn/article22/cpogjc.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供響應式網(wǎng)站、服務器托管、網(wǎng)站收錄、搜索引擎優(yōu)化網(wǎng)站改版、品牌網(wǎng)站建設

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應式網(wǎng)站建設
莎车县| 靖边县| 广丰县| 尼木县| 梁河县| 湖北省| 五常市| 阳原县| 怀柔区| 泸水县| 察哈| 化州市| 静安区| 青州市| 潢川县| 昭通市| 汝南县| 晋江市| 西城区| 东台市| 厦门市| 湄潭县| 安化县| 尉氏县| 札达县| 西青区| 崇阳县| 金沙县| 呼图壁县| 辛集市| 屏东市| 沙湾县| 大同县| 枣强县| 苏尼特左旗| 色达县| 公安县| 株洲市| 文登市| 洞头县| 公主岭市|