[發明專利]Docker容器的協調方法有效
| 申請號: | 201910711113.5 | 申請日: | 2019-08-02 |
| 公開(公告)號: | CN110442428B | 公開(公告)日: | 2022-08-02 |
| 發明(設計)人: | 高建;白暉峰;霍超;候瑩瑩;尹志斌;張港紅;苑佳楠;李新軍 | 申請(專利權)人: | 北京智芯微電子科技有限公司;國網信息通信產業集團有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455;G06F9/48;G06F9/50 |
| 代理公司: | 北京興智翔達知識產權代理有限公司 11768 | 代理人: | 張玉梅 |
| 地址: | 100192 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | docker 容器 協調 方法 | ||
1.一種Docker容器的協調方法,其特征在于,包括:
在容器的運行過程中,實時監控各個Docker容器的資源消耗和運行狀態,所述資源消耗和運行狀態包括CPU利用率、內存占用以及容器占用的傳輸速率;
根據容器的資源消耗和運行狀態判斷是否需要對容器的當前狀態進行調整;
根據判斷結果,對容器的設定閾值進行調整,并根據調整后的設定閾值,對資源消耗和運行狀態進行調整;
所述設定閾值包括閾值上限Ymax;所述根據容器的資源消耗和運行狀態判斷是否需要對容器的當前狀態進行調整包括:
在預設時間間隔,計算容器的資源消耗綜合指數V;
當容器的資源消耗綜合指數連續M次超過閾值上限Ymax,則判定需要進行對應服務的擴容;
所述設定閾值包括閾值下限Ymin;所述在預設時間間隔,計算容器的資源消耗綜合指數V之后,還包括:
當容器的資源消耗綜合指數連續M次低于閾值下限Ymin,則判定需要進行對應服務的收縮;
所述根據判斷結果,對容器的設定閾值進行調整,并根據調整后的設定閾值,對資源消耗和運行狀態進行調整包括:
當需要擴容時,調高所述閾值上限Ymax,并提高與所述閾值上限對應的CPU利用率、內存占用以及可用內存大小;
當需要收縮時,調低所述閾值下限Ymin,并降低與所述閾值下限對應的CPU利用率、內存占用以及可用內存大小;
所述根據容器的資源消耗和運行狀態判斷是否需要對容器的當前狀態進行調整之后,還包括:
若判斷結果為擴容次數超過預設次數且容器閾值上限Ymax大于預設百分比,則計算待調度容器所需資源量和備選終端容器的剩余總量評估分值;
根據評估結果,篩選出最佳的宿主終端;
根據待調度的容器鏡像參數對宿主終端進行配置,將待遷移的容器中的工作目錄、環境變量和參數遷移至宿主終端。
2.如權利要求1所述的協調方法,其特征在于,所述在預設時間間隔,計算容器的資源消耗綜合指數V包括:
在預設時間間隔,根據第一公式計算所述資源消耗綜合指數V,所述第一公式包括:
其中,VCPUi=[0,100],VCPUi表示在預設時間間隔內,容器i的CPU時間與系統態CPU時間占總CPU時間的百分比;VMEMi=[0,100],VMEMi表示在預設時間間隔內,容器i所占的常駐內存的大小占系統總的物理內存的百分比;VNETi=[0,100],VNETi表示在預設時間間隔內,容器i傳輸比特速率占系統速率的百分比,ω1為CPU權重,ω2為內存權重,ω3傳輸比特速率權重,為CPU權重、內存權重以及傳輸比特速率權重的平均值。
3.如權利要求1所述的協調方法,其特征在于,所述資源消耗綜合指數V包括V1,V2…Vn,其中,V1為在第一次預設時間間隔后計算的資源消耗綜合指數,V2為在第二次預設時間間隔后計算的資源消耗綜合指數,Vn為在第n次預設時間間隔后計算的資源消耗綜合指數;
所述當容器的資源消耗綜合指數連續M次超過閾值上限Ymax,則判定需要進行對應服務的擴容包括:
當容器的資源消耗綜合指數V1超過閾值上限Ymax時,建立一個N元素的數組A;
當容器的資源消耗綜合指數V2再次超過閾值上限Ymax時,將V2加入數組A;
重復對容器的資源消耗綜合指數進行判定,直至完成資源消耗綜合指數Vn的判定;
若所述數組A已滿,則判定需要進行對應服務的擴容。
4.如權利要求3所述的協調方法,其特征在于,所述重復對容器的資源消耗綜合指數進行判定,直至完成資源消耗綜合指數Vn的判定之后,還包括:
若資源消耗綜合指數V1,V2…Vn中有一個小于Ymax,則將數組A清零。
5.如權利要求1所述的協調方法,其特征在于,所述計算待調度容器所需資源量和備選終端容器的剩余總量評估分值包括:
根據公式二計算待調度容器所需資源量和備選終端容器的剩余總量評估分值,所述公式二包括:
其中,DC,DM,DN為待調度容器所需資源量,CapC,CapM,CapN為備選宿主機的剩余資源量,int()為取整函數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京智芯微電子科技有限公司;國網信息通信產業集團有限公司,未經北京智芯微電子科技有限公司;國網信息通信產業集團有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910711113.5/1.html,轉載請聲明來源鉆瓜專利網。





