股市中杠杆什么意思-股票杠杆开户流程图片-【东方资本】,十大炒股杠杆平台 加杠网,股票杠杆怎么操作,股票怎么开通做特定交易功能

首頁

/

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

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

分享到

一、什么是云原生


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

  • 面向微服務(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ù)有利于各組織在公有云、私有云和混合云等新型動態(tài)環(huán)境中,構(gòu)建和運(yùn)行可彈性擴(kuò)展的應(yīng)用。目前CNCF給出了云原生應(yīng)用的三大特征:

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


 

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



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


1、容器


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


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)和動態(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)用拆分成多個核心功能,每個功能都被稱為一個獨(dú)立的服務(wù),可以單獨(dú)構(gòu)建和部署,其中某個服務(wù)出現(xiàn)故障也不會影響其他的功能模塊,這句體現(xiàn)了其針對特定服務(wù)發(fā)布,影響小,風(fēng)險小等特點(diǎn)。


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


服務(wù)網(wǎng)格指的是用于微服務(wù)應(yīng)用的可配置基礎(chǔ)架構(gòu)層。在使用服務(wù)網(wǎng)格時通常會提供一個sidecar代理實(shí)例,主要處理 service 間的通信、監(jiān)控、以及一些安全相關(guān)的考量,每個service里面都會有一個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ù)可以自動擴(kuò)展。


6、DevOps


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


7、云(Cloud)


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



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


1、云原生中的DevOps


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




2、持續(xù)集成


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

 

3、持續(xù)交付


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


4、持續(xù)部署


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


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


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


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


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


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


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

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

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

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

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

5、結(jié)合鏡像管理規(guī)范對現(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)申請演示

聯(lián)系我們

服務(wù)熱線:

020-38847288

QQ咨詢:

3593213400

在線溝通:

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

申請演示

請登錄后在查看!