AWS:容器這么傲嬌,全靠K8S撐腰!

來源: AWS云計(jì)算
作者:小黑羊
時(shí)間:2020-10-30
17370
容器、Docker、K8S、云原生,這些熱詞都是啥,他們彼此有啥聯(lián)系,今天我們簡單直白一點(diǎn),來個(gè)你問我答。

容器、Docker、K8S、云原生,這些熱詞都是啥,他們彼此有啥聯(lián)系,今天我們簡單直白一點(diǎn),來個(gè)你問我答。

容器是什么?

和虛擬化到底有啥不一樣。

在很久以前,服務(wù)器小哥哥都是直接扛活,就像胸口碎大石!

640.png

一個(gè)服務(wù)器,對(duì)應(yīng)一個(gè)操作系統(tǒng),這種玩法,實(shí)在是太浪費(fèi)了,明明可以拼顏值,現(xiàn)在卻來碎大石,簡直是暴殄天物。

于是乎,虛擬化技術(shù)容器技術(shù)被開發(fā)出來,目的就是讓服務(wù)器小哥哥人盡其才、物盡其用。

640.png

看圖一目了然:容器撇掉了臃腫的操作系統(tǒng),只需把基礎(chǔ)的庫文件打包帶走就可以了,所以身輕如燕。

一臺(tái)物理機(jī)通常能支持成百上千的容器,而且創(chuàng)建和釋放的速度都是秒級(jí)的,甩了虛擬機(jī)好幾條街。

正因?yàn)檫@樣,容器才成了當(dāng)紅炸子雞,大部分云原生架構(gòu),都是以容器為算力單元的。

容器就是Docker嗎?

Docker≠容器,Docker只是眾多容器引擎之一。

容器引擎主要負(fù)責(zé)兩件事:

第一,負(fù)責(zé)容器的整個(gè)生命周期管理,從生到死。

640 (1).png

第二、負(fù)責(zé)本地容器鏡像的構(gòu)建和管理。同時(shí)配合鏡像倉庫,完成海量鏡像的存儲(chǔ)和管理。

640 (2).png

早在Docker出現(xiàn)之前,容器就已經(jīng)存在了,但Docker公司生逢其時(shí),推動(dòng)了容器的大發(fā)展,結(jié)果,很多人就把Docker跟容器劃了等號(hào)。

時(shí)至今日,已經(jīng)有N多容器引擎,開始挑戰(zhàn)Docker的王者地位,也正因?yàn)槿绱耍珼ocker公司走下了神壇。

既然有了容器引擎,還要K8S作甚?

隨著容器的火爆,利用容器架構(gòu)來搭建業(yè)務(wù)系統(tǒng)的人越來越多。可是,大家在實(shí)操中發(fā)現(xiàn),像Docker之類的容器引擎,折騰少量容器還行。但如今的云原生應(yīng)用、機(jī)器學(xué)習(xí)任務(wù)或者大數(shù)據(jù)分析業(yè)務(wù),動(dòng)輒就要使用成百上千的容器。要管理這么多容器,Docker們就力不從心了。

640 (3).png

江山代有才人出,各領(lǐng)風(fēng)騷三五年,有需求就有改變,于是乎,市場上就出現(xiàn)了一批容器編排工具,典型的是Swarm、Mesos和K8S。

經(jīng)過幾年大浪淘沙,K8S“擊敗”Swarm和Mesos,幾乎成了當(dāng)前容器編排的事實(shí)標(biāo)準(zhǔn)。

640 (4).png

K8S最初是由Google開發(fā)的,后來捐贈(zèng)給了CNCF(云原生計(jì)算基金會(huì),隸屬Linux基金會(huì))。

640 (5).png

K8S的全名是kubernetes,讀作“庫伯耐踢死”,很多國人既拼不對(duì)也寫不對(duì),而K和S之間有8個(gè)字母,索性就簡單一點(diǎn),叫“開八司”了。

K8S是個(gè)雜技高手,最擅長的就是“搬箱子”,盤各種容器玩。

640 (6).png

K8S的大致架構(gòu),就像上面。Master節(jié)點(diǎn),用來放“腦子”,“腿腳”搭在工作節(jié)點(diǎn)上“搬磚”,工作節(jié)點(diǎn)就是實(shí)際業(yè)務(wù)容器的存放地。

單個(gè)容器或多個(gè)關(guān)系密切的容器,被編成一組,稱為pod。K8S就是以pod為單位進(jìn)行編排操作。

同時(shí),K8S還要和其它相關(guān)軟件配合,來完成聯(lián)網(wǎng)、存儲(chǔ)、安全等功能。

640 (7).png

誕生六年來,K8S一路高歌,成為容器編排和調(diào)度領(lǐng)域的No.1。但需要注意的是,K8S和Docker們不是替代關(guān)系,而是配合關(guān)系。

K8S仍然會(huì)使用Docker之類的容器引擎(Docker、Containerd、RKT、CRI-O等),來對(duì)容器進(jìn)行生命周期管理。

K8S既然那么猛,直接拿來用不香嗎?

這樣做,看起來沒毛病,K8S是開源軟件,社區(qū)版K8S也很完美。

你可以在網(wǎng)上找到各種安裝指導(dǎo)文檔,然后從github輕松找到最新的版本,然后一步一步搭建集群。

只是安裝過程漫長而痛苦,畢竟搭建集群不是我們的目的,我們的目的是利用集群來干活。

640 (8).png

搭一個(gè)K8S學(xué)習(xí)環(huán)境倒也罷了,權(quán)當(dāng)練手漲經(jīng)驗(yàn)??僧?dāng)我們要搭建生產(chǎn)環(huán)境的時(shí)候,事情就變得不一樣了。

這時(shí)候,為了保證集群的可靠性,我們可能要跨多個(gè)可用區(qū)來部署K8S集群。對(duì)于大多數(shù)人來說,這個(gè)工作不太好玩。

640 (9).png

不止搭建集群過程很復(fù)雜,后期還要面對(duì)更繁瑣的K8S控制平面維護(hù)工作:版本升級(jí)、安全管控、數(shù)據(jù)備份等等。

所以,面對(duì)生產(chǎn)級(jí)別的業(yè)務(wù),大家往往喜歡選擇Turnkey(一站式)的商用方案,而不是自己慢慢鼓搗,老牛拉破車。

云上一站式K8S方案,到底哪家強(qiáng)?

目前,各大云服務(wù)商幾乎都推出了Turnkey方案,幫助用戶快速搭建K8S集群。

到底哪家強(qiáng)呢?王婆賣瓜,自賣自夸,似乎沒有定論。

但是有個(gè)數(shù)據(jù)很有參考意義,根據(jù)咨詢機(jī)構(gòu)「Nucleus Research」的數(shù)據(jù),所有云中K8S的工作負(fù)載,竟然有82%都是運(yùn)行在Amazon Web Services(AWS)上的。

640 (10).png

So,我們差不多可以這樣說,云上K8S,還是AWS最強(qiáng)!

AWS提供了一個(gè)神器,叫做Amazon Elastic Kubernetes Service(Amazon EKS),可以快速幫我們搭建高可用的云上托管K8S服務(wù)。

640 (11).png

Amazon EKS到底牛在哪兒?

作為一個(gè)從來沒摸過K8S的生手,我用了不到10分鐘,就創(chuàng)建了一個(gè)橫跨3個(gè)可用區(qū)的生產(chǎn)級(jí)集群,實(shí)在太魔幻了。

整個(gè)過程,只需要區(qū)區(qū)兩步

640 (12).png

在添加工作節(jié)點(diǎn)的時(shí)候,可以選擇各種Amazon EC2實(shí)例,AWS準(zhǔn)備了豐富的實(shí)例類型,滿足不同的容器用途。

當(dāng)然,還可以選擇新酷的AWS Fargate工作節(jié)點(diǎn),這是一種Serverless的方式,說白了,你不需要去考慮什么實(shí)例呀、服務(wù)器呀,直接按需使用容器即可,要多少有多少,計(jì)費(fèi)精確到容器,而非主機(jī)。

集群創(chuàng)建完成后,我們就可采用自己習(xí)慣的工具,比如kubectl,像使用標(biāo)準(zhǔn)K8S集群一樣,進(jìn)行各種業(yè)務(wù)部署的操作了。

640.gif

除了簡單、易用、生產(chǎn)級(jí)高可用以外,Amazon EKS與社區(qū)版的K8S是保持同步的,原生體驗(yàn)完全一致,可以使用社區(qū)所有插件和工具…

So,不需要額外的學(xué)習(xí)成本,也不用擔(dān)心鎖定,輕松遷移。

640 (13).png

作為云上K8S大戶,AWS也充分發(fā)揚(yáng)開源精神,源于社區(qū)、反哺社區(qū),不斷為K8S項(xiàng)目做貢獻(xiàn),推動(dòng)K8S的改進(jìn)。

640 (14).png

AWS為Amazon EKS提供了多達(dá)270種節(jié)點(diǎn),可以滿足所有工作負(fù)載和業(yè)務(wù)需求,并提供為Amazon EKS定制優(yōu)化的操作系統(tǒng)鏡像,高效、安全、開源。

同時(shí),Amazon EKS還與AWS其他服務(wù)無縫集成,諸如負(fù)載均衡、彈性伸縮、身份認(rèn)證、存儲(chǔ)、安全、監(jiān)控、日志,用戶不需要苦逼滴自己造輪子,站在AWS肩膀上就行。

更令人心動(dòng)的是,不止于Amazon EKS,圍繞容器、K8S、微服務(wù)這些云原生的關(guān)鍵技術(shù),AWS提供了一攬子解決方案。

640 (15).png

隨著云計(jì)算進(jìn)入深水區(qū),云原生的理念越來越深入人心,利用AWS的「容器全家桶」,用戶可以輕松搭建各種高可用「云原生」服務(wù),把上云的價(jià)值最大化。

立即登錄,閱讀全文
版權(quán)說明:
本文內(nèi)容來自于AWS云計(jì)算,本站不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。文章內(nèi)容系作者個(gè)人觀點(diǎn),不代表快出海對(duì)觀點(diǎn)贊同或支持。如有侵權(quán),請(qǐng)聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務(wù)商推薦
更多
掃碼登錄
打開掃一掃, 關(guān)注公眾號(hào)后即可登錄/注冊(cè)
加載中
二維碼已失效 請(qǐng)重試
刷新
賬號(hào)登錄/注冊(cè)
小程序
快出海小程序
公眾號(hào)
快出海公眾號(hào)
商務(wù)合作
商務(wù)合作
投稿采訪
投稿采訪
出海管家
出海管家