Azure新的首席技術官Mark Russinovich表示,和谷歌Kubernetes項目中的Docker類似,微軟也在使用自己的Drawbridge技術來揮灑對容器技術方面的熱情。但是,盡管該技術被看成是平臺即服務的未來,Russinovich仍然直言不諱地表示他覺得Docker容器缺乏安全性方面的防護。
容器是一種輕量級的虛擬化,它建立在一個單個的Linux實例之上,每個容器在簡版的操作系統上按照資源策略容納著一個獨立運行的應用程序。Docker是一個開放源代碼項目,旨在將容器內的應用程序部署自動化。
在六月份,微軟展示了部署在Azure Linux虛擬機之上的Docker。一個月之后,該公司透露計劃向谷歌的Kubernetes Docker容器集群管理貢獻代碼。
Russinovich表示,“我們看到很多人對于Linux(在Azure之上)的興趣,但是隨著對于Linux的興趣的增長——如同每個人在任何地方看到的那樣——對于在Linux和Docker中使用容器的興趣也隨之增長,Docker已經真正成為在Linux上使用容器的標準方法。”
微軟和紅帽攜手的消息以及將它將支持Azure云計算平臺的可能性體現出微軟對Linux的興趣,這一技術目前已經可以用于CentOS、openSUSE、Oracle Linux、SUSE Linux Enterprise和Ubuntu平臺。
Russinovich表示,“我們很樂意在Azure上有一個得到支持的紅帽版本。”但是在被問及這一情況是否會很快出現的時候,他回答道:“我不知道。不幸的是,這就是我能說的一切了。”
微軟在內部針對一些中間件服務使用了自己的容器軟件,使用了來自微軟研究院Drawbridge項目的技術。Russinovich表示,“容器革命——這項容器提供的、很小的軟件服務讓軟件能夠可靠地從測試環境遷移到生產環境之中,生產環境中的計算是高密度和高利用率的——肯定是平臺即服務以及計算的一種未來趨勢。”
但是,Docker提供的便攜性是推動容器使用的重要力量,它的作用顯然超過了安全問題引發的擔心。
Russinovich表示,“這些容器都是不安全的。它們無法隔離。它們共享了太多底層操作系統的東西,因此它們無法有效地解決安全問題,至少沒有達到讓我們能夠放心地將兩個不同的用戶同時在容器中運行的安全程度。但是它的價值在于在開發測試環境中的便攜性。你寫代碼,你測試代碼,它生活在一個氣泡之中,和服務器上其他的軟件隔離開來。”
“你可以很有信心地使用它,并且將它部署到虛擬機或者服務器上,你知道它會以同樣的方式運行,因為它仍然在氣泡中,它不會受到服務器或者虛擬機上其他軟件的影響。”
Russinovich表示Docker和Drawbridge——微軟正在考慮在Windows中公開推出——兩者在目標上幾乎一模一樣,但是在很多重要的領域存在著重要的不同。
他表示,“它們非常類似,但是顯然Docker是建立在Linux之上的容器技術,它是Linux的技術,它們是不安全的——那些容器。Drawbridge是Windows之上的容器技術,它是內部的,不是公開的,它非常安全。”
“它支持我們稱之為多租戶工作負載,所以它下方是虛擬機上的云計算機器學習等服務,我們會運行這些Drawbridge容器,安全地運行客戶的云計算機器學習算法。”
“它不是一種公開提供的容器技術,只能通過這些類型的服務間接地使用它。”
隔離資源的能力也是推動容器得到廣泛使用的一個重要優勢。
Russinovich表示,“隔離意味著不受其他應用程序和其他應用程序配置的干擾,也意味著資源的隔離。”
“資源隔離讓你將虛擬機當成是你的安全邊界,并且將其完全置于輕量級的容器之中,這些容器高速運轉,你可以將很多容器放在一個虛擬機之中,充分利用它。”
“所以你可以將數百個容器放在一個虛擬機之中。非活躍狀態的容器會釋放自己占用的資源;那些活躍的容器則會獲得資源。”
“你利用資源隔離來確保基本水平的服務,以此保障容器的運行。這些都是真正強大的特性,而且有正當的存在理由,并且引發了圍繞著Docker和容器的大量炒作。”