因為操作的簡單性和可擴展性,云容器服務得到越來越多企業的重視。通過容器技術可顯著提高開發人員和運營人員的效率。
雖然容器技術可加快應用程序的部署,但想要實現容器的底層技術對于許多企業來說仍然非常困難。為此,許多云服務提供商(CSP)提供容器即服務(CaaS)產品。這些產品可以減輕安全和運維團隊構建容器基礎設施的工作負擔。因為CaaS產品具有IaaS的所有基本功能,包括自助服務、可擴展性、計算、存儲和網絡資源以及抽象層。容器運行的底層軟件包括容器運行時、容器編排、作業調度、資源管理和其他容器管理功能。
公有云容器的服務架構
1、公有云容器市場發展
據權威機構分析,到 2022 年企業使用公有云容器服務比例將從 2018 年的 50% 增長到 70% 以上。當下主流的公有云廠商都已經提供了容器服務(CaaS),許多規模較小的公有云和私有云IaaS提供商也瞄準了此類產品。當然,公有云CaaS市場的增長將受到IaaS市場整體增長以及容器技術采用率的影響。Gartner預測,在接下來的幾年中,容器的使用將繼續快速增長。
未來幾年容器使用情況
當然,容器采納大部分是由開發者所驅動的,他們將容器視為快速生成高質量代碼的主要工具。不管是新應用程序的開發,還是老程序的封裝部署,容器都可以發揮重要價值。例如,在開發期間使用容器可以確保跨開發、測試和生產環境的一致配置,大大簡化了對接所需時間。此外,容器還是云原生應用、微服務應用程序最佳的運行平臺。歸根結底,容器已經成為現代應用程序平臺基礎設施的一個關鍵組成部分。
未來,隨著越來越多企業將工作負載轉移到公有云上,可以預見公有云容器服務市場會繼續保持增長。隨著很多企業逐步開始采用多云服務,為解決多個公有云容器服務兼容性問題,有的供應商已經開始提供跨不同云環境部署管理的能力,例如OpenShift, Kubernetes引擎都可提供相對應服務。
雖然老舊應用程序不是容器使用的主要目標,但是在接下來的幾年里,更多的企業將重新構建它們的歷史應用程序,將從單一的應用程序轉換為自治的、分解的服務或微服務,這些服務被打包部署在容器中。當然,企業在將應用程序遷移到云上時,有幾種不同情況,如下圖所示。
將應用程序移植上云的計劃
從上圖可知,“云遷移”可分為Rehost、Refactor、Rearchitect、Rebuilt和Replace5個層次。每個層次對于業務遷移和部署難度也完全不同。
(1)在Rehost階段
雖然改變了業務承載形態,但未改變任何運維流程,僅僅只是實現在云上部署。
(2)在Refactor階段
基于業務場景的視角,用流程再造的方式,來匹配公有云,最大的好處就是節約資源。
(3)在Rearchitect階段
通過改造應用架構,在節約成本的同時,也無需自建數據庫,授權的費用也大大降低。
(4)在Rebuilt階段
全部應用都按照云原生的方式進行開發部署,獲得最大程度的彈性擴展能力。
(5)在Replace階段
已不屬于傳統IT范疇,以服務的方式進行SaaS購買。
以rehost為例,雖然直接遷移(lift-and-shift)是可行的,但也只是實現了更快的加載、縮短了重新加載時間和恢復時間。顯然,直接遷移并不能顯著提高可擴展性、性能和彈性。為了實現這些目標就需要重構應用程序以滿足云原生設計的要求。這就是容器將產生顯著效果的地方。
雖然,當下許多企業僅僅是在主機場景中使用容器處理無狀態實例。但是,未來在公有云上的許多應用程序將更多地關注有狀態應用程序。因此,需要為應用程序開發人員提供更多的底層抽象技術,并提供額外抽象的服務。盡量使開發人員能夠專注于業務邏輯,而不是底層基礎設施。
2、公有云容器服務選擇
眾所周知,應用程序開發人員是容器技術的主要關注對象。他們希望使用容器技術來支持更高效的應用程序交付過程。因此,容器采用包括CaaS采用,通常由應用程序開發負責人、企業架構師或技術創新負責人處理。大量的公有云IaaS和PaaS支出都是由業務線付費買單,而不是CIO所負責的集團IT預算。因此,基礎設施運營(I&O)領導者必須與相關業務人員合作,才能更好為后期容器管理提供服務。