導讀:盡管有人從字面上理解這個術語,但越來越多的人和企業(yè)將云原生視為一種新興的架構模式。
云原生這個術語如今非常熱門,以至于一些企業(yè)正在通過“云原生”宣傳他們的產(chǎn)品和服務,以順應云原生浪潮。
不幸的是,其中很多企業(yè)不了解云原生是什么,或者沒有真正了解其核心優(yōu)勢。然而,這些企業(yè)確實意識到第二次云計算革命可能即將來臨。
首先需要了解這些企業(yè)遇到的困惑。許多人對“云原生開發(fā)”這個術語的理解是:構建特定云計算提供商(如AWS、微軟或谷歌)原生的軟件系統(tǒng)。因此,他們可以利用該提供商原生的安全服務、治理服務、數(shù)據(jù)庫服務等,并利用應用程序從云計算提供商那里獲得更多的收益。
與其相反,非原生系統(tǒng)將與特定的云計算提供商相分離。雖然系統(tǒng)可以運行,但它們沒有利用原生云服務。因此,它們的運行成本可能會更高,并且它們沒有利用有用的原生云服務來提高應用程序的性能。因為它們沒有利用來自云原生提供商的服務,所以必須自己編寫或集成這些服務。
盡管有人從字面上理解這個術語,但越來越多的人和企業(yè)將云原生視為一種新興的架構模式。
“云原生”的價值是什么?
云原生的新興定義可以作為如何設計、構建、部署和操作系統(tǒng)向前發(fā)展的真正革命。換句話說,這種新的云原生方法重新思考了人們?nèi)绾螐膭?chuàng)建的軟件系統(tǒng)中獲得更多價值,以及如何在所有平臺上利用這些方法,而不僅僅是公有云。
這種看待云原生價值的新方法包括云原生計算基金會(CNCF)的解釋:“云原生技術使企業(yè)能夠在公有云、私有云和混合云等現(xiàn)代動態(tài)環(huán)境中構建和運行可擴展的應用程序。”也許更好的說法是,云原生應用程序可以部署在多個云計算環(huán)境中,其中包括傳統(tǒng)平臺。這是新興云原生主張的核心,并定義了全部內(nèi)容。
云原生計算基金會(CNCF)有一個更大的想法:如果正確地使用云原生,那么將在包括公共云、私有云甚至遺留系統(tǒng)在內(nèi)的許多平臺上提供動態(tài)且可擴展的應用程序功能。大多數(shù)人對傳統(tǒng)設施甚至老舊的私有云的支持感到吃驚。然而,這個想法是為了推廣一種不用關注底層技術就能完成任務的方法。
容器和微服務
在通常情況下,云原生方法需要使用容器、容器編排和微服務以避免鎖定,這是云原生的理想結果。
新的云原生系統(tǒng)通常定義一個公共堆棧,其中私有云和公有云是可以駐留在任何平臺上的基礎。這些平臺將包括傳統(tǒng)計算、邊緣計算以及未來可能出現(xiàn)的新興平臺。同樣,這個想法是以不同的方式構建事物,重點關注正在開發(fā)的系統(tǒng)的“大局”最終目標。如果只關注特定技術,那么其價值將是短暫的。
綜上所述,可以將云原生定義為具有以下優(yōu)勢的方法:
它利用公有云定義的架構優(yōu)勢,而無需在特定云平臺上運行。
架構是獨立微服務的集合,可以存在于一個或多個輕量級容器中。
包括云平臺在內(nèi)的基礎平臺通常不直接向應用程序提供服務,而是使用抽象層。
這些云原生容器允許簡化部署到任何平臺,包括遺留系統(tǒng)、云計算平臺,甚至遠程設備。
云原生容器可以獲得平臺支持的通用服務,達到平臺的極限,例如可擴展性。
可以跨容器定義安全、治理和操作等公共服務,并且可以在與主機平臺直接接觸或不直接接觸的情況下加以利用。
云原生容器可以從一個平臺遷移到另一個平臺,例如云平臺之間或云平臺到內(nèi)部部署設施,而不會嚴重破壞軟件的功能和數(shù)據(jù)存儲模式。
什么是云原生革命?
上面列出的許多優(yōu)勢可以在過去的架構方法中找到,例如容器開發(fā)和編排,或者在支持技術中,例如大多數(shù)公有云提供商提供的服務。
在這里出現(xiàn)的新情況是,人們將云原生視為“如何”而不是“什么”的概念。云原生與技術無關;這是關于人們?nèi)绾翁幚硐到y(tǒng)設計、開發(fā)和部署,無論人們部署什么技術或平臺。
云原生并不會采用最熱門的云計算技術來構建和部署應用程序。云原生利用了幾種開放技術,這些技術本身并不是真正的解決方案。但是,當結合上面列出的特定架構模式時,可以利用任意數(shù)量的技術來實現(xiàn)云原生設計模式。
云原生的目標是提供比傳統(tǒng)的應用程序開發(fā)方法更有可能解決當前業(yè)務問題并且更持久的軟件系統(tǒng)。云原生也意味不再專注于開發(fā)技術或平臺。遷移到云原生開發(fā)的副作用之一是現(xiàn)在定義了如何完成某事,而不是要利用什么技術。
對于那些希望將自己的技術定義為提供不同于競爭對手的特定價值的供應商,云原生將是一個令人困惑的難題。云原生方法將迫使許多技術供應商和云計算服務提供商找出協(xié)同工作和合作的方式,以支持云原生開發(fā)和部署,其中許多不同的技術配置和解決方案成為最終狀態(tài)云原生解決方案的一部分。
云原生革命的必要元素
這場革命只有在有幾個部分到位的情況下才能奏效:
首先,負責構建和部署系統(tǒng)的人員需要采用云原生技術。無論云原生多么引人注目,采用因素將是最難實現(xiàn)的,因為技術市場的方向總是難以預測。
其次,供應商和云計算服務提供商必須共同努力,提供可互換且大部分開放的技術。他們不能一直專注于云原生范圍之外的獨特做事方式。與其相反,他們需要關注客戶希望如何構建系統(tǒng)以及這些系統(tǒng)的最終目標。
有了這兩個部分,“云原生革命”這個詞將具有其真正含義。云原生是構建和部署系統(tǒng)的方式的一種翻天覆地的變化。此外,它的重點是消除企業(yè)的技術依賴,這在過去是不可能的?,F(xiàn)在需要看看是否將云計算服務實現(xiàn)原生化,以便期待更光明的未來。