正如集裝箱在運輸領域起到的作用,本來運輸的人是要在各種運輸工具上裝載各種東西的,而有了集裝箱之后,只需要把東西放在集裝箱里面,運輸工具承載集裝箱就可以了。同樣的道理,在Docker這種容器技術出現之前,運維人員要直接面對各種環境進行業務部署,如今在Docker這個云計算領域的“集裝箱”里部署就可以。國內在做Docker的公司很多,有時速云、Caicloud、數人云等。
但Docker也有其缺點——隔離性不強。因為無法對所有應用進行隔離,所以在公有云上使用這種技術時,用戶必須要先開一堆虛擬機,然后再讓Docker在虛擬機上運行,以此來保證用戶數據和業務的安全。因為虛擬機的啟動有時也要花上數十秒,那這樣一來,Docker啟動速度快,輕量化的優勢也就不能完全發揮。
而近一兩年來新出現的一種容器技術Hyper便是希望能解決這些問題。Hyper是一個可以在Hypervisor上,無需安裝完整操作系統,直接運行Docker鏡像的運行引擎。
在Hyper技術的開源者之一趙鵬看來,Docker是讓Docker鏡像運行在Linux容器內,虛擬機是拿KVM去跑這個虛擬機的鏡像,而Hyper則是把兩者錯開了,用虛擬化的技術去運行Docker的鏡像。這樣的好處在于既能通過隔離來保證業務和數據的安全,又能保持Docker快速、輕量化的特點。
當然,Hyper除了可隔離、安全外,同時因為它是可以直接運行在物理機上的,所以也可以讓用戶省去了對于虛擬機的運維工作。過去在使用公有云的Docker服務的時候,除了物理機是公有云服務商在進行管理外,用戶不僅要管理自己的容器應用,可能還要請第三方團隊來管理虛擬機,并負責相應的編排、調度工作。但在使用Hyper技術后,物理機依然歸云服務商管,用戶只要負責管理容器就好。需要管理的東西就少了虛擬機一層,整個運維的難度就會下降。“當你所做的事情少了很多時,做錯事情的概率就會少很多。” Hyper公司 CTO王旭說到。
同時,因為Hyper的啟動速度在200至300毫秒之間,可以快速啟動和快速關閉,這也讓用戶可以隨時發起業務請求,然后在任務運行完畢之后將Hyper關閉。這種特性也就讓Hyper有了不同可能的應用形式。例如,在美國,AWS有一項很熱門的服務——Lambda,支持客戶先行將其編寫的代碼上傳至平臺,無需配置或管理服務器。只要有相應程序產生了觸發,Lambda便會自動運行相應的代碼來進行處理。然后AWS會按代碼執行時間和代碼觸發次數來進行收費。這種“無服務器的服務”也會是Hyper未來的應用形式之一。
因為Hyper降低了運維的復雜度和可實現秒級計費,所以其在用戶成本上也有很大的優勢。據趙鵬介紹,現在國際開源CD/CI項目Buildbot已經將他們的業務運行到Hyper之上,相比過去,其成本只有原來的1/10,同時速度提高也了16倍。
當前,作為一種新的開源技術,Hyper尚在推廣過程之中。Hyper團隊也在美國搭建了一個公有云平臺,他們希望通過這樣一種形式,給終端用戶提供更加好用、便宜的服務,來吸引更多的公有云服務提供商使用這種新技術。
“如果越來越多的企業都想使用了Hyper這種技術來搭建他們的云平臺,那我們公司的價值就會慢慢顯現。雖然Hyper技術是開源的,但肯定有一些公司在技術能力上會有欠缺,那我們的團隊就能憑借我們的技術能力來為他們搭建運用Hyper技術的云平臺。”趙鵬表示。
據悉,Hyper團隊現在已有13人,趙鵬和王旭兩人也有十幾年的開源項目經驗。公司此前也獲得了云天使基金和真格基金的200萬美元的天使輪投資。