https://www.kubernetes.org.cn/7388.html
根據Stackrox 最近進行的一項 調查,Kubernetes在市場上的主導地位繼續得到加強,有86%的受訪者將其用於容器編排。
如果你是其中的一員,那么在Kubernetes繼續快速增長的同時,這里有一些工具可以幫助你提高工作效率。
Kubernetes類別列表:
集群部署工具
監控工具
測試工具
安全
CLI工具
開發工具
持續集成/持續交付管道
Serverless工具
服務網格工具
服務發現
可視化和控制
集群部署工具
1. Keel
一個Kubernetes Operator,可自動執行DaemonSet,StatefulSet,Helm和Deployment更新。
這是一個用於構建整個Keel項目二進制文件的命令,該二進制文件沒有依賴關系,沒有自定義配置文件且沒有鎖定。
鏈接: https://keel.sh/
2.Kube-prod-runtime
Kubernetes中的服務集合,使生產環境運行工作負載變得容易。
該服務能夠對Kubernetes集群監視性能,啟用日志記錄,實施認證管理,並允許通過公共DNS服務器自動發現K8中的資源。
還滿足其他必要的基礎架構需求。
鏈接: https://github.com/bitnami/kube-prod-runtime/
3. K3sup
安裝k3sup后,使用這個工具幾分鍾內就可以在任何本地或遠程VM上生成kubeconfig 。
鏈接: https://github.com/alexellis/k3sup
監控工具
4. Kube-state-metrics
創建了一個基本程序來監聽Kubernetes API服務器並幫助生成有關對象狀態的指標。
它着重於群集內各種對象的健康狀況,其中包括 nodes, pods, and deployment。
鏈接: https://github.com/kubernetes/kube-state-metrics
5. Rakess
Rakess可幫助你查看所有提供的Kubernetes集群訪問權限。
要檢查單個資源命令,可使用“ kubectl auth can-i 列出 deployments ”,但不會 提供完整的概述。
鏈接: https://github.com/corneliusweig/rakkess
測試工具
6. Kubeval
驗證Kubernetes YAML或JSON配置文件的工具。
通過運行Kubernetes OpenAPI規范來完成此過程。
鏈接: https://github.com/instrumenta/kubeval
7. Helm-kubeval
Kubernetes模式中使用的驗證Charts的Helm插來 。
你還可以選擇特定的Kubernetes版本來驗證Charts。
鏈接: https://github.com/instrumenta/helm-kubeval
8. BotKube
BotKube可以監視,調試和檢查Kubernetes集群。
該工具可以集成到各種消息傳遞平台中,例如Slack和Mattermost。
開源且易於配置。
9.Sonobuoy
Sonobuoy是一款出色的診斷工具,可用於測試一致性,工作負載調試和自定義測試以確定Kubernetes集群的狀態。
測試以非破壞性方式完成,可生成有關集群的清晰,有用的報告。
10. Snyk Container
Snyk旨在—在整個軟件開發生命周期中,始終如一地為你提供檢測和修復容器和應用程序中漏洞的方法 。
鏈接: https://snyk.io/product/container-vulnerability-management/
安全
11. Kubectl-aws-secrets
使用此程序可創建golang可執行文件,該可執行文件會導入AWS SSM參數服務–幫助你將對應用程序,服務和IT資源的訪問作為機密保護到Kubernetes中。
進一步使用此golang可執行工具可以構建Helm插件或將其用作kubectl插件。
鏈接:https://github.com/xmin-github/kubectl-aws-secrets
12. Helm-aws-secret-plugin
完全按照Helm AWS Secrets插件名稱中的說明進行操作。
鏈接: https://github.com/xmin-github/helm-aws-secret-plugin
13. Harbor
使用Harbor通過基於角色的訪問控制來保護你的容器鏡像 registry。
該工具將掃描鏡像中的漏洞並將其簽名使得可信任。
14. Kubesec
用於Kubernetes資源的安全風險分析工具。
15. Permission-Manager
權限管理器完全可以實現你的想法。
由SIGHUP開發的Permission-Manager是一個應用程序,可為Kubernetes啟用基於角色的超簡單訪問控制管理—創建用戶,分配名稱空間/權限,並分發Kubeconfig YAML文件。
鏈接: https://github.com/sighupio/permission-manager
16. Kube-scan
Octarine的新工具–專注於Kubernetes工作負載中的風險評估,在集群中作為Pod運行,並評估30種安全設置以創建風險基准。
該工具會分析哪些方法協同工作,以了解哪些組合會降低你的風險水平。
鏈接: https://www.octarinesec.com/solution-item/kube-scan/
17. K-rail
K-rail適用於你需要在策略實施中進行更多控制的情況。
你可以采取多種簡單的特權升級路線,但是在多租戶集群中,這些功能可能很危險或會帶來不穩定。
鏈接: https://github.com/cruise-automation/k-rail
18. Kube2iam
Kube2iam在Kubernetes的Pod中提供了IAM角色。
Kube2iam: https://github.com/jtblin/kube2iam
19. KIAM
KIAM在功能上與Kube2iam有很多相似之處,但是你可能需要仔細查看每一個,以確定其用例是否最適合你的需求。
你可以在此處查看 KIAM和Kube2IAM的差異和用例的細分 。
KIAM: https://github.com/uswitch/kiam
20. KeyCloak
KeyCloak是一個訪問和身份管理的開源工具,它添加了應用程序身份驗證,還可以方便地保護服務。無需處理存儲用戶和驗證用戶身份。
21. Tigera
Tigera 由Project Calico提供,他提供的自動化通用安全策略,可以為你的Kubernetes需求提供了一套網絡安全解決方案,並支持多雲和傳統環境。
22. Palo Alto Kubernetes Security
雖然仍處於Beta版,但它是Palo Alto的Kubernetes Security的存儲庫,它包含用於部署容器化防火牆的YAML文件。
鏈接: https://github.com/PaloAltoNetworks/Kubernetes
23. Klum
Klum(Kubernetes Lazy User Manager)可以執行簡單的任務,例如創建/刪除/修改用戶,發布kubeconfig文件並管理與用戶關聯的角色。
鏈接: https://github.com/ibuildthecloud/klum
24. Secrets OPerationS
Secrets OPerationS(SOPS0被認為是管理Kubernetes secret 的最佳工具之一,它可與 AWS Key Management Service和 GCP Key Management Service以及Pretty Good Privacy(PGP)和 Azure Key Vault無縫結合使用。
在此處查看有關使用SOPS的完整文章: 使用Secrets OPerationS管理Kubernetes secret
鏈接: https://github.com/mozilla/sops
25. StrongDM
StrongDM是用於保護和審核對服務器或數據庫的訪問的控制平面。
閱讀全文: 具有StrongDM的服務器和數據庫的身份和訪問
CLI工具
26. Krew
Krew幫助開發人員發現有用的kubectl插件並為你的程序安裝/管理它們。此工具類似於 APT, DNF或 Homebrew。
鏈接: https://github.com/kubernetes-sigs/krew/
27. Ksniff
kubectl的一個插件,有效利用 Wireshark和 tcpdump啟動Kubernetes集群Pod的遠程捕獲。
鏈接: https://github.com/eldadru/ksniff
28. Kube-ps1
Kube-ps1是Zsh插件,它將幫助你查看要指定的上下文。
鏈接: https://github.com/jonmosco/kube-ps1
29. eksctl
Eksctl是用於創建和管理集群升級的簡單命令行界面工具。
還支持配置和使用自定義Amazon Machine Image(AMI),這使許多高級用例成為可能,例如使用自定義AMI或實時查詢AWS以確定哪個AMI是必需的。
30. Kubefwd
如果你正在遠程集群上運行Kubernetes服務,請使用Kubefwd將其轉發到本地工作站。
鏈接: https://github.com/txn2/kubefwd
31. Kubeterminal
這更多是一個輔助工具,可以補充Kubectl和Kubernetes中的終端。
鏈接: https://github.com/samisalkosuo/kubeterminal
32. Skaffold
Skaffold是一個命令行工具,可幫助開發人員進行持續的Kubernetes應用程序開發。Skaffold非常輕巧,不需要集群組件。
33. Tilt
當你將大部分時間花在命令行上時,Tilt會將你的更改同步到集群,以供你查看迭代如何影響整體。
隨着一切的旋轉,Tilt向你顯示每種資源的狀態,瀏覽每種資源的日志,或查看所有資源的復用狀態。所有更新都是在容器中完成的,並且超級快。
開發工具
34. Helm-2to3
創建了一個Helm V3插件,以幫助開發人員遷移和清理在Helm V2中創建的配置,並就地發布到Helm V3。
鏈接: https://github.com/helm/helm-2to3
35. Rook
Rook可以自動執行存儲管理員的任務:部署,引導,配置,供應,擴展,升級,遷移,災難恢復,監視和資源管理 。
它還可以確保無論你選擇哪種存儲提供商,它都能在Kubernetes上始終運行。
鏈接: https://rook.io/
36. Contour
Contour是Kubernetes入口控制器,它為Envoy和服務代理提供控制平面。
鏈接: https://projectcontour.io/
37. Kubebuilder
這將幫助你鏈接到Kubernetes API指南,從而使你深入了解如何設計和實現它們。
鏈接: https://book.kubebuilder.io/
38. Shell-operator
Shell Operator有助於簡化Kubernetes運算符的創建。
鏈接: https://github.com/flant/shell-operator
39. Helm-operator-get-started
一種有助於管理你的Helm版本的工具。
鏈接: https://github.com/fluxcd/helm-operator-get-started
40. Kudo
Kudo是一個工具包,主要使用YAML簡化了構建Kubernetes Operators的過程。它將為你提供預定義的 Operators ,你可以直接對其進行自定義。
41. Helm-docs
該工具將從Helm charts 自動其生成 markdown 文件。該文件將包含有關charts 的元數據。
鏈接: https://github.com/norwoodj/helm-docs
持續集成/持續交付管道
42. Rafay
Rafay是一種軟件工具,可以簡化公司或個人在構建內部平台,自動化框架和應用程序生命周期管理方面的工作。它還可以運行Kubernetes集群。
43. Rancher
Rancher是一個完整的軟件平台,可以輕松部署容器化環境,而不僅僅是Kops和Kubespray等Kubernetes安裝程序。
該平台提供了多種功能,包括基礎架構管理,容器調度/編排,監視/運行狀況檢查/日志記錄以及功能強大的基於角色的訪問控制系統。
44. Draft
其目標是簡化在Kubernetes上運行的應用程序的構建。使用兩個簡單的命令,你就可以開始入侵基於容器的應用程序, 甚至不需要Docker或Kubernetes。
Serverless工具
45. Knative
Knative是一個基於Kubernetes的開源平台,它提供了一組構建模塊,以簡化Kubernetes和Istio在管理和操作Lambda函數方面的使用。
鏈接: https://cloud.google.com/knative/
服務網格工具
46. Kiali
Kiali幫助開發人員觀察,定義和驗證服務網格的連接。
它創建服務網格拓撲的可視化圖形,並提供對斷路器,請求路由,等待時間,斷路器等功能。
鏈接:https://www.kiali.io/documentation/features/
47. Kuma
一個通用的開源服務網格和微服務控制面板,可以在VM環境和Kubernetes上運行。
鏈接: https://github.com/Kong/kuma
48. Tenkai
Tenkai是基於Helm Charts的微服務管理工具。該工具使用Web GUI界面從Helm Charts調出存儲庫,輕松配置和部署它們。
鏈接: https://github.com/softplan/tenkai
服務發現
49. Vert.X 服務發現
大量服務發現工具的存儲庫,使用Vert.X來發現和注冊和公開的服務應用程序。服務也可以來自Kubernetes、Docker和 Consul 上。
鏈接: https://github.com/vert-x3/vertx-service-discovery
可視化和控制
50. Octant
一個基於Web的開源工具,可讓Kubernetes工作負載可視化,並為你提供工作負載的實時更新查看。
51. Kubernetic
Kubernetic提供了–集群和更新實時可視化查看,以及支持多個集群的功能等。
譯文鏈接: https://dzone.com/articles/50-useful-kubernetes-tools-list-part-2