「容器該不該放進VM中執行?」這是前幾天,我遇到SUSE作業系統商工程、產品及創新總裁Thomas Di Giacomo時,碰面寒暄後的第一個問題。

Thomas回答:「這是一個最好的折衷作法。因為容器不夠安全,而且VM的可攜性又太差。」

Thomas可是全球開源技術和網路界的大人物,憑著電信產業多年技術長經歷,成了Linux基金會網路部門主席,後來更成了Cloud Foundry基金會董事和力推Kubernetes的CNCF董事會成員至今,是開源和雲端原生產業的意見領袖之一。2016年進入SUSE擔任技術長,在SUSE獨立後,他更進一步接下現在的職位。

站在全球開源雲端技術的第一線,Thomas並不認為,容器足以成為取代VM的萬靈丹,尤其,從企業角度來看,容器不夠安全。而且,Thomas強調,這不只是他的個人看法,Google也是如此。Google早在去年5月開源釋出的沙盒容器gVisor,就是最好的證據。

沙盒容器gVisor其實就是一種「虛擬化的容器」(Virtualized Container),同樣是將容器放進了虛擬機器中,只是gVisor不是採用傳統笨重的虛擬機器,而是經過優化、客製,專門為容器而瘦身的特殊VM。Google的理由也是為了安全問題。

Thomas告訴我,虛擬化技術已經有成熟的網路管理、儲存支援與安全政策管理機制,這些都是目前容器技術還不夠成熟之處。可是,微服務世界已經來了,雲端原生應用到處都是,這些都非得靠容器技術,才能更輕巧,快速擴張和移動。安全怎麼辦,最快的方法就是「容器放進VM,兩者結合就走出了基礎架構的第三條路。」他說。

這也不是新的點子,VMware早在2015年,就開始研究一個VM搭配一個容器的部署方式,甚至還研發出了一個超輕量的作業系統Photon OS,不過,這款產品在VMware原有虛擬化平臺上的布局,要等到今年8月底才會揭曉。

而從VM技術起家的OpenStack也在Kubernetes競賽上慢了一步,為了追上容器技術競爭的腳步,選擇從VM優勢來切入容器,在2年前發起一個Kata容器計畫,同樣要打造出一款類似gVisor的虛擬化容器產品。

如今,Kata越來越成熟,上個月SUSE正式將Kata納入SUSE Linux滾動升級版本中。Thomas表示「這將會是Linux作業系統的重要能力之一。」

但是,將容器放進VM,雖然兼具了兩家之長,但也喪失了不少容器輕量化的優勢,更大的挑戰是「基礎架構維運的複雜度增加了,試想在K8s平臺上,一群虛擬化的容器組成了K8s的POD叢集時,監控機制能否同時蒐集到容器和VM的狀態和變化,將比過去的難度更高上好幾倍,「甚至,如何調校彼此互相搭配時的效能,將會是更大的挑戰!目前,我還沒有看到這方面的技術或產品。容器和VM將會共同存活很長、很長一段時間,就像30年前的大型主機,至今仍在一樣。」Thomas這樣告訴我。

專欄作者

熱門新聞

Advertisement