6個在本地機器上執行 Kubernetes 的工具
Kubernetes 是一項龐大而複雜的技術,它顯然需要一些時間和奉獻精神來解決。沒有供應商鎖定意味著無論您在哪個託管雲平臺上使用它,它都執行相同。這意味著在本地使用它與在雲上使用它沒有什麼不同。
有多種工具可以在本地機器上執行 Kubernetes,但基本上可以歸結為兩種方法:
- 從單個二進位制包執行它
- 在 Docker (DinD) 中使用 Docker 將其作為容器執行
Kubernetes 市場:在我們繼續討論所有工具之前,如果您將其安裝arkade在您的機器上將是有益的。它將幫助您使用單個命令獲取這些工具。
curl -sLS https://get.arkade.dev | sudo sh
此處列出的所有工具或多或少都提供相同的功能,包括但不限於:
- 多節點叢集
- 持久卷
- 聯網
- 證書
- 裸機支援
- 儀表板
- Kubernetes 版本
- 附加元件
- 跨平臺
- 跟蹤上游 Kubernetes
k3s
k3s 是 Rancher Labs 的輕量級 Kubernetes 發行版。它專門針對在 IoT 和 Edge 裝置上執行,這意味著它非常適合您的 Raspberry Pi 或虛擬機器。
它帶有一個僅 <40 MB 的二進位制檔案,佔用的 RAM 低至 500 MB。
您可以使用k3sup快速引導 k3s!
arkade get k3sup |
k0s
顧名思義,您可能認為它是 k3s 的精簡版,但它是來自一家名為 Mirantis 的完全不同公司的完全不同的發行版。與名稱相反,它有一個更大的二進位制檔案,150 MB+。
它可以作為二進位制或 DinD 模式執行。k0s 非常重視安全性,開箱即用,它符合FIPS 合規性。雖然,一個新的發行版,k0s 已經達到了生產就緒狀態,所以開發使用不會有問題。
arkade get k0s |
Microk8s
MicroK8s 是 Ubuntu 背後的公司 Canonical 的 Kubernetes 發行版。你已經看到了這一點;它只能使用snap. 它帶有大量附加元件,如 Fluentd、Grafana 和 Prometheus。
如果您使用的是 Ubuntu 或其衍生產品snap,那麼使用 MicroK8s 會感到賓至如歸。
sudo snap install microk8s --classic |
在 Docker 內部執行 Docker(有人開始?)是引導 Kubernetes 的一種流行方式。Docker 的隔離特性使得在單臺機器上執行多節點叢集變得輕而易舉,並且還確保執行的例項不會影響機器本身。
minikube
儘管執行在 Docker 和類似的容器技術之上,但minikube 的執行方式非常靈活,並支援多種虛擬化驅動程式,使其能夠適應不同的計算環境。其中包括 KVM2、Virtualbox、Podman、Hyperkit、Hyper-V 等等。
arkade get minikube |
Docker 中的KinD Kubernetes (KinD) 類似於 minikube,但它不會生成 VM 來執行叢集,並且只能與 Docker 一起使用。在大多數情況下,KinD 的花裡胡哨最少,並提供直觀的開發人員體驗,可以立即開始使用 Kubernetes。
arkade get kind |
k3d
k3d 基本上是在 Docker 內部執行 k3s。與在本地機器上使用 k3s 相比,它提供了一個即時的好處,即多節點叢集。在 Docker 內部執行,我們可以輕鬆生成 k3s 節點的多個例項。
arkade get k3d |
結論
無論您選擇單個二進位制包還是 DinD 方法,Kubernetes 都非常易於訪問。對於新學習者來說,入門門檻低,反饋迴圈是即時的。
我希望本文對決定使用哪種工具來執行本地 Kubernetes 例項有所幫助。
相關文章
- 在本地執行 LLMs 的 6 種方法
- 在本地執行Kubernetes的3種主流方式
- 怎樣在 Kubernetes 上執行 PostgreSQLSQL
- 在kubernetes上執行WASM負載ASM負載
- 在Kubernetes上執行SAP UI5應用(上)UI
- 伺服器上的程式碼怎麼可以在本地測試執行Debug伺服器
- ClusterShell:一個在叢集節點上並行執行命令的好工具並行
- 一鍵在本地搭建執行Istio 1.0的分散式Kubernetes叢集分散式
- 在Linux機器上安裝執行Oracle(三)(轉)LinuxOracle
- 在Linux機器上安裝執行Oracle(二)(轉)LinuxOracle
- 在單機上執行julia並行加速的例子並行
- 4個用於在雲原生環境中執行虛擬機器的開源工具虛擬機開源工具
- 【伺服器】本地執行成功,但伺服器上執行卻顯示錯誤500伺服器
- JS在瀏覽器中的執行機制JS瀏覽器
- 在生產中執行kubernetes上的Istio
- 盤點6個Kubernetes監視工具
- Google為Wallet漏洞辯護:本就不應在root後的機器上執行Go
- PlayOnMac ,一款可以在mac上執行Windows程式的工具MacWindows
- 在NuoDB上執行AsteriskAST
- 在window上執行bash
- 在android上執行的數學工具軟體Maxima On AndroidAndroid
- onethink做了一個網站後,在本地可以正常執行,但是把它放到伺服器上就不正常了網站伺服器
- 透明的閘道器:在Linux上執行IPchains(轉)LinuxAI
- 膝上型電腦上的聊天機器人: 在英特爾 Meteor Lake 上執行 Phi-2機器人
- 怎麼從github上下載一個vue專案在本地執行GithubVue
- 在一臺電腦上執行兩個或多個tomcatTomcat
- 搭建一個本地 Laravel 執行環境Laravel
- 如何在你的Linux機器上安裝執行OracleLinuxOracle
- 如何用JMX連線本地JVM上執行的Java程式JVMJava
- 理一下docker在各平臺上的執行機制Docker
- 在本地运行 LLMs 的 6 种方法
- 一臺windows主機上執行2個tomcatWindowsTomcat
- wine-在mac上執行exe執行檔案Mac
- 在 Mac 上執行 Windows 應用程式,只需一個CrossOver!MacWindowsROS
- 用JMX怎樣連線本地JVM上執行的Java程式JVMJava
- 在 Ruby 中執行 Shell 命令的 6 種方法
- 專案執行落地的6個步驟
- Finalshell 連線本地虛擬機器上的 ManjaroLinux虛擬機JARLinux