×

持應(yīng)用這件事上,容器更“?!碧摂M機更“寬”

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2018-04-25 13:26:03

容器和虛擬機最根本的區(qū)別是一個用于應(yīng)用程序,另一個是為整個操作系統(tǒng)設(shè)計的。自從Linux上的容器變得流行以來,找出容器和虛擬機之間的區(qū)別變得更加棘手??梢粤私馊萜骱吞摂M機之間的差異。

  1635.jpg_wh300.jpg

  容器和虛擬機最根本的區(qū)別是一個用于應(yīng)用程序,另一個是為整個操作系統(tǒng)設(shè)計的。自從Linux上的容器變得流行以來,找出容器和虛擬機之間的區(qū)別變得更加棘手??梢粤私馊萜骱吞摂M機之間的差異。
  容器vs虛擬機——應(yīng)用程序與操作系統(tǒng)
  首先要了解的有關(guān)容器和虛擬機的一個區(qū)別是,一個用于應(yīng)用程序,另一個是為整個操作系統(tǒng)設(shè)計的。這就是為什么你經(jīng)常會看到一些企業(yè)應(yīng)用程序運行在容器而不是自己的虛擬機上的原因。
  在虛擬機上使用容器有一些有意思的優(yōu)點。
  容器最大的優(yōu)點之一是可以預(yù)留比虛擬機更少的資源。請記住,容器本質(zhì)上是單個應(yīng)用程序,而虛擬機需要資源來運行整個操作系統(tǒng)。
  更簡單地說,請考慮以下內(nèi)容:如果你需要運行MySQL、NGINX或其他服務(wù)的多個實例,使用容器是非常有意義的。
  但是,如果你需要在自己的服務(wù)器上運行完整的LAMP堆棧,運行虛擬機就很不錯。
  虛擬機為你提供更大的靈活性來選擇操作系統(tǒng),并在你認(rèn)為合適的情況下進行升級。相比之下,容器意味著運行已配置應(yīng)用程序的容器在操作系統(tǒng)升級方面與主機是隔離的。
  容器vs虛擬機——用例場景
  筆者最喜歡使用容器最有意義的例子之一就是Linux庫版本。
  例如,假設(shè)你有一個需要特定版本Python的關(guān)鍵任務(wù)應(yīng)用程序。然后你在運行應(yīng)用程序的盒子上進行更新,突然發(fā)現(xiàn)Python版本發(fā)生了變化,導(dǎo)致應(yīng)用程序無法正常工作。
  使用容器的另一個關(guān)鍵好處是你可以把一個應(yīng)用程序放到一個容器中,然后在任何支持該容器類型的操作系統(tǒng)上運行它。
  其中一個例子就是,當(dāng)你想在不同的Linux發(fā)行版上構(gòu)建類似的應(yīng)用程序環(huán)境。通過使用容器,你就可以實現(xiàn)。
  容器提供了可移動性。
  甚至可以認(rèn)為,容器對于快速的跨發(fā)行版部署更有意義,而虛擬機在像運行LAMP堆棧這樣的單一應(yīng)用程序使用情況下是有意義的。
  容器vs虛擬機——安全
  普遍認(rèn)為,與容器相比,虛擬機提供了更多的安全性。這并不是說容器不安全,而是指默認(rèn)情況下虛擬機提供了更強的隔離。請記住,容器共享系統(tǒng)資源,而虛擬機不支持這么做。
  在運行容器時,可以采取一些措施來降低風(fēng)險,包括避免超級用戶權(quán)限,確保從可信源獲取容器,并且保持最新狀態(tài)。謝天謝地,有些容器是數(shù)字簽名的,這有助于確定你從可信源獲取容器。
  最后,你需要保持一個容器的單一職能。一旦你開始在一個容器下結(jié)合了其他的軟件職能,你會發(fā)現(xiàn)你最好用虛擬機代替。重申一次,容器是為了單一用途的應(yīng)用程序,虛擬機是為了多用途的應(yīng)用程序。堅持這種方法,你將在安全性和總體功能方面處于更好的狀況。
  容器vs虛擬機——選擇合適的工具
  無論虛擬機或容器類型如何,選擇適合需求的關(guān)鍵都?xì)w結(jié)于研究每個選項的能力。在容器領(lǐng)域,Docker提供了強大的企業(yè)解決方案。這吸引了一些關(guān)注Docker容器的公司,因為公司知道如果出現(xiàn)任何問題,他們可以得到所需要的支持。Docker也被認(rèn)為是企業(yè)用戶友好的選擇,特別是在Docker Swarms中。將Docker Swarms與Kubernetes相比,Kubernetes在高級環(huán)境中的設(shè)置要復(fù)雜得多。
  回到虛擬機,筆者總是發(fā)現(xiàn)Virtualbox可以提供更好的面向桌面的虛擬機環(huán)境,而VMware在服務(wù)器方面做了各種各樣的產(chǎn)品。
  VMware擁有從存儲到云服務(wù)器解決方案的各種虛擬機解決方案。還有其他選擇(各種管理程序等),但筆者認(rèn)為VirtualBox和VMware很好地代表了桌面到服務(wù)器虛擬化的兩個領(lǐng)域。
  容器vs虛擬機——贏家是?
  在試著決定是容器還是虛擬機之前,請考慮以下事項。你可以在虛擬機上運行容器。了解這一點很重要,因為沒有明顯的贏家或輸家。事實上,這兩種技術(shù)滿足完全不同的需求。
  容器將繼續(xù)在媒體中引起關(guān)注,因為它們允許用戶以更少的硬件更高效地運行。另一方面,虛擬機仍然是服務(wù)器和云領(lǐng)域的主要部分??梢赃@么說,虛擬化哪兒也不會缺,并且會和容器一樣火。
  筆者認(rèn)為值得一看的是Kubernetes和Docker Swarms這兩種容器管理技術(shù)是如何發(fā)揮作用的。
  現(xiàn)在,我們從Kubernetes陣營中能看到更多信息。隨著時間的推移,我們將開始看到Kubernetes成為頭條新聞,成為容器領(lǐng)域的焦點。
  你怎么看?你相信容器正在超越虛擬機嗎?
 

免責(zé)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認(rèn)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費咨詢獲取折扣

Loading