閱讀320 返回首頁    go 阿裏雲 go 技術社區[雲棲]


專訪技術達人Patrick Chanezon:如衝浪一般隨時代而行,容器創造了截然不同的軟件構件模式

在剛剛結束的DockerCon EU 2017上,Docker公司宣布全麵支持Kuberentes和Swarm雙套編排係統。而10月12日杭州•雲棲大會的容器技術專場上,Docker公司的首席開發布道師 Patrick Chanezon則進行了《The Docker Way: Modernize Traditional Applications without Action and Create New Cloud Native Micro-services Application with Naturalness》的主題分享。(容器技術專場視頻回放地址)

2013年Docker公司開源的容器項目令技術人們眼前一亮,在GitHub開源項目排行榜中迅速竄升;四年後,容器技術生態不斷發展壯大,雖然如何在企業生產環境使用還是一個挑戰,但是技術人始終堅信著容器會帶來的變革和產生的影響。

在Patrick Chanezon的杭州之行中,我們非常榮幸對他進行了采訪。

Patrick

Q1:在加入Docker公司之前,您曾經在先後在Accenture、Netscape、AOL、Sun、Google、Microsoft等很多公司工作過,為什麼這樣選擇您的職業路線?似乎您每一次選擇的都是當時的IT熱門趨勢?

Patrick: 我很喜歡衝浪運動,衝浪時你需要預知下一個浪的到來;在互聯網領域中衝浪也是如此。在Accenture的時候,我感受到web的浪潮,於是我加入了NetScape,因為那裏可以創建web應用;後來加入Sun,是因為Java越來越普及也很強大,它的應用可以跑在任何地方;再後來,我看到Google的搜索和廣告API很好,我就加入了Google先後做了搜索、社交和雲計算方麵的內容。

當我接觸到Docker的時候,我發現這是一個截然不同的軟件構建方式,在和Solomon溝通之後,我就決定開啟這個巧妙的旅程。

Docker是一項可以讓開發者們效率更高的新技術;在我看來,我們不應該過度沉浸於工作細節和具體操作中,而是要站在更高層去抽象化思考,這一點很重要並且令人受益,而Docker恰恰是可以幫助我們做到這一點的一項技術。

Q2:2015年加入Docker時,比起應用軟件,您說您感興趣的是基礎設施軟件?請問這兩種軟件有什麼不同?在提供企業級服務的過程中,有哪些困難?

Patrick: 在企業場景使用,你需要考慮角色控製,需要考慮安全,需要深入了解企業不同架構的詳情。2015年,我們開始做企業版,我們在中國和阿裏巴巴一同售賣Docker企業版。

Docker屬於基礎設施軟件的範疇,你需要用一個工具搭建起來一個平台,這個平台是要給開發人員和運維人員共同使用的,為了實現這一點,我們公司進行了相當大量的工作,並提供了Docker for mac和Docker for windows,Docker for mac深度定製並綁定了網絡等插件。接下來,還會有更多的功能置入。

那麼企業級平台都要考慮哪些呢?從開發角度來看,要考慮是否可以支持代碼的快速更迭、測試是否可以簡捷高效。由於企業級平台涉及軟件的生產化,這就需要考慮整個的軟件供應鏈,即從開發角度到運維角度。企業級基礎設施軟件需要可將公司整個的軟件生產流程自動化。

那麼容器的作用是什麼呢?首先從開發角度可以將應用鏡像打包,並使用簽名加簽之後放入鏡像倉庫。而對於運維而言,則涉及到很多不同的架構(大型機、windows係、Linux係等),這些Docker都考慮到了,會搜索後端架構然後進行配套支持,用戶需要在這之上加入一個控製層,讓團隊成員看到需要的信息,然後共同協作,即開發和運維在一起。同時,根據開發組、測試組、運維組的不同工作內容,可以看到不同的鏡像。

Q3: 2015年的時候Mesos勢頭很強,但是現在卻沒有那麼頻繁地被提及了,您怎麼看待呢?

Patrick: Docker要比Mesos範圍更大,Mesos是專門用來做大數據、流處理的編排係統。

Docker是從容器技術開始,然後添加更多的功能以實現DevOps。最重要的是與用戶的需求共進,比如我們的一個舉措就是將Docker模塊化、分散化。

Docker發展的前兩年,我們增加的是功能;最近兩年,我們是Moby化,我們重構了docker項目,然後把containerd捐贈給CNCF。Moby現在就有很多分散的模塊,可以用小的模塊化去拚接。這對於使用不同係統(different type of system)的用戶而言很重要,除了需要構建雲原生架構的,比如IoT可以直接用組件,containerd、LinuxKit去以他們自己的方式集成。期望Moby可以越來越好,可以幫助大家用Moby的工具組件去創造將來他們需要的工具。

Q4: 但是您怎樣看待Moby發布之後,社區中的誤解和抱怨?
Patrick: Moby麵向的是完全不同的群體——係統的構建者,他們可以選用Moby組件按照各自特定的需求去建設不同容器平台。社區之所以會有抱怨,在我看來,可能是因為大家當時都是期望聽到都是Docker項目的新功能新特性,也就是Docker CE和Docker EE的相關平台類的內容。

雖然目前Docker大多數的開發者都是使用Docker EE或者Docker CE,可能他們不是很關心Moby項目;但是對於開源項目而言,這是一個重大的變革,我們必須把這個消息在DockerCon上發布。

Q5: Kubernetes最近發展迅速,從Kubernetes身上我們能學到什麼?
Patrick: Kubernetes是一個非常優秀的項目,由Google開發並捐贈給了CNCF基金會。值得一提的是Docker也是CNCF的創始成員,Kubernetes實際上是在DockerCon2014發布的。

我們雙方已經在很多領域都進行合作:一個例子是containerd,最小化的runtime,這是已經贈給OCI的標準,已經被Kubernetes、Swarm采用;另外一個例子是大家都知道Docker的網絡規範是CNM,而Kubernetes則是CNI,但是在剛剛結束的北美Moby Summit,我們演示了一個CNI插件的使用。

在10月17日的丹麥DockerCon上,Docker公司宣布Docker平台可以支持Kubernetes、Swarm雙編排係統。Docker認為用戶們有選擇編排係統的自由,Swarm是我們專門為企業設計的產品,而早期的Kubernetes並不滿足企業級別的安全需求(不過現在情況有所好轉)。

Q6:Docker公司的特色是什麼?你們怎麼樣能做到與眾不同呢?
Patrick: Docker可以適用所有的環境,大型機、windows、linux係列,物理機、虛機、各種編排係統和雲等,這是目前唯一一個可以做到這點的容器平台。

Docker的另外一個特點是Modernize Traditional Apps(MTA),除了微服務架構之外,Docker還適用於傳統型架構的容器化改造。

Q7:你怎麼展望未來呢?二年、五年和十年?
Patrick: 未來兩年,我希望Docker在更多的企業中被應用,幫助他們現代化。

未來五年,在雲原生和企業架構之外,我希望可以看到Docker累積更多的客戶實踐用例。尤其是IoT、無人機、機器人。自改造成Moby項目,我們和很多的有特定需求的IoT廠商、開發者進行了密切的溝通,不過現在還尚不能公開的使用案例。

至於未來十年,這對於IT領域,真的很難猜測。

最後更新:2017-11-10 16:33:41

  上一篇:go  11月10日雲棲精選夜讀:零點之戰!2017雙11關鍵技術全公開
  下一篇:go  今夜貓晚秀的這些黑科技,將顛覆傳統娛樂行業