何謂雲端原生?

雲端原生是一種利用雲端基礎架構來打造可攜、可擴充式軟體的應用程式設計理念。雲端原生應用程式是以連結鬆散的微服務所打造,並且在抽象的軟體單元上執行 (例如容器)。

雲端原生

所謂「雲端原生」就是設計和開發在雲端內打造、並且在雲端內運作的應用程式。雲端原生的設計基本上是以速度和擴充性為主要訴求。這類系統都是為了要能快速因應環境變化而打造,並且能視需要隨時擴充個別服務。

當軟體使用了容器和微服務這樣技術,並不代表它就是雲端原生應用程式。雲端原生應用程式在架構上就是專為雲端而設計,因此也是專為在雲端內執行而最佳化。

雲端原生應用程式最重要的一些設計元素包括:擴充性、自動化,以及基礎架構。這些特性讓雲端原生軟體能夠快速適應和擴充。其基礎架構本身應該要能隨時自由移動而不會對整體生態系帶來成本。如果一個應用程式符合了上述所有條件,那就可以被視為真正的雲端原生應用程式。

雲端原生架構

這類系統在開發時就已經明確設定是要在雲端內生存及運作。目前,很多雲端服務都提供了動態而靈活的應用程式開發技巧,其中有許多技術,包括微服務和應用程式開發介面 (API),可協助開發人員採用模組化的軟體建構、執行和維護方法。這樣的設計是為了支援雲端部署,並且徹底發揮雲端的擴充性。

微服務是一群彼此連結鬆散的服務,是採用容器來建構一個分散式應用程式的結果,每個應用程式都彼此獨立運作。如此一來,每個服務都能享有很大的擴充性與自由度,可單獨更新而不影響其他服務。每個微服務都是為了單一目的而設計,並使用一個明確定義的介面來包裝其功能並與其他服務溝通。

API 就像是完全不同的應用程式之間的閘道。它們讓應用程式 (如微服務) 能彼此溝通,協助蒐集資料並且對資料做出回應。一些流程,例如透過手機應用程式訂購比薩或在網路上預訂飯店等等,就能透過 API 來完成,因為它們的型態不同,提供的資訊也不同。透過微服務和 API 兩者的配合,就能在雲端原生方法所開發的軟體之間傳遞資訊。不過,當 API 運用在雲端原生架構時,必須採用宣告方式:也就是應該讓使用者宣告可以做些什麼,而不是該如何做。

對採用雲端架構概念打造的應用程式來說,地區 (region) 的觀念對於了解和預測其需求非常重要。它們可以讓您將內部和外部雲端資源配置在更靠近您客戶的地方。為每個地區挑選適當的可用性區域 (availability zone) 來配合您的雲端架構應用程式,有助於縮短延遲、更符合產業或當地法規與資料主權要求、降低成本,並提升災難復原能力。

除此之外,自動化也是雲端原生架構的另一項關鍵要素。這對維持您雲端環境的一致性不可或缺,因為這樣才有可能永續、擴充及追蹤。利用自動化工具來追蹤哪些應用程式正在執行,偵測哪些系統可能正遭遇問題,必要時並協助矯正和重新部署。

畢竟,由於雲端原生架構最能因應外在變化,因此能夠協助您徹底發揮公有雲的效益。此外,這也是打造最符合您企業需求的應用程式最好的方式,從抽象的軟體單元 (如容器) 到快速部署。

雲端原生應用程式

雲端原生應用程式通常都包裝在一種叫作容器的軟體單元當中,並透過 API 來連接。這些應用程式提供了微服務,基本上就是一些具備特定商業用途的模組,它們透過 API 來溝通,但更重要的或許是它們是專門為了在雲端內運作而設計。

除了典型的容器之外,還有一種以服務來提供的容器,稱為「容器服務」(Container as a Service,簡稱 CaaS)。這些服務可藉由虛擬化讓開發人員上傳、執行、擴充以及管理容器。CaaS 是一群雲端機器的集合,讓開發團隊使用自動化的代管與部署。反觀使用「一般」容器的開發人員則需要仰賴一些團隊來部署與管理底層的支援架構。而容器服務將這所有的服務整合成單一服務。

還有一種用來執行雲端原生應用程式的選項是無伺服器容器。這類解決方案能讓雲端用戶使用容器以及抽象的管理與基礎架構選項。這類容器通常用於規模較小且不需要許多資源來執行的流程。

技術上來說,它們還是伺服器,只是部署時「不包含伺服器」,由雲端供應商負責伺服器的部署與管理。開發人員只需組譯並部署可被隨選呼叫的程式碼。應用程式隨時都在待命並等著需要時被啟動,一些雜七雜八的工作都交由雲端供應商而非開發人員或 DevOps 團隊來負責。

雲端原生應用程式防護平台 (CNAPP)

這是一種全方位的雲端防護平台,用來監控、偵測及回應潛在的資安威脅。CNAPP 能在適當時機、適當地點為資安及開發團隊提供適當資安資訊。它能在您的環境當中無縫運作,提供完整的威脅可視性與防護,讓團隊保護業務關鍵應用程式。

此外,還有一些額外的功能,例如延伸式偵測及回應 (XDR),可讓 CNAPP 融入企業整體的資安版圖當中,形成一套全方位的網路資安平台。如此就能提供端對端的應用程式及雲端防護,還有監控、入侵防範以及資安狀態管理。簡而言之,CNAPP 將多種雲端防護功能整合至單一控制中心:惡意內容掃描、雲端資安狀態管理 (CSPM)、雲端工作負載防護平台 (CWPP)、執行時期防護,以及雲端組態設定。

惡意內容掃描是在開發流程當中執行,目的是要降低部署的應用程式出現問題的風險。雲端組態設定可防止組態設定偏離,協助發掘網路、應用程式、雲端儲存以及其他雲端資源的組態設定錯誤。惡意內容掃描的結果將與營運環境及執行時期雲端組態設定可視性結合來判斷風險矯正的優先次序。

若您只仰賴個別雲端廠商的內建資安功能,那麼多重雲端環境的管理將難上加難。除此之外,有別於零散不連貫的產品,CNAPP 能將多種重要的功能集結成一套全方位而簡化的方案。這類平台提供了自動、強大的防護功能讓企業彌補開發人員在資安專業知識上的不足,包括:消除單一面向產品在應用程式風險可視性上的死角,以及提升 IT 部門及人員的整體可靠度,在達成數位轉型與雲端原生開發目標的同時,還能維護安全並符合法規。

相關文章