[發(fā)明專利]一種鏡像升級方法及設(shè)備在審
| 申請?zhí)枺?/td> | 201710868013.4 | 申請日: | 2017-09-22 |
| 公開(公告)號: | CN109542493A | 公開(公告)日: | 2019-03-29 |
| 發(fā)明(設(shè)計)人: | 程寶傳;楊堅銳;林樂;崔高生 | 申請(專利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類號: | G06F8/658 | 分類號: | G06F8/658 |
| 代理公司: | 北京億騰知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11309 | 代理人: | 陳霽 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 刪除文件 更新 鏡像文件 鏡像層 隱藏狀態(tài) 刪除 存儲路徑 接收容器 容器數(shù)據(jù) 原始鏡像 狀態(tài)設(shè)置 視圖層 升級 疊加 統(tǒng)一 | ||
本發(fā)明實施例涉及一種鏡像升級方法,該方法包括:接收容器的增量鏡像文件;增量鏡像文件包括:新增的文件,修改的文件以及被刪除文件的信息;其中,被刪除文件的信息包括:每個被刪除的文件名以及被刪除的文件的存儲路徑;根據(jù)增量鏡像文件更新原始鏡像層,得到更新后的鏡像層,其中,在更新后的鏡像層中將被刪除文件的狀態(tài)設(shè)置為隱藏狀態(tài);疊加更新后的鏡像層中的文件與容器數(shù)據(jù)層中的文件,在視圖層形成更新后的統(tǒng)一視圖供容器使用;其中,更新后的統(tǒng)一視圖不包括被設(shè)置為隱藏狀態(tài)的被刪除文件。
技術(shù)領(lǐng)域
本發(fā)明涉及容器技術(shù)領(lǐng)域,尤其涉及一種鏡像升級方法及設(shè)備。
背景技術(shù)
隨著容器技術(shù)越來越成熟,容器技術(shù)在各個領(lǐng)域運用的越來越普遍。在物聯(lián)網(wǎng)中,為了功耗,成本的考慮,物聯(lián)網(wǎng)設(shè)備的硬件資源比較少,所以作為輕量級的虛擬化技術(shù),容器技術(shù)非常適合物聯(lián)網(wǎng)設(shè)備。Docker、Linux容器(Linux container,LXC)等容器技術(shù)相比,Linux容器更輕便,更適合應(yīng)用于物聯(lián)網(wǎng)。
通俗來說,容器是一個精簡版的Linux操作系統(tǒng),鏡像是加載到這個容器的軟件,當(dāng)需要增強容器的功能時,需要升級該容器對應(yīng)的鏡像。目前,Docker提供了一種鏡像管理的方法,結(jié)合DockerHub,可以很方便的實現(xiàn)Docker容器的鏡像的管理以及鏡像的增量升級,但是Docker容器的鏡像管理方法并不適合物聯(lián)網(wǎng)設(shè)備。LXC當(dāng)前不支持鏡像的增量升級,升級Linux容器鏡像,需要全部下載一個完整的鏡像到設(shè)備,這樣既浪費帶寬,又浪費設(shè)備上的磁盤資源,升級也非常耗時,效率低下。
發(fā)明內(nèi)容
本發(fā)明用于解決現(xiàn)有技術(shù)中Linux容器不支持鏡像的增量升級導(dǎo)致的鏡像升級時浪費帶寬和磁盤資源,升級效率低下的問題。
本發(fā)明實施例第一方面提供了一種鏡像升級方法,該方法應(yīng)用于容器,容器包括視圖層、容器數(shù)據(jù)層和原始鏡像層,原始鏡像層包括第一子層至第n子層;視圖層、容器數(shù)據(jù)層、第一子層至第n子層依次位于容器中,n≥1;該方法包括:接收容器的增量鏡像文件;增量鏡像文件包括:新增的文件,修改的文件以及被刪除文件的信息;其中,被刪除文件的信息包括:每個被刪除的文件名以及被刪除的文件的存儲路徑;根據(jù)增量鏡像文件更新原始鏡像層,得到更新后的鏡像層;其中,在更新后的鏡像層中將被刪除文件的狀態(tài)設(shè)置為隱藏狀態(tài);疊加更新后的鏡像層中的文件與容器數(shù)據(jù)層中的文件,在視圖層形成更新后的統(tǒng)一視圖供容器使用;其中,更新后的統(tǒng)一視圖不包括被設(shè)置為隱藏狀態(tài)的被刪除文件。
在所述第一方面的第一種實施方式中,更新原始鏡像層包括:將增量鏡像文件作為新第一子層文件形成更新后的鏡像層的第一子層,將原始鏡像層的第m子層文件作為新第m+1子層文件形成更新后的鏡像層的第m+1子層,1≤m≤n。
在所述第一方面的第二種實施方式中,更新原始鏡像層包括:將增量鏡像文件作為新第一子層文件形成更新后的鏡像層的第一子層,將原始鏡像層的第m子層文件作為新第m+1子層文件形成更新后的鏡像層的第m+1子層,將原始鏡像層的第n-1子層文件和原始鏡像層的第n子層文件合并作為新第n子層文件形成更新后的鏡像層的第n子層,1≤m≤n-2。
基于所述第二種實施方式,在所述第一方面的第三種實施方式中,將原始鏡像層的第n-1子層文件和原始鏡像層的第n子層文件合并作為新第n子層文件形成更新后的鏡像層的第n子層包括:比較原始鏡像層的第n-1子層文件和原始鏡像層的第n子層文件,當(dāng)原始鏡像層的第n-1子層存在第一文件且原始鏡像層的第n子層中存在第一文件的同名文件時,刪除原始鏡像層的第n子層中的第一文件的同名文件,合并原始鏡像層的第n-1子層文件和原始鏡像層的第n子層的剩余文件,得到新的第n子層文件形成更新后的鏡像層的第n子層。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710868013.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種云環(huán)境下獲取鏡像的方法、裝置和系統(tǒng)
- 一種Docker容器構(gòu)建方法及Docker管理控制臺
- 鏡像處理方法以及計算設(shè)備
- 一種鏡像管理方法及裝置
- 鏡像刪除和推送的方法、系統(tǒng)、電子設(shè)備及存儲介質(zhì)
- 一種鏡像壞層修復(fù)方法、裝置、設(shè)備和介質(zhì)
- 一種基于緩存匹配的鏡像遷移優(yōu)化方法、系統(tǒng)及介質(zhì)
- 容器鏡像的存儲結(jié)構(gòu)、查詢方法、刪除方法、裝置、設(shè)備和介質(zhì)
- 鏡像的處理方法、裝置、電子設(shè)備及可讀存儲介質(zhì)
- 節(jié)點設(shè)備構(gòu)建容器鏡像的方法、存儲介質(zhì)、設(shè)備及系統(tǒng)





