4款好用到哭的Kubernetes工具和框架

danny_2018發表於2022-03-29

Kubernetes工具和框架是發揮Kubernetes技術的重要組成部分,可幫助滿足各種需求並增強你的體驗,因此在做技術選型的時候,我們需要選擇一個最優的工具、最穩的框架。

本文,將介紹幾款可以最大化發揮K8s效用的工具和框架。

01

Istio

Istio是Kubernetes中最受歡迎的服務網格工具,既開源、功能又很強大,它的獨特之處在於它提供了巨大的靈活性,而沒有通常的複雜性,除此之外,Istio 還有著其他更加關鍵的設計目標,這些目標對於使系統能夠應對大規模流量和高效能地服務處理至關重要。

Isito的核心功能大致有5點:流量管理、安全、可觀察性、平臺獨立、整合和定製,相比其他 Service Mesh工具,我們用一張圖說明Istio所存在的優勢。

由此可見,Istio 作為目前眾多 Service Mesh 中最閃耀的新星,並不奇怪。

02

Knative

Knative是谷歌發起的一個Serverless開源解決方案,官方給它的定位是“基於Kubernetes的平臺,用來構建、部署和管理現代Serverless工作負載”。

透過Knative可將雲原生應用開發在三個領域的最佳實踐結合起來,這三個領域的最佳實踐是指服務構建部署的自動化、服務編排的彈性化以及事件驅動基礎設施的標準化。它既可以以託管服務形式執行在公有云中,也可以部署在企業內部的資料中心,從而很好地解決多雲部署以及供應商鎖定的問題。

Knative是一個雲原生Serverless框架,可以執行任何無狀態容器應用。目前成為雲原生計算基金會一部分的首批無伺服器平臺之一。

03

Tekton

Tekton是一種適用於建立持續整合和持續部署/交付(CI/CD)系統的谷歌開源的Kubernetes原生框架,原本是Knative專案裡的一個子專案,後來成長為一個通用的框架,能夠提供靈活強大的能力去做基於Kubernetes的構建釋出。

它支援多雲/多叢集下進行搭建、測試和部署,可實現滾動部署、藍/綠部署、金絲雀部署或 GitOps 工作流等高階部署。阿里就選擇Tekton之上構建應用交付體系。

目前,Jenkins 的子專案 JenkinsX 也開始預設使用 Tekton 作為 CI 引擎。使用雲原生一等公民 CRD + Controller 實現的 Tekton ,無疑有機會成為雲原生的主流編排引擎。

04

ArgoCD

Argo CD 是一個為 Kubernetes 而生的,遵循宣告式 GitOps 理念的持續部署(CD)工具,它的配置和使用非常簡單,並且自帶一個簡單易用的 Dashboard 頁面,並且支援多種配置管理/模板工具。

該功能集雖然側重於應用程式部署的管理,但是卻非常出色,功能十分豐富,與Kubernetes的整合完美無瑕。根據文件,它可以處理:

Kustomize應用程式

Helm Charts

Ksonnet應用

YAML/JSON清單目錄,包含Jsonnet

配置管理外掛配置的任何自定義配置管理工具

Kubernetes不是一個島嶼,為了支援生產級部署,需要許多可移動的工具和框架。但對於IT人來說,如何精準應用這些工具和框架,才是自我能力的證明。

來自 “ K8S中文社群 ”, 原文作者:K8S中文社群;原文連結:https://mp.weixin.qq.com/s/eHt1m5hdZxev5ScIShmDrA,如有侵權,請聯絡管理員刪除。

相關文章