上云的企業(yè)越來越多,與之相對(duì)的,「云原生」這個(gè)詞也不斷出現(xiàn)在大家視線中,成為幾年來 IT 行業(yè)最熱門的概念之一。根據(jù)云原生計(jì)算基金會(huì)(CNCF)對(duì)云原生給出的定義:
“云原生技術(shù)有利于各組織在公有云、私有云和混合云等新型動(dòng)態(tài)環(huán)境中,構(gòu)建和運(yùn)行可擴(kuò)展的應(yīng)用。云原生的代表技術(shù)包括容器、服務(wù)網(wǎng)絡(luò),微服務(wù),不可變的基礎(chǔ)設(shè)施和聲明式 API 。”
云計(jì)算帶來了業(yè)務(wù)模式與基礎(chǔ)設(shè)施之間的關(guān)系變革,而云原生也正改變著應(yīng)用程序和基礎(chǔ)設(shè)施之間的關(guān)系。云原生的出現(xiàn),可以幫助企業(yè)解決傳統(tǒng)應(yīng)用升級(jí)緩慢、架構(gòu)臃腫、無法快速迭代、無法快速定位故障等問題。
隨著業(yè)務(wù)復(fù)雜度增加,應(yīng)用程序變得越來越復(fù)雜,不再具有敏捷性,開發(fā)人員也很難開發(fā)和維護(hù)代碼。解決這個(gè)問題的最好辦法之一是將整個(gè)應(yīng)用的功能重新定義分割為更小的微服務(wù),并對(duì)每個(gè)微服務(wù)獨(dú)立開發(fā)維護(hù)。與微服務(wù)相關(guān)的一個(gè)重要概念是容器,借此可將應(yīng)用程序中的各個(gè)組件拆分并打包成獨(dú)立服務(wù),讓每個(gè)組件都可以容易地替換、升級(jí)和調(diào)試。
由此可見:微服務(wù)和容器化是相輔相成的。但是單機(jī)運(yùn)行容器無法將容器的最大性能發(fā)揮出來,只有形成集群,才能最大程度發(fā)揮容器優(yōu)勢(shì)。但如何編排管理這些容器則成了新的,迫切需要解決的問題。
Kubernetes 的出現(xiàn)很好地解決這個(gè)棘手問題,為企業(yè)應(yīng)用上云鋪平了道路。Kubernetes 是一個(gè)開源容器管理平臺(tái),具有靈活的架構(gòu)能力,讓企業(yè)不僅能輕松對(duì)基礎(chǔ)設(shè)施資源進(jìn)行統(tǒng)一管理,還能方便地統(tǒng)一管理上層業(yè)務(wù),實(shí)現(xiàn)業(yè)務(wù)架構(gòu)的統(tǒng)一。
如今, Kubernetes 已成云原生中流砥柱。未來,企業(yè)內(nèi)現(xiàn)存的各類基礎(chǔ)軟件平臺(tái)都將統(tǒng)一到基于 Kubernetes 的云原生平臺(tái)上。由此可見,熟練掌握 Kubernetes 對(duì)企業(yè)標(biāo)準(zhǔn)化 IT 統(tǒng)一管理平臺(tái)具有不可或缺的意義。
在這一系列《云原生應(yīng)用之旅—— Kubernetes 成長(zhǎng)記》文章中,我們將通過 10 期內(nèi)容,幫助大家在 2 個(gè)月左右的時(shí)間里實(shí)現(xiàn) Kubernetes 的從入門到精通。你將了解到 Kubernetes 基礎(chǔ)知識(shí),并有機(jī)會(huì)實(shí)踐不同組件和解決方案,進(jìn)而積累寶貴經(jīng)驗(yàn)。
鋪墊完成,我們的成長(zhǎng)之旅就此開始!
Day 1:初識(shí)Kubernetes基本概念
與任何一項(xiàng)新技術(shù)類似,剛開始接觸 Kubernetes 時(shí),免不了會(huì)遇到很多新的專有詞匯。所謂萬丈高樓平地起,任何復(fù)雜的系統(tǒng)都起始于最基本的理論, Kubernetes 也是如此。只要能先掌握這些基本概念,打好基礎(chǔ),無疑就能沿著正確方向快速入門。
那么對(duì)于Kubernetes新手來說,
容器組(Pods)
副本集(ReplicaSet)
機(jī)密(Secrets)
部署(Deployments)……
這些概念分別都是什么意思?對(duì)云原生程序的開發(fā)、部署和運(yùn)行都起到了什么作用?
讓我們用「二次元」的形式來理解吧。跟隨長(zhǎng)頸鹿菲比阿姨(Phippy)和她的斑馬侄子小季(Zee)一起,逛逛 Kubernetes 動(dòng)物園,探尋各個(gè)組件的秘密。
在掌握了基本概念后,我們將通過后續(xù)文章分別向大家介紹 Kubernetes 技術(shù)細(xì)節(jié)、Azure Kubernetes 服務(wù)、微服務(wù)架構(gòu)、分布式系統(tǒng)等重要概念、方法和實(shí)踐,歡迎持續(xù)關(guān)注,共同學(xué)習(xí)并駕馭 Kubernetes 技術(shù),在云時(shí)代玩轉(zhuǎn)云原生應(yīng)用。
此外,對(duì)于本文介紹的 Kubernetes 重要概念和組件,以及后續(xù)的內(nèi)容安排,大家是否有什么想法或建議?也歡迎通過評(píng)論留言發(fā)表你的想法,我們會(huì)挑選精彩留言并送上精美小禮品一份。歡迎大家踴躍參與,也歡迎將本文分享給更多有志于 Kubernetes 開發(fā)的小伙伴,大家共同學(xué)習(xí),共同進(jìn)步!