Cgroup maintainer麗澤範:解剖Linux核心容器技術

摘要:Cgroup和namespace等內核特性如何出現,在社區處於如何的開發情況?Docker如火如荼。內核社區是否會所以加緊無缺容器技術的隔離性安全性?華爲Linux內核高級project師李澤帆將在2015 Container技術峯會上具體講解。

2015年4月16-18日,由CSDN主辦、CSDN專家顧問團支持的OpenCloud 2015大會將在北京國家會議中心拉開帷幕。html

爲期三天的大會,以推動行業應用中的雲計算核心技術發展爲主旨,聚焦技術創新與應用實踐,設置了「2015 OpenStack技術大會」、「2015 Spark技術峯會」、「2015 Container技術峯會」三大技術峯會及多場深度行業實戰培訓。linux

本次大會將邀請近40位國內外雲計算技術領域頂尖專家與一線實踐者,深刻討論OpenStack、Spark、Docker、Kubernetes等開源技術的最新進展,各個核心項目/組件的演進趨勢,以及它們的最新業界應用。點擊報名安全

在「2015 Container技術峯會」,咱們請到了Linux內核高級project師李澤帆擔任演講嘉賓,他將帶來的分享主題爲《Linux內核容器技術的歷史、現狀和展望》。介紹Docker的基石——Cgroup和namespace等Linux內核特性的發展歷程。眼下它們在社區處於如何的開發情況,以及在眼下Docker引起的熱潮下,內核社區是否會從底層提供更無缺的容器技術。網絡

李澤帆以爲,容器的長處在於以接近物理機的執行效率提供了虛擬化功能、能比虛擬機達到更高的實例密度、達到秒級的啓動速度。架構

Docker又加上了層級鏡像的創新。使得軟件的公佈和部署很便捷。所以容器/Docker有普遍的應用場景,應用時在軟件架構上參考微服務架構。app

他同一時候也指出。Docker還不夠成熟。存在網絡功能薄弱(如跨主機的容器網絡互連)、安全性(Daemon是一個單點故障)、執行傳統業務困難(如CT業務)等挑戰。李澤帆對Docker的將來頗有信心,但眼下,瞭解Docker的底層技術以及內核容器技術的發展趨勢,包含了解Docker的侷限性。更有利於咱們揚長避短使用Docker。所以,他的分享很值得期待。微服務

李澤帆
網站

Linux Contributor。華爲Linux內核高級project師
雲計算

2007年開始從事Linux內核開發,一直活躍在內核開源社區,爲內核累計貢獻約800個Patch。url

在社區中擔任Cgroup及cpuset的maintainer。同一時候也擔任Linux 3.4版本號maintainer。

眼下在華爲從事內核、Docker相關工做。

對話李澤帆:

CSDN:首先請介紹下您本身,以及您在Container/Docker技術方面所作的工做。

李澤帆:我從2007年開始參與linux內核開發工做,在內核裏貢獻了大概800個Patch。我參與的第一個內核項目就是Cgroup。到了2009年,我開始在內核開源社區擔任Cgroup的maintainer,到了2013年。由於先後兩任cpuset的maintainer相繼離開,我把這個活也攬了下來。Cgroup(包含cpuset)是容器技術的最重要組件之中的一個。

除了開源社區的工做。我在華爲負責Linux內核部門的技術工做。咱們以前就有團隊從事LXC的工做,所以Docker出現後,咱們天然也就成立了Docker項目組。

CSDN:您所在的企業是怎樣使用Container/Docker技術的?爲企業帶來了哪些優勢?

李澤帆:華爲的產品線和業務線很是長,咱們有很多部門都在嘗試或者考慮將Docker用起來。但是相比互聯網公司可以高速的利用開源項目。讓Docker知足企業領域和CT領域的商用要求,眼下還有很多困難,特別是在CT領域。

CSDN:您以爲Container/Docker技術最適用於哪些應用場景?

李澤帆:這要從容器的優點來看。

容器的長處在於以接近物理機的執行效率提供了虛擬化功能、能比虛擬機達到更高的實例密度、達到秒級的啓動速度。

Docker又加上了層級鏡像的創新。使得軟件的公佈和部署很便捷。能用上這些長處的地方,天然就是Docker的使用場景了。

實際上這種場景是許多的,這也是Docker的生態發展的如此高速和繁榮的緣由之中的一個。咱們看到有無數基於Docker的開源項目產生。包含CoreOS、Kubernetes、Deis等等,而現有的開源項目也都紛紛擁抱Docker,好比Openstack、Mesos、Cloud Foundry等等,咱們也看到國內外各個雲平臺爭先恐後的宣佈支持Docker。

只是。對於企業來講,最easy用上Docker的場景。我以爲仍是用Docker來搭建私有云,以及把Docker用在持續集成平臺上。

CSDN:企業在應用Container/Docker技術時,需要作哪些改變嗎?企業假設想高速應用Docker應該怎樣去作?

李澤帆:剛纔說過Docker的使用場景許多。所以這個問題也就不能一律而論了。最理想的狀況是遵循Docker的理念,即每個容器僅僅執行一個進程,把Docker做爲Application Container來使用。而非System Container,所以在軟件架構上參考微服務架構。

還有一方面。由於Docker還不夠成熟。並且開源軟件每每是知足不了所有企業的需求的,所以企業在實際應用Docker的時候,每每都需要作必定的定製,所以也就要求企業有熟悉Docker的開發者。對於這種定製,應該注意儘可能不要改變、破壞Docker眼下的接口,並且在代碼上實現較好的解耦,以方便往後對Docker版本號的升級。

CSDN:您所在的企業在應用Container/Docker技術時遇到了哪些問題?是怎樣解決的?

李澤帆:你們都遇到的問題咱們也遇到了,好比跨主機的容器網絡互連,由於Docker沒有提供這種能力,咱們僅僅能使用flannel之類的第三方方案。

這樣也仍是有些缺點,好比容器因故障而從新啓動後。網絡又要又一次配置。

另外更大的問題是。CT業務要在容器內執行,會遇到很是多挑戰。這方面咱們還在探索中。

CSDN:做爲當前最流行的Container技術,您以爲Docker還有哪些方面需要改進?

李澤帆:Docker的網絡功能太弱,近期Docker收購了SocketPlane,相信在這方面很是快就有突破,我的預測在今年的DockerCon會宣佈相關的進展,你們可以拭目以待。

Docker Daemon的安全性也是一個很是大的問題,包含需要root權限才幹執行。以及出現問題後從新啓動會致使所有容器也從新啓動。也就是Daemon是一個單點故障,這也是Docker被CoreOS詬病的當中一個緣由。

固然,Docker還很是年輕,所以有大大小小的各類問題。但相信以Docker眼下的發展態勢,這些問題都會獲得解決。

CSDN:您在本次演講中將分享哪些話題?

李澤帆:我是作底層開發的。並且是作開源開發的。因此此次我會給你們講講容器技術在內核社區的發展歷程,以及在眼下Docker引起的熱潮下。內核社區是否會從底層提供更無缺的容器技術。

CSDN:哪些聽衆最應該瞭解這些話題?您所分享的主題可以幫助聽衆解決哪些問題?

李澤帆:對Docker的底層技術感興趣以及想了解內核容器技術的發展趨勢的,都可以聽聽。這可以幫助聽衆瞭解容器技術提供了多大程度的隔離和安全,所以更好的瞭解Docker的侷限性。


2015 Container技術峯會已經邀請Google Kubernetes核心開發者來華。和國內用戶分享Kubernetes的技術細節,探討Container將來的發展方向。此外還有VMware、華爲、紅帽、美團、騰訊、雲雀科技、數人科技、上海點融等公司Container/Docker技術實踐者。也將同臺分享Container/Docker及其相關項目的實戰經驗。

附:Container技術峯會全日程


「2015 OpenStack技術大會」、「2015 Spark技術峯會」、「2015 Container技術峯會」 4月17-18日在北京召開。日程全部公開 OpenCloud 2015,懂行的人都在這裏!不少其它講師和日程信息請關注OpenCloud 2015介紹官方網站
相關文章
相關標籤/搜索