摘要:可更新云原生應用程序始終是的,云原生應用始終可用。彈性云原生應用程序通過在峰值期間增加的資源來利用云的彈性。多租戶云原生應用程序在虛擬化環(huán)境中工作,并與其他應用程序共享資源沒有問題。云原生應用程序更加模塊化,許多功能分解為微服務(wù)。
“云原生”這個詞被大量引用,尤其是云服務(wù)商。不僅如此,云原生甚至還有自己的基金會:由Linux基金會于2015年推出的云原生應用基金會(CNCF)。
“云原生”定義
在一般用法中,“云原生”是一種構(gòu)建和運行應用程序的方法,它利用了云計算交付模型的優(yōu)勢。“云原生”是關(guān)于如何創(chuàng)建和部署應用程序,和位置無關(guān)。 這意味著應用程序位于云中,而不是傳統(tǒng)數(shù)據(jù)中心。
CNCF將“云原生”定義的更為狹窄,意味著使用開源軟件堆棧進行容器化,其中應用程序的每個部分都打包在自己的容器中,動態(tài)編排,以便每個部分都被主動調(diào)度和管理,以優(yōu)化資源利用率和面向微服務(wù)的應用程序,以提高應用程序的整體靈活性和可維護性。
咨詢公司Deloitte的董事總經(jīng)理Mike Kavis說:“云原生應用程序?qū)iT設(shè)計用于運行現(xiàn)代云計算平臺所需的彈性和分布式特性?!?“這些應用程序松散耦合,意味著代碼不會硬連接到任何基礎(chǔ)架構(gòu)組件,因此應用程序可以按需伸縮,并采用不可變基礎(chǔ)架構(gòu)的抽象。通常,這些架構(gòu)是使用微服務(wù)構(gòu)建的,但這不是強制性要求?!?/p>
云服務(wù)提供商Splunk的首席技術(shù)支持者Andi Mann表示,對于云原生應用程序而言,較大的不同之處在于應用程序的構(gòu)建,交付和運維方式?!袄迷品?wù)意味著使用敏捷和可擴展的組件(如容器)來提供離散和可重用的功能,這些功能以良好描述的方式集成,甚至跨越多云等技術(shù)邊界,這使得交付團隊可以使用可重復的自動化和編排來快速迭代?!?/p>
云原生應用程序開發(fā)通常包括DevOps,敏捷方法,微服務(wù),云平臺,Kubernetes和Docker等容器,以及持續(xù)交付,簡而言之,每種新的和現(xiàn)代的應用程序部署方法。
因此,你確實希望擁有平臺即服務(wù)(PaaS)模型。PaaS不是必需的,但它使事情變得更容易。絕大多數(shù)云客戶從基礎(chǔ)架構(gòu)即服務(wù)(IaaS)開始,這有助于從底層硬件中抽象出他們的應用程序。但PaaS增加了一個額外的層來抽象底層操作系統(tǒng),因此你可以完全專注于應用程序的業(yè)務(wù)邏輯,而不必擔心進行操作系統(tǒng)調(diào)用。
云原生和本地部署應用程序之間的差異
云原生應用程序開發(fā)采用與傳統(tǒng)企業(yè)應用程序完全不同的體系結(jié)構(gòu)。
編程語言
編寫在公司服務(wù)器上運行的本地部署應用程序往往使用傳統(tǒng)語言編寫,如C/C ++,C?;蚱渌鸙isual Studio語言(如果部署在Windows Server平臺上)和企業(yè)級Java。如果它在大型機上,可能使用Cobol。
云原生應用更有可能以網(wǎng)絡(luò)為中心的語言編寫,這意味著使用HTML,CSS,Java,JavaScript,.Net,Go,Node.js,PHP,Python和Ruby。
可更新
云原生應用程序始終是的,云原生應用始終可用。
本地部署應用程序需要更新,并且通常由供應商按訂閱提供,并且在安裝更新時需要停機。
彈性
云原生應用程序通過在峰值期間增加的資源來利用云的彈性。如果你的基于云的電子商務(wù)應用程序使用頻繁,你可以將其設(shè)置為使用額外的計算資源,直到峰值消退然后關(guān)閉這些資源。云原生應用可以根據(jù)需要調(diào)整增加資源和規(guī)模。
本地部署應用程序無法動態(tài)擴展。
多租戶
云原生應用程序在虛擬化環(huán)境中工作,并與其他應用程序共享資源沒有問題。
許多本地部署應用程序要么在虛擬環(huán)境中不能正常工作,要么根本不工作,必須要非虛擬化環(huán)境。
連接資源
本地部署應用程序與網(wǎng)絡(luò)資源的連接相當嚴格,例如網(wǎng)絡(luò),安全性,權(quán)限和存儲。其中許多資源需要進行硬編碼,如果移動或更改了任何內(nèi)容,它們就會中斷。
“網(wǎng)絡(luò)和存儲在云端完全不同。當你聽到“重新平臺化”一詞時,通常是為了適應網(wǎng)絡(luò),存儲甚至數(shù)據(jù)庫技術(shù)的變化,以允許應用程序在云中運行,“Deloitte的Kavis說。
停止時間
云中存在比本地部署更大的冗余,因此如果云供應商遭受中斷,則另一個冗余區(qū)域可以消除中斷。
本地部署應用程序可能已準備好故障轉(zhuǎn)移,但如果服務(wù)器出現(xiàn)故障,應用程序可能會崩潰。
自動化
云計算的大部分都是自動化的,其中包括應用程序管理。 “云原生交付的好處,特別是速度和敏捷性,依賴于可靠,經(jīng)過驗證和經(jīng)過審核的已知良好流程的基礎(chǔ),這些流程根據(jù)自動化和編排工具的需要而不是通過人工干預重復執(zhí)行,”Splunk的Mann說。工程師應該考慮自動化是不止一次做的任何事情,以實現(xiàn)可重復性,自助服務(wù),敏捷性,可擴展性以及審計和控制。
本地部署應用程序必須手動管理。
模塊化設(shè)計
本地部署應用程序往往在設(shè)計上是單一的。他們肯定會將一些工作卸載到庫中,但最終它是一個包含大量子程序的大應用程序。云原生應用程序更加模塊化,許多功能分解為微服務(wù)。這允許在不需要時關(guān)閉它們,并將更新推廣到那個模塊,而不是整個應用程序。
無狀態(tài)
云的松耦合特性意味著應用程序與基礎(chǔ)架構(gòu)無關(guān),這意味著它們是無狀態(tài)的。云原生應用程序?qū)⑵錉顟B(tài)存儲在數(shù)據(jù)庫或其他外部實體中,因此實例可以來去,應用程序仍然可以跟蹤應用程序在工作單元中的位置。 “這是松耦合的本質(zhì)。不依賴于基礎(chǔ)架構(gòu)允許和應用程序以高度分布的方式運行,并且仍然保持其狀態(tài)獨立于底層基礎(chǔ)架構(gòu)的彈性性質(zhì),“Kavis說。
大多數(shù)本地部署應用程序都是有狀態(tài)的,這意味著它們會在運行代碼的基礎(chǔ)架構(gòu)上存儲應用程序的狀態(tài)。因此,在添加服務(wù)器資源時可能會破壞應用程序。
云原生的挑戰(zhàn)
Mann說,客戶犯下的一個重大錯誤就是試圖將舊的本地部署應用程序直接并遷移到云端。 “試圖利用現(xiàn)有的應用程序,特別是單一的遺留應用程序 ,并將它們轉(zhuǎn)移到云基礎(chǔ)架構(gòu)上將無法利用必要的云原生功能。”
相反,你應該以新的方式開展新事物,或者將新的云原生應用程序放入新的云基礎(chǔ)架構(gòu)中,或者通過拆分現(xiàn)有的單塊應用來從頭開始使用云原生原則重構(gòu)它們。(譯者注:這個觀點可能有點,遷移到云,至少可以先開始利用云的一些優(yōu)勢,至少能提高資源利用率。對許多組織來說,重構(gòu)應用程序也基本是不可能的。)
你還需要放棄舊的開發(fā)方法。瀑布模型當然不會再用,甚至敏捷開發(fā)可能還不夠。因此,你必須采用新的云原生方法,如最小可行產(chǎn)品(MVP)開發(fā),多變量測試,快速迭代,以及在DevOps模型中跨組織邊界密切合作。
云原生有很多方面,包括基礎(chǔ)架構(gòu)服務(wù),自動化/編排,虛擬化和容器化,微服務(wù)架構(gòu)和可觀察性。所有這些都意味著一種新的做事方式,這意味著在學習新方法時打破舊習慣。請以以有節(jié)奏的速度做到這一點。
原文鏈接
https://www.infoworld.com/article/3281046/cloud-computing/what-is-cloud-native-the-modern-way-to-develop-software.html
譯者 肖力?
新鈦云服技術(shù)副總裁,十九年運維經(jīng)驗,曾就職盛大、金山。豐富的私有云和運維管理經(jīng)驗,是國內(nèi)虛擬化實踐先驅(qū)者和業(yè)內(nèi)知名的虛擬化專家,主導參與G云、西山居以及多個私有云/專享云的建設(shè)運維。開源云聯(lián)盟WG5工作組組長。云技術(shù)社區(qū)創(chuàng)始人,《深度實踐KVM》等書作者。
聲明:文章收集于網(wǎng)絡(luò),如有侵權(quán),請聯(lián)系小編及時處理,謝謝!
歡迎加入本站公開興趣群
軟件開發(fā)技術(shù)群
興趣范圍包括:Java,C/C++,Python,PHP,Ruby,shell等各種語言開發(fā)經(jīng)驗交流,各種框架使用,外包項目機會,學習、培訓、跳槽等交流
QQ群:26931708
Hadoop源代碼研究群
興趣范圍包括:Hadoop源代碼解讀,改進,優(yōu)化,分布式系統(tǒng)場景定制,與Hadoop有關(guān)的各種開源項目,總之就是玩轉(zhuǎn)Hadoop
QQ群:288410967
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/3494.html
摘要:在本次上,京東云將在大會上為對云原生感興趣的研發(fā)和運維人員帶來利用延遲加載快速啟動容器的話題分享。今天聊的主角云原生也是一樣。 showImg(https://segmentfault.com/img/bVbtNqp?w=688&h=113); showImg(https://segmentfault.com/img/bVbtQaR?w=684&h=327); showImg(http...
摘要:在本次上,京東云將在大會上為對云原生感興趣的研發(fā)和運維人員帶來利用延遲加載快速啟動容器的話題分享。今天聊的主角云原生也是一樣。 showImg(https://segmentfault.com/img/bVbtNqp?w=688&h=113); showImg(https://segmentfault.com/img/bVbtQaR?w=684&h=327); showImg(http...
摘要:全球最大的開源基金會軟件基金會的董事甚至認為,云原生邊緣計算意味著嵌入式計算的終結(jié)。這次我們不妨更加透徹的談?wù)?,云原生邊緣計算和嵌入式計算,將如何融合相互借勢。云原生應用,即指專門為在云平臺部署和運行而設(shè)計的應用。這是我在【物女心經(jīng)】專欄寫的第105篇文章。嵌入式計算已經(jīng)笑傲江湖多年,然而,最近它的地位似乎正在受到某種撼動。全球最大的開源基金會——Apache軟件基金會的董事Roman Sh...
摘要:目前云桌面已經(jīng)成為企業(yè)學校基礎(chǔ)設(shè)施的標配,不再是科技前沿的新寵。曾經(jīng)有一種聲音表示才是云桌面桌面虛擬化的唯一標準架構(gòu)均不屬于此范疇。虛擬化是一種技術(shù)手段,無論都屬于虛擬化的傳統(tǒng)技術(shù)架構(gòu)也是云桌面的解決方案之一?! ∧壳霸谱烂嬉呀?jīng)成為企業(yè)、學校IT 基礎(chǔ)設(shè)施的標配,不再是科技前沿的新寵。高校建設(shè)電子教室、政企擴展辦公地點… 云桌面都作為基礎(chǔ)設(shè)備列入了一期采購。隨著市場需求的增加,國內(nèi)云桌面廠商...
閱讀 2483·2023-04-25 19:24
閱讀 1699·2021-11-11 16:54
閱讀 2832·2021-11-08 13:19
閱讀 3547·2021-10-25 09:45
閱讀 2552·2021-09-13 10:24
閱讀 3276·2021-09-07 10:15
閱讀 4014·2021-09-07 10:14
閱讀 2950·2019-08-30 15:56