從Docker的官方文檔里可以看到,在通過Docker run 這條命令啟動一個容器時,可以通過–cpu-shares –cpu-period以及–cpu-quota 這三個參數(shù)來控制容器對CPU的使用。
成都創(chuàng)新互聯(lián)公司10多年企業(yè)網(wǎng)站制作服務(wù);為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計及高端網(wǎng)站定制服務(wù),企業(yè)網(wǎng)站制作及推廣,對履帶攪拌車等多個行業(yè)擁有豐富建站經(jīng)驗的網(wǎng)站建設(shè)公司。
–cpu-shares
默認情況下所有容器的share是相同的,也就是所有容器有相同的權(quán)重,在所有容器一起競爭資源時,最終得到的資源是相同的。
這個share是一個相對的值,那么這個值的意義就不能單純通過一個容器的share值來看,而是多個在一起對比,比如A和B兩個容器,A配置的是1024,B配置的是512,那么A最大可以使用的CPU資源是B的兩倍。還有一點要注意的是,這種配置是有彈性的,如果A容器一直閑著,那B容器是可以使用空閑資源的。
–cpu-period和–cpu-quota
把這兩個參數(shù)放一起是因為這兩個參數(shù)是相互配合的。–cpu-period和–cpu-quota 的這種配置叫Ceiling Enforcement Tunable Parameters,–cpu-shares的這種配置叫Relative Shares Tunable Parameters。
–cpu-period是用來指定容器服務(wù)對CPU的使用要在多長時間內(nèi)做一次重新分配,而–cpu-quota是用來指定在這個周期內(nèi),最多可以有多少時間用來跑這個容器。跟–cpu-shares不同的是,這種配置是指定一個絕對值,而且沒有彈性在里面,容器對CPU資源的使用絕對不會超過配置的值。
比如說,A容器配置的–cpu-period=100000 –cpu-quota=50000,那么A容器就可以最多使用50%個CPU資源,如果配置的–cpu-quota=200000,那就可以使用200%個CPU資源。
以上是關(guān)于docker如何限制容器的cpu介紹,創(chuàng)新互聯(lián)的容器云產(chǎn)品是通過docker技術(shù),在集群服務(wù)器上部署容器服務(wù)實現(xiàn),功能強大、簡單易用,擁有上萬linux鏡像,秒級開通。
高性價比的容器云產(chǎn)品鏈接 https://www.cdcxhl.com/cloud/