您好,登錄后才能下訂單哦!
本篇內容主要講解“Docker定義存儲相關問題有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Docker定義存儲相關問題有哪些”吧!
Q:Docker使用外部存儲,把外部存儲直接給宿主機掛載,容器再使用宿主機掛載的外部存儲效率會不會更高?
A:這種方式正是volume plugin的實現方式,容器直接mount宿主機的目錄,避免通過容器網絡訪問外部存儲,性能肯定會更高。
Q:如何具體定制volume_plugin?不同主機掛同一個lun,這樣可以直接給volume 使用 同一業務 只要塊存儲速度可以那就不會影響業務 包括峰值和低值的應用 只是增加中間處理容器的數量,這樣可不可行?
A:為了方便實現volume plugin,docker提供go-plugins-helper包,提供基礎的功能,僅僅需要實現一個接口volume.Driver,并啟動http server便可。例子:GlusterFS就是使用這個包,基于glusterfs提供volume。
不同主機掛同一個lun,再格式化文件系統,每個主機都由自身的文件系統元數據并不會立刻flush到塊設備,所以多個主機掛同一個lun并不可行。
Q:對于一個容器,每次run都會下載大量的數據,如果多大50GB的話,如何去處理?
A:將大量的數據存儲在外部共享存儲系統中,通過塊或文件的方式掛載給容器使用,就可避免加載大量數據到本地。
Q:對于容器存儲也好或虛擬機、云主機存儲也好,都是大同小異,看你業務用途如何,再根據現有資源來決定是塊存儲還是分布式文件或是對象存儲?
A:確實存儲接口并沒有什么根本性的改變,容器和虛擬機在存儲的角度來看最大的區別就是容器中運行的是應用,而虛擬機運行的是操作系統,使得容器存儲更加貼近應用,能夠根據具體應用的特性提供更合適的存儲服務。
Q:假如有一個lun,要對應一個host上的很多的container,我是把所有的container mount 到同一個目錄的不同子目錄速度快,還是先對這個lun進行分區格式化,然后在不同的container對不同的分區速度快呢?
A:把所有的container mount 到同一個目錄的不同子目錄,表示多個進程對應1個文件系統;先對這個lun進行分區格式化,然后在不同的container對不同的分區,表示1個進程對1個文件系統;對于非IO密集型的進程,應該是后者更快,每個文件系統都帶有cache,所以性能會更高一些。而對于IO密集型的進程,估計性能差別不大。
到此,相信大家對“Docker定義存儲相關問題有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。