誰是最棒的容器作業系統?
對於任何在過去兩年一直追隨者容器(container)社群逐漸繁榮的人來說( Solomon Hykes 在 PyCon 大會上做了有名的五分鐘報告之後),你會發現越來越多的公司或專案不斷湧現,提供許多創新方式來管理你的應用。
有許多專案圍繞者管理(management),網路(network), 儲存(storage), 日誌(logging),監控(monitoring), 及更多 (參考這篇精妙的 ecosystem 之腦圖 )。 然而,我認為,最流行的專案應是為你的或將有的應用環境構建基礎架構:容器作業系統(container OSes)。
參加容器會議時,與人交流,總是聽到一個問題是,“哪個作業系統最適於執行容器?” 接著就是問, “是 CoreOS? RedHat 怎麼樣? 我也聽到過有個叫 RancherOS 的?”
我喜歡這些爭論;這就類似於“哪個 Hypervisor 最好?” 當然,答案總是“這得看情況。” 我仍然打算試著就當前(截稿時間為止)最流行的容器作業系統,解釋關鍵利益點和差別。
CoreOS
這是容器作業系統的代表。 CoreOS 側重於大規模部署,主要面向企業,良好的社群支援(數百貢獻者,500+ IRC 使用者, 在#coreos on FreeNode)。它整合了許多由 CoreOS專案組開發的令人感興趣工具,如etcd, fleet,和flannel。這些工具能助你快速搭建起CoreOS叢集。同時,他們也能幫助你更深入的理解服務發現,資源規劃和容器網路的背後概念。
2014年12月, the CoreOS專案組釋出了另外一個容器執行時引擎型別, rkt。它是回應專案組中提到的Docker將從原始平臺移出的宣告,他們想觀察社群的反應是否相同。CoreOS仍將同時支援Docker和rkt兩種容器,所以,不用擔心未來一段時間會出現功能問題。
CoreOS專案組也已經聯手Google (Google風險基金是CoreOS投資者之一) ,也建立了Tectonic(構建平臺), 很有趣的以簡單有效地執行CoreOS+ Kubernetes平臺的方式。 Tectonic 是商業Kubernetes平臺,如果你運維大規模,需要高於社群的技術支援,它就很重要。
RancherOS
Rancher 將容器作業系統的目標更進一步,在RancherOS中,所有都是一個 Docker容器。它們執行一個系統級別的Docker,PID=1,然後啟動一個使用者級別的Docker,可以執行所有的使用者容器。
聽起來很瘋狂,但作業系統本來就不該做其他事,只做有必要的事。Rancher剝離所有不必要的服務,使得作業系統很輕量級。ISO安裝包只有22MB。
更令人感興趣的是可以使用Rancher系統,在作業系統的上層新增所有服務。在你考慮在你的容器生產環境增加必要的服務時,你通常需要如下功能,如安全,易聯網,服務發現,負載均衡,監控和排程。 Rancher在RancherOS上層新增所有這些,甚至更多。 這是一個綜合系統,我強烈推薦你去看看closer look.
Snappy Ubuntu Core
這個有趣的專案是Mark Shuttleworth去年釋出的 。他認為當時可用的容器作業系統比較臃腫。
Snappy Ubuntu Core OS 提供了一種新型別的應用管理器 (“snappy”) ,專注於執行apps和容器。某些人或許會堅持認為這不是容器作業系統改做的事情,但是,這或許也是一個好的過度性作業系統。它為那些沒有時間學習複雜的 etcd, Consul, fleet, Kubernetes,及所有其他工具的人,提供了研究明白(容器作業系統)各種事情的一個好的學習機會。
系統基礎是 “Ubuntu Core.” 在它上層,你的apps活動在只讀映象中 (類似容器), apps支援事務性更新。這是個大進步— 你不再需要整改應用去部署新版本,你僅需要下載你修改的部分就可以了。
Snappy Ubuntu Core OS不算一個純粹的容器作業系統,不過,它具備一些吸引人的方面。生產環境中執行Ubuntu的人,或者對apps和容器都感興趣的人,一定會關注它。
RedHat Project Atomic
此釋出版基於CentOS, Fedora, and RHEL伺服器作業系統的upstream RPMs(Redhat安裝包), 支援RedHat稱為原子的更新和回滾。這取決於你,親愛的讀者朋友,選擇哪個釋出版本作為你管理你的伺服器的基礎。
作業系統內建了許多功能,Docker, flannel (CoreOS專案組出品), Kubernetes, 事務作業系統更新工具rpm-ostree,它總是儲存上一個版本(類似CoreOS)和course systemd可用(供回滾)。
Project Atomic 採用SELinux嘗試加固容器,管理對容器的讀寫訪問。我認為,使用已有的可信的技術來構建,主意很不錯。我猜,很快就會看到RedHat 在該專案上更多動作,不過,目前為止,好訊息還很少 。
Mesosphere DCOS
Mesosphere DCOS專案常常會被誤認為是Apache Mesos (命名問題?)。不在意這個的話,它提供了一個非常健壯和創造性的方式來考慮如何管理容器。
它利用開源專案如Apache Mesos, Marathon, Zookeeper,和許多其他服務,以清晰的方式將它們整合一道一起,另外還在其上新增了企業特性。DCOS product還是GA版本,提供兩個版本:社群版 (免費) ,面向 AWS工作量(級別);企業版,適用其他所有場合。
Mesosphere DCOS最讓人感興趣的是它不只侷限與容器管理。它畢竟基於Mesos構建, 應該可以做更多的事。部署Hadoop叢集怎麼樣?或者大規模Cassandra叢集? Mesosphere統統內建(支援),我相信這是它與其他容器作業系統的關鍵性差別之一,這將使得Mesosphere DCOS很成功。
VMware Photon
4月釋出的VMware Photon 是一款新的容器操作性系統,是VMware開源努力的第一步。VMware目標明確定位在應用大規模部署 ,正如你在它們的其他專案 Lightwave中看到的,提供身份鑑權服務,包括大規模分散式基礎構架、應用和容器的認證和授權。不久會更多,我相信。
總結
明顯,上述專案還有很多工作要做,它們每一個都會將自己的東西增加到這個領域(容器作業系統)。我希望本次對比有助於你選一個你感興趣的專案,探索研究不同的容器操作和管理系統的可能性。祝你好運!
相關文章
- Photon 也許能成為你最喜愛的容器作業系統作業系統
- 作業系統是什麼?Linux是什麼作業系統?作業系統Linux
- 作業系統已死?容器勝出!作業系統
- 瞭解用於 Linux 和 Windows 容器的 Docker “容器主機”與“容器作業系統”LinuxWindowsDocker作業系統
- 作業系統(1)——作業系統概述作業系統
- 作業系統(一):作業系統概述作業系統
- 各個作業系統的 作業系統日誌作業系統
- “Linux”VS“Windows”作業系統你更青睞誰(轉)LinuxWindows作業系統
- 作業系統(二):作業系統結構作業系統
- 【作業系統】作業系統綜述(一)作業系統
- 誰是最強谷民
- 作業系統 作業5作業系統
- 中國首家!EasyStack 釋出企業級容器 Linux 作業系統Linux作業系統
- 盤點!最適合新手使用的Linux作業系統Linux作業系統
- Windows 7 成為全球使用最廣泛的作業系統Windows作業系統
- 語言是思考的作業系統 - François Chollet作業系統
- JVM是怎麼和作業系統互動的?JVM作業系統
- 外甥問我什麼是作業系統?作業系統
- 作業系統1—作業系統概論(上)作業系統
- 作業系統2—作業系統概論(下)作業系統
- 作業系統的馬戲團作業系統
- 《作業系統》作業系統
- 作業系統作業系統
- [作業系統]作業系統
- Linux是什麼樣的作業系統?是免費的嗎?Linux作業系統
- 作業系統: Unix作業系統演進簡史作業系統
- 計算機作業系統|作業系統引論計算機作業系統
- 不同作業系統上遮蔽oracle的作業系統認證方式作業系統Oracle
- 安卓即將趕超Windows,成全球最流行的作業系統安卓Windows作業系統
- Windows作業系統是“本國貨物”嗎?Windows作業系統
- Web作業系統僅僅是痴人說夢?Web作業系統
- 為何說 Ubuntu 是使用最廣泛的 Linux 作業系統的五大理由UbuntuLinux作業系統
- 微軟:Server2008將是最後一款32位作業系統微軟Server作業系統
- 作業系統-1.1_2作業系統四個特徵作業系統特徵
- 計算機作業系統教程 2 作業系統概述計算機作業系統
- 作業系統的選擇作業系統
- 作業系統的安全配置作業系統
- 容器化作業系統概覽作業系統