今天這篇文章要來跟大家分享幾個好用的小工具,能夠增加開發人員與維運人員日常工作的效率
Lens 這套工具提供一個基於 GUI 介面的 Kubernetes 管理工具,如果你需要同時管理多套 Kubernetes 叢集,那使用這類型的工具可以幫助你更快速的進行日常工作。類似的專案還有知名的 k9s 等。
我認為這類型專案提供最大的好處就是當 Pod 內有多個 containers 時,這時候不論是log或是exec都需要用 -c 去指定特定的 container。使用原生的 kubectl 很大的問題是有時候根本不記得這些 container 的名稱,都需要用額外的指令去掃出相關的名稱。使用這類型的工具可以很快速地檢視有哪些 container 並且進行後續處理,甚至連 init-container 都可以方便觀看
CLI 工具系列包含大家常見的 kubectx, kubens 及 krew 打造的 plugin 管理系統外,還有 kubectl-neat, kube-no-trouble 等
其中 kubectl-neat 也可以整合到 kubectl 指令中,其目的是透過 kubectl get 可以得到當初真正部署的資源樣貌,幫你移除那些由 controller 動態加入的欄位,譬如 creationTimestamp 等
kube-no-trouble 則是幫你掃描是否有使用到任何被標示為 deprecated API,升級 Cluster 運行此工具進行檢查可以避免升級後有些資源不能使用而造成應用程式損毀。
Kube Forwarder 是一個GUI工具,如果你平常工作非常仰賴 kubectl port-forward 的話,推薦使用看看這個工具,可以幫助你管理多個 kubectl port-forward 的設定,特別是當你要針對多套 k8s cluster 不停切換時,使用這個工具會幫你減省不少時間。
文章中還有探討一些安全性相關的工具,譬如 Polaris, Kube-hunter, Kube-bench, Trivy, Goldlocks 等。有興趣的人閱讀全文並且根據需求去嘗試看看囉
https://yitaek.medium.com/useful-tools-for-better-kubernetes-development-87820c2b9435
Search