Merge pull request #20109 from wxy/20201103-4-ways-to-run-Kubernetes-locally

PRF&PUB:20201103 4 ways to run Kubernetes locally
This commit is contained in:
Xingyu.Wang 2020-11-16 13:28:13 +08:00 committed by GitHub
commit a76ad50aba
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,46 +1,41 @@
[#]: collector: (lujun9972) [#]: collector: (lujun9972)
[#]: translator: (geekpi) [#]: translator: (geekpi)
[#]: reviewer: ( ) [#]: reviewer: (wxy)
[#]: publisher: ( ) [#]: publisher: (wxy)
[#]: url: ( ) [#]: url: (https://linux.cn/article-12825-1.html)
[#]: subject: (4 ways to run Kubernetes locally) [#]: subject: (4 ways to run Kubernetes locally)
[#]: via: (https://opensource.com/article/20/11/run-kubernetes-locally) [#]: via: (https://opensource.com/article/20/11/run-kubernetes-locally)
[#]: author: (Bryant Son https://opensource.com/users/brson) [#]: author: (Bryant Son https://opensource.com/users/brson)
本地运行 Kubernetes 的 4 种方法 本地运行 Kubernetes 的 4 种方法
====== ======
设置一个本地开发环境,或者直接用这些工具尝试容器编排平台。
![Business woman on laptop sitting in front of window][1] > 设置一个本地开发环境,或者直接用这些工具尝试容器编排平台。
![](https://img.linux.net.cn/data/attachment/album/202011/16/132219hn9q9dszudbdtn35.jpg)
[Kubernetes][2] 是一个开源的容器编排平台。它由 Google 开发,为自动化部署、扩展和管理容器化应用提供了一个开源系统。虽然大多数人在云环境中运行 Kubernetes但在本地运行 Kubernetes 集群不仅是可能的,它还至少有两个好处: [Kubernetes][2] 是一个开源的容器编排平台。它由 Google 开发,为自动化部署、扩展和管理容器化应用提供了一个开源系统。虽然大多数人在云环境中运行 Kubernetes但在本地运行 Kubernetes 集群不仅是可能的,它还至少有两个好处:
* 在决定使用 Kubernetes 作为主要平台部署应用之前,你可以快速试用它。 * 在决定使用 Kubernetes 作为主要平台部署应用之前,你可以快速试用它。
* 在将任何东西推送到公共云之前,你可以将其设置为本地开发环境,从而实现开发环境和生产环境之间的分离。 * 在将任何东西推送到公共云之前,你可以将其设置为本地开发环境,从而实现开发环境和生产环境之间的分离。
无论你的情况如何,将本地 Kubernetes 环境设置为你的开发环境都是推荐的选择,因为这种设置可以创建一个安全而敏捷的应用部署流程。 无论你的情况如何,将本地 Kubernetes 环境设置为你的开发环境都是推荐的选择,因为这种设置可以创建一个安全而敏捷的应用部署流程。
幸运的是,有多个平台可以让你尝试在本地运行 Kubernetes它们都是开源的并且都是 [Apache 2.0][3] 许可。 幸运的是,有多个平台可以让你尝试在本地运行 Kubernetes它们都是开源的并且都是 [Apache 2.0][3] 许可。
* [Minikube][4] 的主要目标是成为本地 Kubernetes 应用开发的最佳工具,并支持所有适合的 Kubernetes 特性。 * [Minikube][4] 的主要目标是成为本地 Kubernetes 应用开发的最佳工具,并支持所有适合的 Kubernetes 特性。
* [kind][5] 使用 Docker 容器“节点”运行本地 Kubernetes 集群。 * [kind][5] 使用 Docker 容器“节点”运行本地 Kubernetes 集群。
* [CodeReady Containers][6] CRC 管理为测试和开发目的优化的本地 OpenShift 4.x 集群。 * [CodeReady Containers][6]CRC用来管理为测试和开发目的优化的本地 OpenShift 4.x 集群。
* [Minishift][7] 通过在虚拟机 VM 内运行单节点 OpenShift 集群,帮助你在本地运行 OpenShift 3.x 集群。 * [Minishift][7] 通过在虚拟机 VM 内运行单节点的 OpenShift 集群,帮助你在本地运行 OpenShift 3.x 集群。
### Minikube ### Minikube
![Minikube][8] ![Minikube][8]
(Bryant Son, [CC BY-SA 4.0][9]) [Minikube][10] 是在本地计算机上运行 Kubernetes 环境的最知名、最流行的选择。无论你使用什么操作系统,[Minikube 的文档][11]都会为你提供一个简单的[安装][12]指南。一般来说,安装 Minikube 只需运行两条命令:
[Minikube][10] 是在本地计算机上运行 Kubernetes 环境的最知名和最流行的选择。无论你使用什么操作系统,[Minikube 的文档][11]都会为你提供一个简单的[安装][12]指南。一般来说,安装 Minikube 只需运行两条命令:
``` ```
$ curl -LO <https://storage.googleapis.com/minikube/releases/latest/minikube-PLATFORM-amd64> $ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-PLATFORM-amd64
$ sudo install minikube-PLATFORM-amd64 /usr/local/bin/minikube $ sudo install minikube-PLATFORM-amd64 /usr/local/bin/minikube
``` ```
@ -49,40 +44,32 @@ Minikube 可在Linux、macOS 或 Windows 上快速设置本地 Kubernetes 集群
* 支持最新的 Kubernetes 版本(包括 6 个以前的小版本) * 支持最新的 Kubernetes 版本(包括 6 个以前的小版本)
* 跨平台Linux、macOS、Windows * 跨平台Linux、macOS、Windows
* 以虚拟机、容器或裸机的形式部署 * 以虚拟机、容器或裸机的形式部署
* 多个容器运行时 CRI-O、containerd、Docker * 支持多个容器运行时CRI-O、containerd、Docker
* 用于快速推送镜像的 Docker API 端点 * 用于快速推送镜像的 Docker API 端点
* 负载均衡器、文件系统挂载、FeatureGates 和其他高级功能 * 负载均衡器、文件系统挂载、FeatureGates 和其他高级功能
* 用于轻松安装 Kubernetes 应用的附加组件 * 用于轻松安装 Kubernetes 应用的附加组件
因为 Minikube 是一个开源项目,你可以对它的[源代码][4]做贡献。 因为 Minikube 是一个开源项目,你可以对它的[源代码][4]做贡献。
### kind ### kind
![kind][13] ![kind][13]
(Bryant Son, [CC BY-SA 4.0][9]) [kind][14] 的开发者将其描述为“一个使用 Docker 容器‘节点’运行本地 Kubernetes 集群的工具”。它是为测试 Kubernetes 而设计的,但也可能用于本地开发或持续集成。
[kind][14] 的开发者将其描述为“一个使用 Docker 容器“节点”运行本地 Kubernetes 集群的工具”。它是为测试 Kubernetes 而设计的,但也可能用于本地开发或持续集成。
kind 支持: kind 支持:
* 多节点(包括高可用性)集群 * 多节点(包括高可用性)集群
* 从源码构建 Kubernetes 版本 * 从源码构建 Kubernetes 版本
* Make/Bash/Docker 或 Bazel以及预发布构建 * Make/Bash/Docker 或 Bazel以及预发布构建
* Linux、MacOS 和 Windows * Linux、MacOS 和 Windows
此外kind 是一个经过云原生计算基金会CNCF认证的 Kubernetes 合规安装程序。因为它是开源的,你可以在它的 GitHub 仓库中找到 kind 的[源码][5]。 此外kind 是一个经过云原生计算基金会CNCF认证的 Kubernetes 合规安装程序。因为它是开源的,你可以在它的 GitHub 仓库中找到 kind 的[源码][5]。
### CodeReady Container CRC ### CodeReady Container CRC
![CodeReady Container][15] ![CodeReady Container][15]
(Bryant Son, [CC BY-SA 4.0][9])
如果你想在本地尝试最新版本的 OpenShift可以尝试红帽的 [CodeReady Containers][16] CRC。CRC 将一个最小的 OpenShift 4.x 集群带到你的本地计算机上为开发和测试目的提供一个最小的环境。CRC 主要针对开发者的桌面使用。 如果你想在本地尝试最新版本的 OpenShift可以尝试红帽的 [CodeReady Containers][16] CRC。CRC 将一个最小的 OpenShift 4.x 集群带到你的本地计算机上为开发和测试目的提供一个最小的环境。CRC 主要针对开发者的桌面使用。
你可以在 GitHub 上找到 CodeReady Container 的[源码][6],也是在 Apache 2.0 许可下提供的。 你可以在 GitHub 上找到 CodeReady Container 的[源码][6],也是在 Apache 2.0 许可下提供的。
@ -91,8 +78,6 @@ kind 支持:
![Minishift][17] ![Minishift][17]
(Bryant Son, [CC BY-SA 4.0][9])
[Minishift][7] 项目帮助你在本地用 [OKD][19] 在虚拟机内的单节点 OpenShift 集群[运行一个版本的 OpenShift][18]。你可以用它来[尝试 OpenShift][20],或者在你的本地主机上为云开发。 [Minishift][7] 项目帮助你在本地用 [OKD][19] 在虚拟机内的单节点 OpenShift 集群[运行一个版本的 OpenShift][18]。你可以用它来[尝试 OpenShift][20],或者在你的本地主机上为云开发。
和这个列表中的其他工具一样Minishift 也是开源的,你可以在 GitHub 上访问它的[源码][7]。 和这个列表中的其他工具一样Minishift 也是开源的,你可以在 GitHub 上访问它的[源码][7]。
@ -108,7 +93,7 @@ via: https://opensource.com/article/20/11/run-kubernetes-locally
作者:[Bryant Son][a] 作者:[Bryant Son][a]
选题:[lujun9972][b] 选题:[lujun9972][b]
译者:[geekpi](https://github.com/geekpi) 译者:[geekpi](https://github.com/geekpi)
校对:[校对者ID](https://github.com/校对者ID) 校对:[wxy](https://github.com/wxy)
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出