1 回答

TA貢獻(xiàn)2080條經(jīng)驗 獲得超4個贊
Kubernetes是一個開源項目,它把谷歌的集群管理工具引入到虛擬機和裸機場景中。它可以完美運行在現(xiàn)代的操作系統(tǒng)環(huán)境(比如CoreOS
和Red Hat
Atomic),并提供可以被你管控的輕量級的計算節(jié)點。Kubernetes使用Golang開發(fā),具有輕量化、模塊化、便攜以及可擴展的特點。我們
?。↘ubernetes開發(fā)團隊)正在和一些不同的技術(shù)公司(包括維護著Mesos項目的MesoSphere)合作來把Kubernetes升級為一種
與計算集群交互的標(biāo)準(zhǔn)方式。Kubernetes重新實現(xiàn)了Google在構(gòu)建集群應(yīng)用時積累的經(jīng)驗。這些概念包括如下內(nèi)容:
Pods:一種將容器組織在一起的方法;
Replication Controllers:一種控制容器生命周期的方法(譯者注:Replication Controller確保任何時候Kubernetes集群中有指定數(shù)量的pod副本(replicas)在運行);
Labels:一種可以找到和查詢?nèi)萜鞯姆椒ǎ?br/>
Services:一個用于實現(xiàn)某一特定功能的容器組;
因此,只要使用Kubernetes你就能夠簡單并快速的啟動、移植并擴展集群。在這種情況下,集群就像是類似虛擬機一樣靈活的資源,它是一個邏輯運算單元。打開它,使用它,調(diào)整它的大小,然后關(guān)閉它,就是這么快,就是這么簡單。
Mesos和Kubernetes的愿景差不多,但是它們在不同的生命周期中各有不同的優(yōu)勢。Mesos是分布式系統(tǒng)內(nèi)核,它可以將不同的機器整
合在一個邏輯計算機上面。當(dāng)你擁有很多的物理資源并想構(gòu)建一個巨大的靜態(tài)的計算集群的時候,Mesos就派上用場了。有很多的現(xiàn)代化可擴展性的數(shù)據(jù)處理應(yīng)
用都可以在Mesos上運行,包括Hadoop、Kafka、Spark等,同時你可以通過容器技術(shù)將所有的數(shù)據(jù)處理應(yīng)用都運行在一個基礎(chǔ)的資源池中。在
某個方面來看,Mesos是一個比Kubernetes更加重量級的項目,但是得益于那些像Mesosphere一樣的貢獻(xiàn)者,Mesos正在變得更加簡
單并且容易管理。
有趣的是Mesos正在接受Kubernetes的理念,并已經(jīng)開始支持Kubernetes
API。因此如果你需要它們的話,它將是對你的Kubernetes應(yīng)用去獲得更多能力的一個便捷方式(比如高可用的主干、更加高級的調(diào)度命令、去管控很
大數(shù)目結(jié)點的能力),同時能夠很好的適用于產(chǎn)品級工作環(huán)境中(畢竟Kubernetes仍然還是一個初始版本)。
當(dāng)被問到區(qū)別的時候,我會這樣回答:
如果你是一個集群世界的新手,那Kubernetes是一個很棒的開始。它可以用最快的、最簡單的、最輕量級的方式來解決你的問題,并幫
助你進(jìn)行面向集群的開發(fā)。它提供了一個高水平的可移植方案,因為很多廠商已經(jīng)開始支持Kubernetes,例如微軟、IBM、Red
Hat、CoreOS、MesoSphere、VMWare等。
如果你擁有已經(jīng)存在的工作任務(wù)(Hadoop、Spark、Kafka等),那Mesos可以給你提供了一個將不同工作任務(wù)相互交錯的框架,然后還可以加入一些新的東西,比如Kubernetes應(yīng)用。
如果你想使用的功能Kuberntes還沒實現(xiàn),那Mesos是一個不錯的替代品,畢竟它已經(jīng)成熟。
- 1 回答
- 0 關(guān)注
- 1076 瀏覽
添加回答
舉報