掃二維碼與項(xiàng)目經(jīng)理溝通
我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
作者: 馬永亮 2021-12-04 22:06:54
云計(jì)算
虛擬化 Kubernetes的主要優(yōu)勢在于,它提供了一個便捷有效的平臺,讓用戶可以在物理機(jī)和虛擬機(jī)集群上調(diào)度與運(yùn)行容器。

10余年的碭山網(wǎng)站建設(shè)經(jīng)驗(yàn),針對設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整碭山建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)公司從事“碭山網(wǎng)站設(shè)計(jì)”,“碭山網(wǎng)站推廣”以來,每個客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
Kubernetes的主要優(yōu)勢在于,它提供了一個便捷有效的平臺,讓用戶可以在物理機(jī)和虛擬機(jī)集群上調(diào)度與運(yùn)行容器。進(jìn)一步來說,Kubernetes是一個支持彈性運(yùn)行的分布式系統(tǒng)框架,是一種支撐其他平臺的平臺型基礎(chǔ)設(shè)施,可以幫助用戶在生產(chǎn)環(huán)境中依托容器實(shí)施的基礎(chǔ)架構(gòu)。
Kubernetes的本質(zhì)在于實(shí)現(xiàn)操作任務(wù)自動化,包括應(yīng)用擴(kuò)展、故障轉(zhuǎn)移和部署模式等,因而它能代替用戶執(zhí)行大部分煩瑣的操作任務(wù),減輕用戶負(fù)擔(dān),降低出錯的概率。
簡言之,Kubernetes整合并抽象了底層的硬件和系統(tǒng)環(huán)境等基礎(chǔ)設(shè)施,對外提供了一個統(tǒng)一的資源池供終端用戶通過API進(jìn)行調(diào)用。Kubernetes具有以下幾個重要特性。
構(gòu)建于容器之上,基于資源依賴及其他約束自動完成容器部署且不影響其可用性,并在同一節(jié)點(diǎn)通過調(diào)度機(jī)制混合運(yùn)行關(guān)鍵型應(yīng)用和非關(guān)鍵型應(yīng)用的工作負(fù)載,以提升資源利用率。
支持容器故障后自動重啟、節(jié)點(diǎn)故障后重新調(diào)度容器到其他可用節(jié)點(diǎn)、健康狀態(tài)檢查失敗后關(guān)閉容器并重新創(chuàng)建等自我修復(fù)機(jī)制。
支持通過簡單命令或UI手動水平擴(kuò)展,以及基于CPU等資源負(fù)載率的自動水平擴(kuò)展機(jī)制。
Kubernetes通過其附加組件之一的KubeDNS(或CoreDNS)為系統(tǒng)內(nèi)置了服務(wù)發(fā)現(xiàn)功能,它會為每個Service配置DNS名稱,并允許集群內(nèi)的客戶端直接使用此名稱發(fā)出訪問請求,而Service通過iptables或ipvs內(nèi)置了負(fù)載均衡機(jī)制。
Kubernetes支持“灰度”更新應(yīng)用程序或其配置信息,它會監(jiān)控更新過程中應(yīng)用程序的健康狀態(tài),以確保不會在同一時(shí)刻殺掉所有實(shí)例,而此過程中一旦有故障發(fā)生,它會立即自動執(zhí)行回滾操作。
Kubernetes的ConfigMap實(shí)現(xiàn)了配置數(shù)據(jù)與Docker鏡像解耦,需要時(shí),僅對配置做出變更而無須重新構(gòu)建Docker鏡像,這為應(yīng)用開發(fā)部署提供了很大的靈活性。
此外,對于應(yīng)用所依賴的一些敏感數(shù)據(jù),如用戶名和密碼、令牌、密鑰等信息,Kubernetes專門提供了Secret對象使依賴解耦,既便利了應(yīng)用的快速開發(fā)和交付,又提供了一定程度上的安全保障。
Kubernetes支持Pod對象按需自動掛載不同類型存儲系統(tǒng),這包括節(jié)點(diǎn)本地存儲、公有云服務(wù)商的云存儲(如AWS和GCP等),以及網(wǎng)絡(luò)存儲系統(tǒng),例如NFS、iSCSI、Gluster、Ceph、Cinder和Flocker等。
除了服務(wù)型應(yīng)用,Kubernetes還支持批處理作業(yè)、CI(持續(xù)集成),以及容器故障后恢復(fù)。
另一方面,以應(yīng)用為中心的Kubernetes本身并未直接提供一套完整的“開箱即用”的應(yīng)用管理體系,需要基礎(chǔ)設(shè)施工程師基于云原生社區(qū)和生態(tài)的實(shí)際需求手動構(gòu)建。
換句話說,在典型的生產(chǎn)應(yīng)用場景中,Kubernetes還需要同網(wǎng)絡(luò)、存儲、遙測(監(jiān)控和日志)、鏡像倉庫、負(fù)載均衡器、CI/CD工具鏈及其他服務(wù)整合,以提供完整且API風(fēng)格統(tǒng)一的基礎(chǔ)設(shè)施平臺,如圖1-17所示。
▲圖1-17 完整的容器編排系統(tǒng)
下面對容器編排系統(tǒng)中的要素進(jìn)行簡單介紹。
關(guān)于作者:馬永亮,北京馬哥教育科技有限公司,創(chuàng)始人兼CEO。精通泛Linux運(yùn)維領(lǐng)域相關(guān)技術(shù),關(guān)注容器領(lǐng)域相關(guān)技術(shù)。
本文摘編自《Kubernetes進(jìn)階實(shí)戰(zhàn)(第2版)》,經(jīng)出版方授權(quán)發(fā)布。
(ISBN:9787111694441)

我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流