內(nèi)容來源:本文由IT大咖說(WeChat_ID:itdakashuo)轉(zhuǎn)自數(shù)人云(ID:dmesos)剪验,好文請(qǐng)多支持!感謝您的閱讀。
閱讀字?jǐn)?shù):3071?| 5分鐘閱讀
摘要
2017年的云計(jì)算市場(chǎng),有一個(gè)領(lǐng)域獲得了空前的關(guān)注 -- Kubernetes。 Kubernetes可以追溯到2014年簇秒,當(dāng)時(shí)Google公開發(fā)布了該項(xiàng)目的開源代碼。2017年秀鞭,Kubernetes廣受歡迎趋观,幾乎所有的主要IT供應(yīng)商都支持這個(gè)平臺(tái)扛禽。
今天推送的這篇文章,為您揭示Kubernetes與Docker容器之間是怎樣的關(guān)系皱坛?對(duì)企業(yè)客戶又意味著什么旋圆?
1
Kubernetes是一個(gè)開源項(xiàng)目,提供容器編排麸恍,部署和管理功能灵巧。自?2015?年?7月以來,它一直是由Linux基金會(huì)下的云原生計(jì)算基金會(huì)(CNCF)運(yùn)營(yíng)抹沪。盡管Kubernetes不再只是Google的一個(gè)項(xiàng)目刻肄,Google仍然貢獻(xiàn)了遠(yuǎn)大于比其他任何機(jī)構(gòu)的代碼量。
將AIX應(yīng)用程序遷移到云的最佳實(shí)踐
Kubernetes 2017年如此耀眼融欧,2018年Kubernetes將繼續(xù)成為一支重要的力量敏弃。要理解這點(diǎn),首先要認(rèn)識(shí)到這項(xiàng)技術(shù)和云計(jì)算的完美契合之處噪馏。?
在過去三麦到,四年中,越來越多的企業(yè)選擇使用Docker容器來部署云工作負(fù)載欠肾。Docker容器提供的既是運(yùn)行容器化應(yīng)用程序的運(yùn)行時(shí)瓶颠,也是封裝和交付容器應(yīng)用的格式。容器提供了直接在虛擬機(jī)管理程序內(nèi)部改善可移植性和效率的承諾刺桃。
隨著容器使用量的增長(zhǎng)粹淋,需要對(duì)容器集群進(jìn)行編排,調(diào)度和控制瑟慈。這就是Kubernetes適合的地方桃移。Kubernetes提供了大規(guī)模運(yùn)行容器的編排系統(tǒng)和管理平臺(tái)。還提供了一系列API抽象葛碧,使其他技術(shù)可以插入借杰,使平臺(tái)具有很強(qiáng)的可擴(kuò)展性,并且能夠支持各種不同的供應(yīng)商部署用例进泼。
比其核心編排能力更重要的是蔗衡,Kubernetes在2017年成為實(shí)現(xiàn)多云世界的事實(shí)平臺(tái)。雖然AWS在2017年繼續(xù)主導(dǎo)公有云缘琅,但企業(yè)仍然希望能夠在多個(gè)云上部署和運(yùn)行應(yīng)用程序粘都。
容器提供了運(yùn)行應(yīng)用程序的基本包裝廓推,可以在任何支持容器的云上部署刷袍。有了Kubernetes,就有了一個(gè)平臺(tái)樊展,可以幫助企業(yè)在運(yùn)行Kubernetes的云或本地部署管理容器的部署和編排呻纹。
云中的Kubernetes
一顆種子總會(huì)發(fā)芽堆生,結(jié)出碩果。在作為開源技術(shù)的短短3年時(shí)間里雷酪,Kubernetes成為基于容器的工作負(fù)載的默認(rèn)編排引擎淑仆。雖然捐贈(zèng)的是1.0版本,但是谷歌在大規(guī)模運(yùn)行容器方面有十年的研究和經(jīng)驗(yàn)哥力。
Google是否在內(nèi)部使用Kubernetes蔗怠?來自Kubernetes博客:“Google上的許多開發(fā)人員都是以前在Borg項(xiàng)目上的開發(fā)人員。我們已經(jīng)將Borg的最佳創(chuàng)意融入了Kubernetes吩跋,并試圖解決用戶在多年來與Borg確定的一些痛點(diǎn)寞射。”
谷歌在一些內(nèi)部項(xiàng)目中使用Kubernetes的聲音很清晰锌钮,且很快就會(huì)改變一些現(xiàn)有的關(guān)鍵產(chǎn)品桥温。即使未來需要更好的展示,Kubernetes也可以輕松定制 – 最大的好處是可以根據(jù)需要將自定義組件與現(xiàn)有組件進(jìn)行混合和匹配梁丘。
以下是Google在過去幾年 Kubernetes 的搜索量增長(zhǎng)情況:
Google在Kubernetes上運(yùn)行的Linux容器(LXC)并不是那么容易處理侵浸,而且需要掌握更多的專業(yè)知識(shí)。
2017年初氛谜,Kubernetes 只支持谷歌云平臺(tái)(GCP)和谷歌Kubernetes引擎(GKE)掏觉,但是在一年中,擴(kuò)展到包括所有三家主要的公有云供應(yīng)商值漫。
二月份履腋,微軟正式加入支持Kubernetes的行列,宣布?Azure容器服務(wù)支持Kubernetes惭嚣。去年11月遵湖,Kubernetes在亞馬遜彈性容器服務(wù)(Amazon EKS)首次亮相。
除了公有云支持外晚吞,CNCF在9月份還宣布了Kubernetes認(rèn)證服務(wù)提供商計(jì)劃延旧。該計(jì)劃現(xiàn)在有25個(gè)合作伙伴公司開發(fā)和銷售自己的Kubernetes發(fā)行版并提供管理服務(wù)。為了確保不同Kubernetes供應(yīng)商和平臺(tái)之間的互操作性槽地,CNCF于2017年11月推出了認(rèn)證Kubernetes計(jì)劃迁沫,目前擁有42個(gè)成員公司。
Docker
Kubernetes部署大多使用Docker作為默認(rèn)的容器引擎捌蚊,除此之外還有CoreOS的rkt等集畅。就其本身而言,Docker有一個(gè)叫做Swarm的自身的編排系統(tǒng)缅糟,首次亮相于2014年12月挺智。
在許多企業(yè)的容器部署中,多數(shù)情況是Docker容器引擎正在被使用窗宦,Kubernetes被選擇作為編排工具赦颇,而不是Swarm二鳄。10月17日,在與Kubernetes進(jìn)行了三年的市場(chǎng)競(jìng)爭(zhēng)之后媒怯,Docker Inc.宣布也將支持Kubernetes订讼。
要清楚的是,Docker公司并沒有放棄自己的Swarm容器編排系統(tǒng);?相反扇苞,它同時(shí)支持Swarm和Kubernetes欺殿,讓企業(yè)可以選擇想要使用的平臺(tái)。
在接受eWEEK?視頻采訪時(shí)鳖敷,Docker首席執(zhí)行官史蒂夫·辛格(Steve Singh)解釋了為什么選擇擁抱Kubernetes祈餐。Singh說:“Kubernetes為我們所做的事情是消除了任何潛在的混亂和沖突。我們有愛Kubernetes的客戶哄陶,也有愛Docker Swarm的客戶帆阳,不應(yīng)該強(qiáng)迫客戶在兩者之間做出選擇,而是讓他們選擇想要使用他們的東西屋吨。 ”
Kubernetes之前的Docker 讓容器變得更酷蜒谤,更易用。由Docker公司推出的Docker 在LXC功能的擴(kuò)展之外至扰,增加了多種功能鳍徽。包括跨機(jī)器的可移植部署,版本控制敢课,組件重用以及現(xiàn)在的?Docker Hub?阶祭,它提供了“開發(fā)測(cè)試流水線自動(dòng)化,100,000個(gè)免費(fèi)應(yīng)用程序直秆,公共和私有注冊(cè)中心”濒募。
以下是Google for Docker搜索量增長(zhǎng)的圖表:
Kubernetes 1.9和超越
2017年,Kubernetes更新了四個(gè)主要版本圾结,增加了新的特性和功能瑰剃。第一個(gè)主要版本是3月27日推出的Kubernetes 1.6,帶來了新的可擴(kuò)展性和穩(wěn)定性功能筝野。Kubernetes 1.7于6月29日發(fā)布晌姚,提供了幫助管理和保護(hù)容器基礎(chǔ)設(shè)施的新功能。第三個(gè)版本是1.8更新歇竟,于9月28日推出挥唠,并支持基于角色的訪問控制(Role-Based Access Control,RBAC)焕议。
Kubernetes 1.9是2017年的最后一次重大更新宝磨,于12月15日正式推出。Kubernetes 1.9的亮點(diǎn)是Apps Workloads API,它為 Kubernetes 中長(zhǎng)時(shí)間運(yùn)行無狀態(tài)和有狀態(tài)工作負(fù)載提供了基礎(chǔ)懊烤。
這是Kubernetes轉(zhuǎn)型的一年,2017開源的努力始于一家公有云供應(yīng)商宽堆,終于年底支持所有三家主要的公有云提供商腌紧。該項(xiàng)目也從Docker競(jìng)爭(zhēng)對(duì)手的角色轉(zhuǎn)到被Docker擁抱。多云的承諾長(zhǎng)久以來只是一個(gè)承諾畜隶。作為一個(gè)可以在任何公有云提供商上啟用容器應(yīng)用程序工作負(fù)載的抽象層壁肋,隨著Kubernetes 2017年的興起,2018多云承諾將成為現(xiàn)實(shí)籽慢。
2
Kubernetes正在鞏固自己作為事實(shí)上的容器編排引擎的地位浸遗,而Docker幫助實(shí)現(xiàn)了這一點(diǎn)。盡管Docker一直是領(lǐng)先的容器技術(shù)箱亿,但容器編排市場(chǎng)還沒這么清晰跛锌。2017年末,隨著包括Docker在內(nèi)的主要云平臺(tái)提供商支持Kubernetes和一些令人驚訝的CNCF成員資格的增加届惋,這種情況發(fā)生了變化髓帽。
正確的時(shí)機(jī)
“時(shí)機(jī)就是一切”,對(duì)于Kubernetes來說脑豹,這似乎是正確的郑藏。通過讓容器更易用,Docker正在推動(dòng)Kubernetes的發(fā)展瘩欺。事實(shí)上必盖,它已經(jīng)成為每個(gè)公司發(fā)展的共生關(guān)系?。使用Kubernetes的人越多俱饿,使用Docker的也會(huì)越多歌粥,反之亦然。
根據(jù)?Portworx2017年度容器采購(gòu)調(diào)查?(2017年2月至3月完成)拍埠,有兩項(xiàng)統(tǒng)計(jì)數(shù)據(jù)顯示:
“對(duì)于擁有超過5000名員工的公司阁吝,Kubernetes的使用率為48%,主要編排工具占33%械拍⊥挥拢”
“79%的樣本選擇Docker作為主要容器技術(shù)】缆牵”
為了進(jìn)一步加持 Kubernetes 領(lǐng)導(dǎo)者地位甲馋,大型云計(jì)算和軟件供應(yīng)商們紛紛加入,以支持Docker容器的工作負(fù)載迄损。
Kubernetes商業(yè)化產(chǎn)品
自從開源以來定躏,Kubernetes有很多商業(yè)化產(chǎn)品,在過去的幾個(gè)月,這個(gè)list上取得了重大且令人印象深刻的突破痊远。
以Google(Google ContainerEngine)垮抗,Red Hat(OpenShift),CoreOS(Tectonic)碧聪,Canonical和 Apprenda 為長(zhǎng)期商業(yè)供應(yīng)商(長(zhǎng)期以月計(jì))冒版。微軟和VMware也已經(jīng)提供了對(duì)Kubernetes的支持,最近已經(jīng)全面all-in 推出逞姿。
2017 Kubernetes 得勝之年
2017年下半年辞嗡,主要云服務(wù)商將Kubernetes添加到其核心產(chǎn)品中。值得注意的公告包括:
亞馬遜網(wǎng)絡(luò)服務(wù)(AWS)于八月份以白金會(huì)員?(最高級(jí)別)?加入了CNCF滞造。雖然AWS加入CNCF與 Kubernetes 沒有直接關(guān)系续室,但AWS擁有大量客戶在運(yùn)行容器和Kubernetes。
之后谒养,10月份挺狰,Cloud Foundry基金會(huì)宣布了由Kubernetes提供支持的Cloud Foundry Container Runtime(CFCR),而Pivotal Cloud Foundry(與VMware合作?)則?于10月份在VMworld?宣布了Pivotal Container Service(PKS)买窟。Pivotal和VMware都作為CNCF的白金會(huì)員注冊(cè)她渴;?再次,可用的最高水平蔑祟。
VMware正在與Kubernetes合作的事實(shí)是一個(gè)明確的信號(hào)趁耗,Kubernetes和容器希望保持相關(guān)性。許多人質(zhì)疑容器和云計(jì)算是否會(huì)取代虛擬機(jī)疆虚。雖然專家認(rèn)為他們?cè)谄髽I(yè)中存在共存的空間苛败,但可以看看VMware這位虛擬化之王的明顯轉(zhuǎn)變。
在十月之后径簿,Microsoft 將?Azure容器服務(wù)?(ACS)更名?為AKS罢屈,K代表Kubernetes。這與他們以前的觀點(diǎn)有很大的轉(zhuǎn)變篇亭,即?ACS的好處之一是它支持多種編排工具?缠捌。
即使是Docker Inc.也已經(jīng)屈服,最近在其Docker企業(yè)版框架中添加了本地Kubernetes支持译蒂。這對(duì)Kubernetes來說是一個(gè)重大的勝利曼月,并將推動(dòng)Docker自己的編排平臺(tái)Docker Swarm的未來發(fā)展。
Docker甚至委托獨(dú)立基準(zhǔn)測(cè)試來對(duì)比Swarm和Kubernetes?柔昼。兩者肯定都有用例哑芹,但Kubernetes得到Google支持的事實(shí)是經(jīng)過了戰(zhàn)斗性測(cè)試的(還記得?PokémonGO嗎???)捕透,并且擁有巨大的社區(qū)支持聪姿,企業(yè)把它看作標(biāo)準(zhǔn)的容器編排引擎碴萧。?
這對(duì)企業(yè)意味著什么?
Kubernetes和Docker一直在堅(jiān)持末购。隨著公司遷移到云端破喻,他們會(huì)發(fā)現(xiàn)他們有一些需求PaaS或IaaS最適合,還有一些其他需求容器(有些人稱之為CaaS)會(huì)更適合盟榴。
為了享受到上云帶來的好處曹质,企業(yè)正在轉(zhuǎn)向DevOps和云原生開發(fā)。采用DevOps時(shí)曹货,企業(yè)開始使用運(yùn)行在容器中的微服務(wù)咆繁,將應(yīng)用程序構(gòu)建為獨(dú)立的組件讳推。這些團(tuán)隊(duì)將會(huì)變得更卸プ选(?亞馬遜CTO Werner Vogels?創(chuàng)造了“雙比薩團(tuán)隊(duì)”(two-pizza team)一詞),并且能夠獨(dú)立于應(yīng)用的其他組件更新其“服務(wù)”的功能银觅。
通過將開發(fā)工作分解為專注于解耦服務(wù)的小型團(tuán)隊(duì)礼饱,企業(yè)可以擴(kuò)展開發(fā)工作,并更快地為客戶/用戶提供價(jià)值【柯浚現(xiàn)在镊绪,已然不是每六個(gè)月更新一次的代碼庫,而是按需隨時(shí)進(jìn)行更新洒忧。
自動(dòng)化是復(fù)雜的抽象蝴韭,為了使這項(xiàng)工作自動(dòng)化,提供一個(gè)簡(jiǎn)單熙侍,可重復(fù)的方式來安全地交付和部署軟件榄鉴,團(tuán)隊(duì)會(huì)更頻繁地執(zhí)行。
技術(shù)的抽象和多樣使監(jiān)控成為難題的重要部分蛉抓。企業(yè)擁有數(shù)千個(gè)獨(dú)立移動(dòng)的部件庆尘,其中許多可能顯示為傳統(tǒng)監(jiān)控解決方案的黑盒子。隨著企業(yè)邁向云原生巷送,越來越多的應(yīng)用程序正在云中運(yùn)行驶忌,專門設(shè)計(jì)并運(yùn)行良好的監(jiān)控方法至關(guān)重要。
2018年將發(fā)生什么笑跛?Kubernetes給業(yè)務(wù)需求和企業(yè)客戶能夠帶來的改變已經(jīng)明晰付魔,作為構(gòu)建和運(yùn)行云原生應(yīng)用的平臺(tái)乘勝追擊,能夠在多大比例的企業(yè)實(shí)現(xiàn)軟著陸呢飞蹂?大概套用那句老話是最準(zhǔn)確的:前途是光明的抒抬,道路是曲折的。
原文鏈接:
1晤柄、2018 is the year of Kubernetes – with some help from Docker
https://www.tuicool.com/articles/QBFjAf6
2擦剑、2017 Year in Review: Kubernetes Enables a Multi-Cloud World
http://www.eweek.com/cloud/2017-year-in-review-kubernetes-enables-a-multi-cloud-world
編者:IT大咖說妖胀,轉(zhuǎn)載請(qǐng)標(biāo)明版權(quán)和出處