Docker CEO 暢談 Docker編排工具:2015開源項目最重要的大事
譯文Ben Golub:多個Docker組件在多臺服務器上運行
容器公司Docker已發布了多項服務,并聲稱這些服務是開源技術領域在未來12個月最重要的動向。
在阿姆斯特丹召開的DockerCon歐盟大會上,這家公司演示了一套新的Docker編排工具和API(應用編程接口),另外還演示了其專有的Docker Hub Enterprise管理套件的內部部署版。
Docker***執行官Ben Golub說:“它們意義重大,因為最終未來的應用程序其實是分布式應用程序,到時多個Docker化的組件跨多臺服務器運行。”
“Docker編排工具是未來一年在開源項目上出現的最重要的大事。對我們這家公司來說,Docker Hub Enterprise是我們最重要的產品,它將是我們未來的重要創收來源。”
通過將構建應用程序并部署到容器中這項任務實現自動化――這是一種輕型虛擬化,Docker的目的在于讓開發人員從此擺脫對軟件和基礎設施的依賴,同時在這個過程中削減成本、提高效率。
Docker編排工具包括三套開源API:Docker Machine、Docker Compose和Docker Swarm。它們各自負責處理這個問題的不同方面:構建并管理跨多個容器的分布式應用程序。
Golub說:“Docker Machine讓你可以拿來任何一個主機――其實是任何服務器,無論是你數據中心里面的筆記本電腦、服務器或虛擬機,還是亞馬遜、Azure或其他眾多云平臺上的遠程云實例,就可以讓它們能夠運行任何Docker應用程序。”
“所以,這個工具讓它們可以準備好運行Docker,然后讓你能夠使用同一個用戶界面(UI),管理所有那些主機上的所有那些容器,無論它們是本地還是遠程。”
Docker Swarm是一項集群服務,讓用戶可以把數量眾多的服務器當作單單一個機器,因而為分布式應用程序創造了資源池。
由于Swarm API支持可插式集群實現技術,用戶可以決定采用Mesosphere之類的高可擴展性產品,跨數量眾多的節點來編排容器。
編排服務的第三個部分Docker Compose旨在讓用戶很容易從眾多容器(比如前端、數據庫和負載均衡等組件)構建一個復雜的分布式應用程序。公司聲稱,構建而成的應用程序完全可以移植。
Docker Hub Enterprise是去年6月發布的商用云控制中心的內部部署版,它提供了一些工具,便于構建Docker化的組件的庫,面向工作流程以及與企業可能已經在使用的其他工具(比如監控工具)進行整合。
Golub說:“這兩則宣布其實都事關多容器應用程序這個概念。Docker創辦之初,人們對此覺得非常興奮,因為Docker讓你有辦法將任何Linux應用程序或任何Linux組件放在輕型容器里面,然后可以在任何地方運行。”
“情況已發生了變化,以至于現在人們期望將多個組件結合起來,每個組件都在各自的容器里面,跨數量眾多的不同服務器來運行這些組件。于是,我們從一臺或若干臺服務器上的一個或若干個容器轉向眾多服務器上的多個容器。這兩款產品都旨在應對你試圖實現這項任務時所面臨的挑戰。”
雖然所有的Docker編排服務現都處于alpha測試階段,但面向Docker Machine的那套API現在可以使用。這三套API定于2015年第二季度面向公眾發布。Docker Hub Enterprise會在2月份發布預覽版。
Golub表示,公司現正在致力于Docker的資源調度功能,到時會進一步提高管理容器的自動化程度。
他說:“眼下,你能夠為容器設定限值,但是要是你碰到某個事先設定的限值,如果你希望能夠自動擴展或者自動遷移,就需要這項功能,將來會推出該功能,但目前不是上述兩則宣布的一部分。”
“所有這些再過幾個月或幾個季度就會發布。這方面正在迅速取得進展。好就好在,Docker公司或Docker項目在直接發力;另外,還有18000個項目都與Docker有關,它們都試圖填補不足和空白。”
正是開源社區的廣泛參與,有助于在如此短的時間內大力推動Docker快步前進,如今公共軟件庫中已有大約65000種語言、框架和應用程序實現了Docker化。
Golub說:“我認為,你只好接受一定程度的混亂,這沒法子。不過,完全擁抱開放和開源在這方面有所幫助,因為社區在幫助我們開發API,社區幫助辨別這些項目中哪些是好是壞,然后最終有某種優勝劣汰的機制,有助于確定這些項目中哪些值得為之努力,哪些不值得。”
最近發布了這則宣布:微軟將在定于2015年發布的Windows Server下一個版本中支持Docker容器,這也會極大地加大人們對這項技術的興趣。
Golub說:“所有企業工作負載中至少有一半是基于Windows;由于我們在與微軟通力合作,我們將Docker引入到Windows。在某種程度上,這讓可以充分利用Docker的用戶圈子變大了一半,同時也加大了我們的產品對企業的吸引力。”
“這還為我們將Docker擴展到其他架構上鋪平了道路。我們在去年6月份還是一種64位Linux架構;現在我們已是一種能與Windows協同運行的架構。我們能夠與ARM芯片協同運行,Solaris和SmartOS方面也有相應的宣布。所以,我們其實在努力成為一種通用工具。”
添加這種Docker支持功能的底層工作會出現在Windows內核里面,低級的容器基礎工作由微軟來完成。中間層Docker守護程序方面的工作則是Docker項目的一部分,微軟、Docker工作人員和更廣泛的開源社區都為該項目捐獻代碼。
Golub說:“然后頂層是標準的Docker。如果我們做好頂層這一塊,底下那兩層對我們、微軟以及社區那些關注Docker的人士來說只是個技術細節,而其他一切對最終用戶來說將是透明的。”
“可用性肯定將取決于Windows Server 10版本;我從微軟那里聽到的消息是,該版本會在2015年年底發布,但我不能代表微軟說話。但它肯定會完成Docker的一大塊任務。”
除了與微軟達成合作關系外,Docker還發展了幾個重要盟友,包括與IBM、紅帽、VMware、谷歌和亞馬遜結為聯盟,將來會還其他公司合作。
據Golub聲稱,這種結合商界力量和社區力量的做法有助于讓Docker如此火爆。
他說:“Docker所做的實際上是讓容器大眾化――讓它們成為標準,讓它們易于移植,并圍繞容器建立起一個生態系統。我不愿說容器在Docker之前就存在了,因為之前出現的是低級容器技術,但它只能被大型互聯網公司的高級團隊所使用,而且不容易移植。”
“Docker之前存在的許多解決方案是很早以前構建的,那時候應用程序具有下列特點:駐留很長時間,整體式,而且在單單一臺服務器上運行――實際上上述三個特點都已發生了變化,今非昔比。”
但正是Docker背后的社區讓這項技術得以大獲成功;就Docker的未來而言,社區依然至關重要。Golub提到歐洲40多個城市的Docker見面會或社區就見證明了這種廣泛參與性。
他說:“顯而易見,只有通過開放這項技術,努力建造一個生態系統,而不是試圖打造僅僅一項技術或僅僅一家公司,我們才得以迎來如此迅猛的發展。”
“很顯然,項目以及整項技術正由主要在互聯網公司使用的技術變成目前許多銀行、制藥公司、制造企業和政府使用的技術。所以,大家對穩定性、安全性以及企業級工具非常注重。這是我們要完成的一大優先事項。”
英文原文鏈接:http://www.zdnet.com/article/docker-ceo-why-it-just-got-easier-to-run-multi-container-apps/