无套内谢大学处破女_一本一道精品欧美中文字幕|HD中文字幕在线播放,国产精品深夜福利,99久久精品无码一区二区毛片,久久国产加勒比精品无码

首頁

/

一文讀懂什么是云原生,以及為什么它這么好用?

發(fā)布日期:2022-04-28 10:26:32

分享到

一、什么是云原生


云原生的概念,由來自Pivotal的MattStine根據(jù)其多年的框架經(jīng)驗(yàn)總結(jié)于2013年首次提出,被一直延續(xù)使用至今。這是他當(dāng)時(shí)提出的幾個(gè)主要特征:

  • 面向微服務(wù)框架
  • 自服務(wù)敏捷架構(gòu)
  • 基于API的協(xié)作
  • 符合12因素應(yīng)用
  • 抗脆弱性

它的出現(xiàn)其實(shí)也得益于虛擬技術(shù)的發(fā)展,在社區(qū)中不斷完善,并逐漸成為一種新興的基礎(chǔ)設(shè)施交付方案,在某種意義上重新定義了IT界軟硬件資源的標(biāo)準(zhǔn)。2015年谷歌主導(dǎo)CNCF成立之后,給出的1.0云原生定義主要是云原生技術(shù)有利于各組織在公有云、私有云和混合云等新型動(dòng)態(tài)環(huán)境中,構(gòu)建和運(yùn)行可彈性擴(kuò)展的應(yīng)用。目前CNCF給出了云原生應(yīng)用的三大特征:

  • 容器化封裝:以容器為基礎(chǔ),提高整體開發(fā)水平,形成代碼和組件重用,簡(jiǎn)化云原生應(yīng)用程序的維護(hù)。在容器中運(yùn)行應(yīng)用程序和進(jìn)程,并作為應(yīng)用程序部署的獨(dú)立單元,實(shí)現(xiàn)高水平資源隔離。
  • 動(dòng)態(tài)管理:通過集中式的編排調(diào)度系統(tǒng)來動(dòng)態(tài)的管理和調(diào)度。
  • 面向微服務(wù):明確服務(wù)間的依賴,互相解耦。


 

上圖可以看出,其實(shí)云原生涉及的技術(shù)領(lǐng)域眾多,上面收集了和其技術(shù)相關(guān)的工具、平臺(tái)和項(xiàng)目。通過此圖可快速了解和應(yīng)用相關(guān)的技術(shù),根據(jù)業(yè)務(wù)能力可對(duì)架構(gòu)進(jìn)行重組與建設(shè)。



二、云原生的核心技術(shù)


1、容器


容器(container)這一概念最早出現(xiàn)在Linux中出現(xiàn)的,又稱LXC(Linux Container),主要是通過Cgroups的資源管理能力和Namespace的資源隔離能力結(jié)合在一起實(shí)現(xiàn)進(jìn)程級(jí)別的隔離。


2、K8s


全稱是Kubernetes,由Google 基于 Borg 開源容器編排的調(diào)度系統(tǒng),是一種基于容器技術(shù)的分布式架構(gòu)領(lǐng)先方案。在Docker技術(shù)的基礎(chǔ)上,為容器化的應(yīng)用提供部署運(yùn)行、資源調(diào)度、服務(wù)發(fā)現(xiàn)和動(dòng)態(tài)伸縮等功能,用戶不需要再過多關(guān)注資源的管理問題,降低操作的復(fù)雜度,提高了大規(guī)模容器集群管理的便捷性。


3、微服務(wù)(Microservices)


微服務(wù)則是一種用于構(gòu)建應(yīng)用的架構(gòu)方案,微服務(wù)架構(gòu)有別于為傳統(tǒng)的單體應(yīng)用的是將應(yīng)用拆分成多個(gè)核心功能,每個(gè)功能都被稱為一個(gè)獨(dú)立的服務(wù),可以單獨(dú)構(gòu)建和部署,其中某個(gè)服務(wù)出現(xiàn)故障也不會(huì)影響其他的功能模塊,這句體現(xiàn)了其針對(duì)特定服務(wù)發(fā)布,影響小,風(fēng)險(xiǎn)小等特點(diǎn)。


4、服務(wù)網(wǎng)格(Service Mesh)


服務(wù)網(wǎng)格指的是用于微服務(wù)應(yīng)用的可配置基礎(chǔ)架構(gòu)層。在使用服務(wù)網(wǎng)格時(shí)通常會(huì)提供一個(gè)sidecar代理實(shí)例,主要處理 service 間的通信、監(jiān)控、以及一些安全相關(guān)的考量,每個(gè)service里面都會(huì)有一個(gè)sidecar,同樣也提供了服務(wù)發(fā)現(xiàn)、負(fù)載均衡、授權(quán)等功能。


5、無服務(wù)(Serverless)


根據(jù) CNCF 的定義,Serverless 是指構(gòu)建和運(yùn)行不需要服務(wù)器管理的應(yīng)用程序的概念。即開發(fā)人員無需關(guān)注底層的基礎(chǔ)設(shè)施,只需要關(guān)注應(yīng)用程序的業(yè)務(wù)本身就行,且該服務(wù)可以自動(dòng)擴(kuò)展。


6、DevOps


早期的項(xiàng)目使用的是“瀑布模型”進(jìn)行軟件交付,即一個(gè)階段所有的工作完成之后再往下一個(gè)階段,但這樣的模式無法滿足業(yè)務(wù)快速開發(fā)交付及變更需求的情況,于是后面就出現(xiàn)了敏捷開發(fā)這一概念,即一種快速應(yīng)對(duì)需求變化軟件開發(fā)能力,而DevOps就是基于敏捷開發(fā)將軟件開發(fā)/測(cè)試人員/IT運(yùn)維關(guān)聯(lián)在一起,通過工具、組織等方式使開發(fā)、測(cè)試、發(fā)布流程自動(dòng)化,讓軟件可以頻繁、高效的發(fā)布。


7、云(Cloud)


常常聽到的公有云,私有云,混合云都是基于這個(gè)生態(tài)衍生出來的各種場(chǎng)景,不同的云搭建環(huán)境,所需資源亦有所不同,比如公有云是在互聯(lián)網(wǎng)上發(fā)布的云計(jì)算服務(wù),而私有云則是在公司內(nèi)網(wǎng)發(fā)布的云計(jì)算服務(wù),目前沒有一種云計(jì)算類型可以解決所有場(chǎng)景出現(xiàn)的問題,怎么選擇適合自己的場(chǎng)景則需要根據(jù)技術(shù)需求決定。



三、云原生之實(shí)踐


1、云原生中的DevOps


DevOps這一概念雖然比容器、微服務(wù)出現(xiàn)得早,卻是隨著他們的出現(xiàn)才得以快速的發(fā)展。實(shí)際上DevOps不單是一個(gè)實(shí)現(xiàn)自動(dòng)化的工具鏈,更是通過構(gòu)建企業(yè)文化的方式促進(jìn)開發(fā)與運(yùn)維之間的協(xié)作。下圖可以看出,這樣的運(yùn)作模式已經(jīng)顛覆了傳統(tǒng)的工作模式,每個(gè)環(huán)節(jié)都不再獨(dú)立分割開,而是用協(xié)作的方式生產(chǎn)更快、更高質(zhì)量的生產(chǎn)軟件。




2、持續(xù)集成


(CONTINUOUS INTEGRATION,CI)其核心是新提交的代碼與原代碼正確的集成。開發(fā)人員多次、頻繁的將代碼提交到代碼倉(cāng)庫(kù)中,在合并到指定分支之前,對(duì)新提交上來的內(nèi)容進(jìn)行編譯、自動(dòng)化檢測(cè)(如:代碼格式檢測(cè))的驗(yàn)證。這樣的過程既保證了代碼的完整性、安全性,也為后面的工作提供了質(zhì)量保證。

 

3、持續(xù)交付


(CONTINUOUS DELIVERY,CD)其重點(diǎn)不在代碼本身,而是在可以交付的產(chǎn)品上。在發(fā)布到生產(chǎn)環(huán)境之前,對(duì)新增的代碼進(jìn)行測(cè)試(test) -> 模擬(staging) -> 生產(chǎn)(production),即簡(jiǎn)化繁瑣的發(fā)布流程,又保障新添加的代碼在生產(chǎn)環(huán)境是可用的。


4、持續(xù)部署


(CONTINUOUS DEPLOYMENT) 通過自動(dòng)化部署的方式頻繁的交付產(chǎn)品,關(guān)注的重點(diǎn)在于自動(dòng)化部署。從開發(fā)人員提交代碼到編譯、測(cè)試、部署整個(gè)流程都是通過自動(dòng)化執(zhí)行,這種方式加快了交付的速度,同時(shí)在發(fā)現(xiàn)問題時(shí)也縮短修復(fù)的時(shí)間。


CICD關(guān)注整個(gè)開發(fā)到交付的過程,中間的測(cè)試、模擬、自動(dòng)部署等整條生產(chǎn)鏈上所需要的每一步都是需要關(guān)注的。而DevOps則更關(guān)注于各部門、不同崗位之間的協(xié)同過程,尤其是開發(fā)和運(yùn)維之間的溝通壁壘。總的來說,DevOps與CICD一體兩面,CICD 自動(dòng)化是DevOps 具體實(shí)現(xiàn)方式。


云原生之于國(guó)內(nèi),還是一個(gè)非常新的話題。云原生的覆蓋面廣、已知和潛在的用處大,由于全面及深入的理解需投入大量的人力及時(shí)間成本,因此不管是學(xué)習(xí)研究還是在實(shí)戰(zhàn)中需要分而治之。總體來說,云原生有以下幾個(gè)方面的優(yōu)勢(shì):


① 快速迭代利用云原生應(yīng)用程序開發(fā),多種技術(shù)、多種方案相互融合,為項(xiàng)目交付提供自動(dòng)化和編排的快速迭代方案。


② 自動(dòng)部署云原生的方法對(duì)于傳統(tǒng)的方法而言,直擊代碼質(zhì)量低下、發(fā)布流程繁瑣的痛點(diǎn),通過其具備的自動(dòng)化和組合功能,針對(duì)編譯、測(cè)試、部署等過程建立良好流程基礎(chǔ),快速交付。


③ 獨(dú)立高效云原生帶來的微服務(wù)化框架,打破了傳統(tǒng)的開發(fā)模式,對(duì)于一個(gè)應(yīng)用來說,一個(gè)微服務(wù)就是一個(gè)可獨(dú)立發(fā)布的應(yīng)用;對(duì)于一個(gè)團(tuán)隊(duì)來說,為各個(gè)部門,不同崗位提供更多協(xié)同與溝通上的的思路。


相信現(xiàn)在大家對(duì)容器和云原生有了一定的了解,過去我們也分享過容器化改造的具體步驟,供各位借鑒:

1、建設(shè)組織級(jí)鏡像倉(cāng)庫(kù)(若有Artifactory,可使用其作為Docker鏡像倉(cāng)庫(kù);如果沒有,建議選用Harbor作為鏡像倉(cāng)庫(kù))。

2、制定鏡像管理規(guī)范,確定是由哪個(gè)部門來管。

3、關(guān)于基礎(chǔ)鏡像、中間件鏡像構(gòu)建、管理及維護(hù),要有專人負(fù)責(zé)。

4、制定不同語言類型的標(biāo)準(zhǔn)鏡像模板及CICD工作流。

5、結(jié)合鏡像管理規(guī)范對(duì)現(xiàn)有應(yīng)用進(jìn)行容器化改造(如一些目錄調(diào)整、啟停腳本編寫等)。

6、選擇合適應(yīng)用進(jìn)行試點(diǎn)。

7、試點(diǎn)階段回顧與總結(jié),持續(xù)反饋、持續(xù)改進(jìn)。

8、制定全面推廣策略并實(shí)施。

免費(fèi)申請(qǐng)演示

聯(lián)系我們

服務(wù)熱線:

020-38847288

QQ咨詢:

3593213400

在線溝通:

立即咨詢
查看更多聯(lián)系方式

申請(qǐng)演示

請(qǐng)登錄后在查看!