不會吧?你還在手動編輯 ~--ssh-config?
一個簡單高效的 SSH 和 Kuberenetes 連接管理工具
在實際工作中經常需要遠程服務器和 Kubernetes,對於我這種 CLI 選手,不太喜歡一些圖形化工具,尤其是工具之間會有不兼容和遷移成本的問題。但當服務器和集羣的數量多了之後,通過編輯文本的方式管理連接信息,非常不方便且容易出錯。
所以,我打造了 ConfigForge,一個專爲 macOS 用戶設計的開源 SSH 和 Kubernetes 連接管理工具。
https://github.com/samzong/configforge
ConfigForge 的核心不是接管你的終端,而且提供更優的連接信息的管理形式。
01
核心功能
1.1 UI 配置管理
ConfigForge 爲管理 ~/.ssh/config
文件提供了圖形界面,具有以下關鍵特性:
-
可視化界面 用於查看和編輯 SSH 配置條目
-
搜索和排序 功能,快速定位特定的 SSH 連接
-
基於表單的編輯 無需手動編寫複雜的 SSH 配置語法
-
一鍵終端連接 直接從應用程序連接到 SSH 主機
對於 Kubernetes 用戶,ConfigForge 提供:
-
配置文件瀏覽 查看和管理多個 kubeconfig 文件
-
一鍵切換 在不同的 Kubernetes 配置之間切換,並自動備份
-
內置編輯器 用於修改 kubeconfig 文件內容
-
配置驗證 確保文件格式正確
1.2 命令行界面
ConfigForge 包含一個名爲 cf
的綜合 CLI 工具,提供對相同功能的終端訪問:
-
SSH 操作 從終端列出和連接到 SSH 主機
-
Kubernetes 管理 查看和切換上下文
-
無縫集成與桌面應用程序共享相同的配置數據
CLI 採用子命令結構處理 SSH 和 Kubernetes 操作,使用 Swift Argument Parser 進行命令處理。
cf
默認是 ssh
子命令,實現快速 SSH 連接到服務器:
(base) x in ~ λ cf l
Available SSH hosts:
1. *
2. blog
3. sf
4. dev-156
Use 'cf c <number>' or 'cf c <hostname>' to connect
Use 'cf s <number>' or 'cf s <hostname>' to show details
(base) x in ~ λ cf c 2
Connecting to 2. blog...
Welcome to Alibaba Cloud Elastic Compute Service !
cf
提供了查看多 kubeconfig 的方式,實現了快速切換當前的 K8s 連接信息。
(base) x in ~ λ cf k -h
OVERVIEW: Manage Kubernetes configurations
Commands for managing Kubernetes contexts and configurations
USAGE: cf kube <subcommand>
OPTIONS:
-h, --help Show help information.
SUBCOMMANDS:
current, cur Show current active Kubernetes configuration
list, ls, l List all Kubernetes configurations
set Set the active Kubernetes configuration
See 'cf help kube <subcommand>' for detailed help.
(base) x in ~ λ cf k l
Available Kubernetes configurations:
* 1. card4090-1year-kubeconfig.yaml (active)
2. new-config-5-16-25,_13-18.yaml
Use 'cf k set <number>' or 'cf k set <filename>' to switch configuration
Use 'cf k current' to show current active configuration
(base) x in ~ λ cf k set 2
Selected configuration 2: new-config-5-16-25,_13-18.yaml
Successfully switched active Kubernetes configuration to 'new-config-5-16-25,_13-18.yaml'
02
如何使用
目前應用基於 Homebrew 分發,同時提供了適配 M 系列和 Intel 芯片的 2 個版本。
brew tap samzong/tap
brew install configforge
如果工具對你來說有用,歡迎點個 Star,超過 30 個就可以推送到 Homebrew 主倉庫。
不是蘋果開發者,所以沒簽名,首次啓用會提示文件損壞,使用如下命令激活即可。
xattr -dr com.apple.quarantine /Applications/ConfigForge.app
爲什麼不支持 Windows ?
-
Windows 幾乎都是使用圖形化工具爲主,所以用戶需求不大
-
我不知道怎麼寫 Windows 的應用,最近嘗試做使用跨平臺的應用(Electron)
03
寫在最後
爲什麼選擇開源?
ConfigForge 管理的是核心的服務器和 Kubernetes 的連接信息,如果沒有確保足夠的用戶隱私和透明度,我自己都不敢用,所以所有代碼都可公開審查。
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/bn4OiG9vUO51BemE8Et9Lw