最近討論云原生應用越來越多,其是指原生為在云平臺上部署運行而設計開發的應用。公平的說,大多數傳統的應用,不做任何改動,都是可以在云平臺運行起來的,只要云平臺支持這個傳統應用所運行的計算機架構和操作系統。只不過這種運行模式,僅僅是把虛擬機當物理機一樣使用,不能夠真正利用起來云平臺的能力。
云并非把原先在物理服務器上跑的東西放到虛擬機里跑,真正的云化不僅是基礎設施和平臺的事情,應用也要做出改變,改變傳統的做法,實現云化的應用——應用的架構、應用的開發方式、應用部署和維護技術都要做出改變,真正的發揮云的彈性、動態調度、自動伸縮……一些傳統IT所不具備的能力。這里說的“云化的應用”也就是“云原生應用”。云原生架構和云原生應用所涉及的技術很多,如容器技術、微服務等,
而云原生應用最大的特點就是可以迅速部署新業務。在企業里,提供新的應用程序環境及部署軟件新版本通常所需時間以日、周甚至以月計算。這種速度嚴重限制了軟件發布所能承受的風險,因為犯錯及改錯也需要花費同樣的時間成本,競爭優勢就會由此產生。
所以云原生不是一個產品,而是一套技術體系和一套方法論,而數字化轉型是思想先行,從內到外的整體變革。云原生包括DevOps、持續交付、微服務、敏捷基礎設施、康威定律等,以及根據商業能力對公司進行重組的能力,既包含技術、也包含管理,可以說是一系列云技術和企業管理方法的集合,通過實踐及與其他工具相結合更好地幫助用戶實現數字化轉型。
CNCF(云原生計算基金會)認為云原生系統需包含的屬性:1、容器化封裝:以容器為基礎,提高整體開發水平,形成代碼和組件重用,簡化云原生應用程序的維護。在容器中運行應用程序和進程,并作為應用程序部署的獨立單元,實現高水平資源隔離。2、自動化管理:統一調度和管理中心,從根本上提高系統和資源利用率,同時降低運維成本。3、面向微服務:通過松耦合方式,提升應用程序的整體敏捷性和可維護性。
正因為如此,你可以專注于創新,解決業務問題,而不是把時間花在“靜態、不靈活的傳統架構”存在的許多技術問題