為何你需要Anthos?

最近幾年雲原生的議題高燒不斷,越來越多的企業開始關注如何實作雲原生應用在企業內部,那到底什麼是雲原生,為什麼我們會需要將它加入企業中呢?

這一切要先從容器技術問世,再加上Google 2015年開源 Kubernetes開始…

在過去,我們聽到開源(Open Source)兩個字,你可能會聯想到的是:免錢?不好用? 不能在商業運用上使用等…,在現在,你會發現許多的企業都在關注,我們的需求,是否有開源的專案可以替代或實作?相關的開源專案是否有提供企業的技術支持?

這都要歸功於CNCF組織,制定了相關的開源規範,並進行統整與推廣,因此許多的原廠也都漸漸的以開源社群來發展產品服務,並且同步推出企業版本來提供相應的技術支持與進階功能。

例子:
Redhat Fedora (開源版本) / Redhat Enterprise (企業版本)
Ngnix (開源版本) / Ngnix Plus (企業版本)
Gitlab CI (開源版本) / Gitlab CI Ultimate(企業版本)

CNCF cloud native landscape
CNCF Cloud Native Landscape 圖片來源

透過容器化的技術,我們可以很容易的獲得並部署這些開源專案在企業內部做使用,你只需要幾個簡單的指令,就可以把某個開源專案運行在企業環境中。

以workpress的docker image為例,你只需要一行指令就可以部署完成:
docker run –name my-wordpress –network my-network -d wordpress

如果需要客製容器的內容呢?這也很簡單,你只要在運行docker指令時,帶入相關的參數即可,並不需要寫太複雜的設定檔:
-e WORDPRESS_DB_HOST=192.157.1.1
-e WORDPRESS_DB_USER=db-user
-e WORDPRESS_DB_NAME=wordpress-db

如果想要依據需求客制化容器的內容呢?這也很簡單,你只需要可以撰寫dockerfile檔案,將你需要的元件透過自動化腳本加入,再透過docker build指令即可打包成新的docker image做後續的使用,是不是很方便呢?

docker-build-依據需求客制化容器的內容
圖片來源

搞定了容器之後,接下來就是如何讓我們的容器運行在企業環境中了,接下來就要進入我們今天的主角 Kubernetes了!

Google 開源的Kubernetes可以輕鬆地幫助我們完成容器的自動調度,像是透過service自動配發IP,搭配service discovery自動的完成pod探索與關聯並提供負載分流
圖片來源

Google 開源的Kubernetes可以輕鬆地幫助我們完成容器的自動調度,像是透過service自動配發IP,搭配service discovery自動的完成pod探索與關聯並提供負載分流,或者是透過ingress來提供憑證中介或者是基於L7的HTTP控制與轉送,以及最重要的自動資源調度與服務容錯機制。

只要你能夠確保有足夠的Kubernetes Worker資源,調度的事情你就無須煩惱了,因為Kubernetes平台會自動地幫你處理好這一切,你只需要發布你要的設置,剩下的就交給Kubernetes平台處理。

運用容器化技術與開源專案,再搭配Kubernetes進行調度管理,你可以依據你的企業業務服務特性與需求,找到適合的開源專案進行組合,建構出你要的IT基礎設施。

講到這裡,我們可能會思考一個問題,就是既然Kubernetes這麼好用,那為什麼企業不將所有的服務都轉到這裡面去呢?

沒錯!雖然好用但畢竟Kubernetes是仰賴社群的力量來進行專案的維護,所以無法提供企業的技術支援,當測試環境的服務要邁向營運環境時,我們就會希望能夠提供一個穩健的環境來運行核心服務。

目前主流的三大平台,都有提供全代管的Kubernetes服務,像是Google的GKE / Azure的AKS / AWS的EKS等,這是其中的一種方式,就是直接使用雲平台的Kubernetes環境,你不用自己建置、維運Kubernetes環境,你只需要關注在上面運行的專案跟工作負載即可。

另外一個方式,是在企業內部建構企業級別的Kubernetes環境,也就是使用由合作夥伴提供的Kuberntes整合版本,以Google為例,Kuberntes的企業整合版本就是 Google Anthos。

google-anthos- managed-application-platform
圖片來源 : Google

Google Anthos 提供開源方案的整合與優化,並支援虛擬化或實體機的安裝或者是雲端平台的全代管Kubernetes佈建,企業可依據需求自由選擇相符的場景進行環境部署,並且提供營運環境所需要的技術支持與協助。

Google Anthos 除了提供技術支援外,也持續整併目前主流的開源專案項目到Anthos的模組服務中,讓企業客戶能夠更簡單的完成部署並運用於企業環境中:
● 維運監控 – Anthos Service Mesh (Istio)
● 政策管理 – Anthos Config Management (OPA)
● 開發整合 – Cloud Run on Anthos (Knative)

google-anthos- managed-application-platform-2
圖片來源 Google

企業客戶除了關注技術支持與監控維運外,另外一個對於企業雲端發展至關重要的功能,就是必須具備多雲整合管理能力。

Google Anthos方案就提供了一個簡單的方式,可以協助企業客戶進行多雲的Kubernetes集中化管理。
圖片來源 : Google

許多企業客戶是在不同的時間點開始接觸並導入Kubernetes,基於當時的需求與情境不同,有可能是建置在企業內部,或者是其他雲環境中,當散落在各地的Kuberntes要進行整合或遷移時,此功能就變得極為重要,Google Anthos方案就提供了一個簡單的方式,可以協助企業客戶進行多雲的Kubernetes集中化管理。

結語:

Google提供了一個非常友善的雲原生生態系給企業客戶,客戶可以自由地選擇使用雲平台的全代管服務,或者是透過Kubernetes運行開源專案,亦或是轉移至Anthos來進行服務統整與資源整合。

Google秉持著開放不綁定的精神,讓客戶能夠自由的發展核心業務,客戶可以依據核心業務的步調,彈性的進行IT資源調整,並提供最佳的IT技術支持給客戶,讓企業與Google一起成長茁壯。

在後續的Anthos系列文章中,我們將各別針對不同企業客戶的場景,進行深度的Anthos應用案例分享,讓各位能夠更了解Anthos的優勢,以及如何透過它來實現企業與雲平台的整合與接軌。

敬請期待…

發佈日期 : 2021-03-24 | James Wu

羽昇國際-企業上雲規劃評估服務