新聞中心
Kubernetes插件的該如何擴展,這6個方面必不可少
作者:云智時代 2020-06-17 08:23:08
云計算 為了支持生產級的部署,Kubernetes需要許多可擴展的組件,比如日志記錄和監(jiān)控功能,安全治理等等。那么到底需要在哪些方面進行擴展,選擇哪些插件呢?

Kubernetes插件或擴展是Kubernetes堆棧的重要組成部分,可幫助滿足各種需求并增強使用體驗,為了支持生產級的部署,Kubernetes需要許多可擴展的組件,比如日志記錄和監(jiān)控功能,安全治理等等。那么到底需要在哪些方面進行擴展,選擇哪些插件呢?
1. 覆蓋網(wǎng)絡插件
容器必須以某種方式進行通信,所以覆蓋網(wǎng)絡(Overlay network)插件十分重要。盡管集群可以獨立于覆蓋網(wǎng)絡運行,但使用此覆蓋網(wǎng)絡的擴展,將大大提升靈活性。
覆蓋網(wǎng)絡插件的有不少,比如Calico,Weave,F(xiàn)lannel,Canal(Calico + Flannel)和Kube Router。每個集群可以手動安裝,也可以針對每個集群分別安裝。但是,這可能很耗時,并且限制縮放比例。由于覆蓋網(wǎng)絡是Kubernetes集群的關鍵部分,因此請確保它是自動化的,并且是Kubernetes管理平臺的一部分。
2. 云原生存儲擴展
大多數(shù)用戶,開始使用無狀態(tài)應用程序進行Kubernetes時,但很快便涉足有狀態(tài)應用程序領域。此時,需要一種使用特定擴展來管理云原生存儲的方法。
Kubernetes提供基本的本地存儲功能。但是,它們可能在諸如存儲配置,訪問管理或針對不同存儲類型的SLA等方面不足。盡管可以通過半手動方式解決這些問題,但這給運營團隊帶來了負擔,并帶來了可伸縮性問題。
為了通過狀態(tài)應用程序支持,可擴展的Kubernetes集群,需要自動執(zhí)行云原生存儲管理,操作和治理。這幾個選項是不錯的選擇,比如Portworx,Storage OS和Robin。開源項目還可以選擇Ceph和Rook。
所以在選擇構建自己的云原生存儲,利用商業(yè)產品(或具有商業(yè)支持的開源產品),或使用Kubernetes擴展云原生存儲功能。這三種選擇,第一種方法顯然不可行,因為構建自己的所需的工作和資源對大多數(shù)企業(yè)來說,都成本高昂的;最好考慮使用供應商提供的現(xiàn)有云本地存儲框架,或使用Kubernetes內置的存儲功能。
3. CI/CD管道插件
可以選擇各種持續(xù)集成和持續(xù)交付(CI/CD)擴展。有些是特定于云原生的,而另一些是通用的,可以與Kubernetes或其他部署工具一起使用。這些工具中的每一個都有不同程度的可定制性。有些包裝與預配置的管道打包在一起,這限制了自定義,而另一些限制較少,但需要更多的設置工作。
在查看選項時,請考慮開發(fā)團隊正在使用的工具及其體驗??梢酝ㄟ^插件,將CI/CD管道與Kubernetes和云原生堆棧集成在一起。如果沒有,請考慮使用開源工具,如Jenkins,Spinnaker或兩者的組合。
4. 安全管理和治理框架擴展
安全管理和治理框架對于企業(yè)至關重要,挑戰(zhàn)也在所難免。通過不同的框架實現(xiàn)不同的治理規(guī)則,并且這些擴展可能與現(xiàn)有的安全框架重疊。如果沒有一個能夠滿足所有治理需求的綜合工具,可能需要混合搭配以最大程度地覆蓋范圍,而又不會過度使用治理框架的數(shù)量和給運營團隊帶來負擔。
由于不同的企業(yè)的安全要求不同,因此安全插件也面臨類似的挑戰(zhàn)。首先,定義你的要求并確定正確的擴展;其次,在使覆蓋范圍最大化的同時,最小化所需的框架。
一些安全框架將與覆蓋網(wǎng)絡擴展集成,或者可以利用某些Kubernetes安全功能,包括網(wǎng)絡策略,pod安全策略等。對于自動化而言,如NeuVector之類的解決方案可以在集群,環(huán)境和應用程序中應用通用策略。
5. 入口管理擴展
入口管理可以將Kubernetes集群服務提供給外部用戶。為此,可以利用集群中的入口控制器。但是,更復雜的場景可能需要多個入口控制器并與API管理系統(tǒng)(如NGINX或Kong)集成。這兩個工具都與Kubernetes,云原生工具和不同的API管理系統(tǒng)集成在一起。
6. 運行時框架
有許多應用程序運行時擴展可供選擇。無服務器框架和服務網(wǎng)格通常與Kubernetes一起使用,并且能夠在每個集群中自動部署這些框架的功能非常有用。特別是對于開發(fā)和質量保證。使用這些工具時,請務必注意,它們會從應用程序中收集其他指標維度,并應與Kubernetes日志收集和監(jiān)控集成。例如,服務網(wǎng)格可以為監(jiān)控和解決各種問題,提供有價值的跟蹤信息。
鏡像注冊表是Kubernetes的另一個重要擴展。鏡像管理或構建庫管理遠遠超出了托管構建二進制文件,Helm軟件包或Docker鏡像的范圍。它支持應用程序恢復以及Kubernetes重啟Pod的能力,使其既具有部署時間又具有運行時依賴性。還必須考慮與這些構件庫相關的治理規(guī)則,例如誰可以在每個存儲庫中發(fā)布,并將這些規(guī)則與安全框架集成。
總結
Kubernetes插件或擴展是任何Kubernetes堆棧的重要組成部分。對于某些功能,例如覆蓋網(wǎng)絡,云本地存儲或CI/CD框架,選擇很簡單。但是,安全和治理帶來了復雜的問題。當你將各種工具組合在一起時,缺少單個綜合工具就需要對安全性要求進行深入思考和考慮,這并非易事。
那么可能需要考慮使用企業(yè)級Kubernetes平臺,例如Kublr,它通過默認設置關鍵擴展來解決Kubernetes的安全和治理挑戰(zhàn)。此類平臺還與身份管理系統(tǒng)和RBAC集成。
分享標題:Kubernetes插件的該如何擴展,這6個方面必不可少
文章起源:http://m.fisionsoft.com.cn/article/dphepgj.html


咨詢
建站咨詢
