本地運行 Kubernetes 的 4 種方法
Kubernetes 是一個開源的容器編排平台。它由 Google 開發,為自動化部署、擴展和管理容器化應用提供了一個開源系統。雖然大多數人在雲環境中運行 Kubernetes,但在本地運行 Kubernetes 集群不僅是可能的,它還至少有兩個好處:
- 在決定使用 Kubernetes 作為主要平台部署應用之前,你可以快速試用它。
- 在將任何東西推送到公共雲之前,你可以將其設置為本地開發環境,從而實現開發環境和生產環境之間的分離。
無論你的情況如何,將本地 Kubernetes 環境設置為你的開發環境都是推薦的選擇,因為這種設置可以創建一個安全而敏捷的應用部署流程。
幸運的是,有多個平台可以讓你嘗試在本地運行 Kubernetes,它們都是開源的,並且都是 Apache 2.0 許可。
- Minikube 的主要目標是成為本地 Kubernetes 應用開發的最佳工具,並支持所有適合的 Kubernetes 特性。
- kind 使用 Docker 容器「節點」運行本地 Kubernetes 集群。
- CodeReady Containers(CRC)用來管理為測試和開發目的優化的本地 OpenShift 4.x 集群。
- Minishift 通過在虛擬機 (VM) 內運行單節點的 OpenShift 集群,幫助你在本地運行 OpenShift 3.x 集群。
Minikube
![Minikube](/data/attachment/album/202011/16/132337nukudj3ujbp23pbm.jpg "Minikube")
Minikube 是在本地計算機上運行 Kubernetes 環境的最知名、最流行的選擇。無論你使用什麼操作系統,Minikube 的文檔都會為你提供一個簡單的安裝指南。一般來說,安裝 Minikube 只需運行兩條命令:
$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-PLATFORM-amd64
$ sudo install minikube-PLATFORM-amd64 /usr/local/bin/minikube
Minikube 可在 Linux、macOS 或 Windows 上快速設置本地 Kubernetes 集群,其功能如下:
- 支持最新的 Kubernetes 版本(包括 6 個以前的小版本)
- 跨平台(Linux、macOS、Windows)
- 以虛擬機、容器或裸機的形式部署
- 支持多個容器運行時(CRI-O、containerd、Docker)
- 用於快速推送鏡像的 Docker API 端點
- 負載均衡器、文件系統掛載、FeatureGates 和其他高級功能
- 用於輕鬆安裝 Kubernetes 應用的附加組件
因為 Minikube 是一個開源項目,你可以對它的源代碼做貢獻。
kind
![kind](/data/attachment/album/202011/16/132341ii5b5z2wp2pvrriu.jpg "kind")
kind 的開發者將其描述為「一個使用 Docker 容器『節點』運行本地 Kubernetes 集群的工具」。它是為測試 Kubernetes 而設計的,但也可能用於本地開發或持續集成。
kind 支持:
- 多節點(包括高可用性)集群
- 從源碼構建 Kubernetes 版本
- Make/Bash/Docker 或 Bazel,以及預發布構建
- Linux、MacOS 和 Windows
此外,kind 是一個經過雲原生計算基金會(CNCF)認證的 Kubernetes 合規安裝程序。因為它是開源的,你可以在它的 GitHub 倉庫中找到 kind 的源碼。
CodeReady Container (CRC)
![CodeReady Container](/data/attachment/album/202011/16/132349ah3dgsad3huadz4k.jpg "CodeReady Container")
如果你想在本地嘗試最新版本的 OpenShift,可以嘗試紅帽的 CodeReady Containers (CRC)。CRC 將一個最小的 OpenShift 4.x 集群帶到你的本地計算機上,為開發和測試目的提供一個最小的環境。CRC 主要針對開發者的桌面使用。
你可以在 GitHub 上找到 CodeReady Container 的源碼,也是在 Apache 2.0 許可下提供的。
Minishift
![Minishift](/data/attachment/album/202011/16/132353ya6o3aajvdanvdno.jpg "Minishift")
Minishift 項目幫助你在本地用 OKD 在虛擬機內的單節點 OpenShift 集群運行一個版本的 OpenShift。你可以用它來嘗試 OpenShift,或者在你的本地主機上為雲開發。
和這個列表中的其他工具一樣,Minishift 也是開源的,你可以在 GitHub 上訪問它的源碼。
為人服務的 Kubernetes
正如你所看到的,有幾種方法可以在本地環境中試用 Kubernetes。我有遺漏么?歡迎留言提問或提出建議。
via: https://opensource.com/article/20/11/run-kubernetes-locally
作者:Bryant Son 選題:lujun9972 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive