谷歌對Docker的公開支持讓Docker(《谷歌擁抱開源技術Docker 意圖推動云計算革命》)成為本周的熱門話題,本文中,我們將向你介紹這種技術是什么,以及它對你企業的作用。
問題1:它是什么?
Docker既是一個開源項目的名稱,也是一家專注于Linux容器(Container)的初創公司的名稱。容器是指在一臺主機上運行多個應用程序,這類似于計算虛擬化,但它不是虛擬化服務器來創建多個操作系統,它提供了更輕量級的替代品,通過虛擬化操作系統,允許多個工作負載在一臺主機上運行。
問題2:為什么會有這么多炒作?
Docker公司在本周發布了1.0版產品,為此該公司還召開了名為DockerCon的會議。Docker創始人兼首席技術官Solomon Hykes表示,這個開源Docker項目已經被下載(免費)超過275萬次,超過460位貢獻者幫助創建了這個版本。Docker已經建立了合作伙伴組來支持其產品,并且,服務提供商都紛紛加入來提供Docker服務。
問題3:容器從何而來?
容器并不是新鮮事物,特別是Linux容器。科技巨頭(例如甲骨文、惠普和IBM)幾十年來一直在使用容器。然而,在最近幾年,該開源項目Docker開始普及,主要是作為虛擬化的替代品或補充品。在意識到圍繞該開源項目提供支持的市場機會后,一家名為dotcloud的公司成立了,后來更名為Docker。在1月份,該公司收到了約1500萬美元融資,由Greylock合伙人帶頭,Red Hat公司也做出了主要投資。
問題4:工作原理如何?
該開源項目有兩個主要方面:控制組(Contrail Groups),它定義了工作負載需要的計算、內存和磁盤i/o;以及用來隔離和分離每個工作負載的同名組。
商業產品Docker具有兩個主要的組成部分:Docker引擎,這是使用戶創建和使用容器的核心軟件平臺;以及Docker Hub,用來創建和共享Docker服務的基于SaaS[注]的服務。通過1.0版本以及Docker Hub的發布,該公司表示,他們有超過14000個應用程序可以與其容器使用。
問題5:容器是虛擬機殺手?
博客主Scott Lowe表示:“在另一方面,通過共享主機內核和操作系統實例的某些部分,容器通常提供較少的隔離,以及更低的開支。”對于只有單個操作系統的環境而言,容器是一個有吸引力的選擇,如果需要在環境中運行多個操作系統,虛擬機和管理程序可以非常有用。VM并不會消失,但容器可以提供更好的方式來運行某些應用程序,而不是虛擬化。
問題6:它有什么用途?
容器的主要優點之一是便攜性。容器可以在虛擬機上或者裸機服務器運行。它們可以在企業內部或者云計算中運行。這使得容器的最早主要用例之一是圍繞軟件開發。代碼可以編寫應用程序,將其放在容器中,然后該應用程序可以跨越不同的環境,因為它已經被封裝在容器內。
問題7:需要多少費用?
開源項目Docker提供從GitHub免費下載。而產品Docker收費為每個容器1美元,它提供獨立托管的容器。
問題8:還有誰參與?
對于圍繞Docker的各種炒作,很多科技公司都希望加入這個市場。Docker也正在構建其合作伙伴關系。商業版本的Docker具有來自該公司的支持,并且整合了很多其他軟件平臺,包括來自Red Hat、SuSE和Ubuntu的Linux版本,還有其他服務,例如調度工具(Puppet、Chef、Ansible和Jenkins)。
其他服務供應商都正在其平臺實現Docker。Rackspace公司首席技術官John Engates在本周寫了一篇博客文章稱,最初他和其公司對Docker并沒有很深刻的印象。但是,在客戶開始使用Docker并要求Rackspace支持它后,該公司被“拉”進了這個社區。現在,他們已經非常支持Docker,Engates稱容器化為“下一代虛擬化”。
Rackspace公司正在使用Docker來在不同環境測試和部署新的應用程序,他們甚至在網絡中使用容器,因為這允許基于軟件的負載均衡的多租戶形式。然而,最大的影響可能是,容器可能會帶來工作負載跨不同環境移動的便捷時代。“Docker可以提供抽象化,實現云計算之間工作負載的移動。這些并不需要是OpenStack云計算。操作系統水平的虛擬化能讓應用程序與底層基礎設施無關。Docker可以讓用戶根據其需求找到最合適的解決方案。”