更多深入的安装等信息请参见我们的文档。
kind 是一个使用 Docker 容器 "nodes" 运行本地 Kubernetes 集群的工具。
kind 主要是为测试 Kubernetes 本身而设计的,但也可以用于本地开发或 CI。
如果你有 go(1.11+)且安装了 docker,那么运行 GO111MODULE="on" go get sigs.k8s.io/kind@v0.9.0 && kind create cluster 就可以了!
kind 由以下部分组成:
- 实现 集群创建、映像构建 等的 Go 包。
- 基于这些包构建的命令行接口(
kind
) - 为运行 systemd、Kubernetes 等编写的 Docker 映像。
kubetest
集成也建立在这些包上(WIP)。
kind 用 kubeadm 引导每个"node"。更多细节请参见设计文档。
注意:kind 仍在开发中,请参阅 1.0 路线图。
安装和使用
你可以用 GO111MODULE="on" go get sigs.k8s.io/kind@v0.9.0 来安装 kind。
注意:请使用最新的 go 进行安装,最好是 go 1.13 或更高版本。
注意:go get 不应该从启用了 go [modules] 的项目目录中运行,因为在启用了 modules 的项目中 go get 会更新依赖关系/表现不同。例如,先试试 cd $HOME。
这将会把 kind 放在 $(go env GOPATH)/bin 中。如果你在安装后遇到 kind: command not found 的错误,那么你可能需要如这里所示将该目录添加到你的 $PATH 中,或者通过克隆 repo 并从仓库中运行 make build 来进行手动安装。
在没有安装 go 的情况下,kind 可以使用 docker 使用 make build 进行可复制的构建。
稳定的二进制文件也可以在发布页面上找到。一般来说,特别是在 CI 使用时,推荐使用稳定版。要安装,请从 "Assets" 中下载适合您平台的二进制文件,并将其放入您的 $PATH 中。
在 Mac 和 Linux 上
curl -Lo ./kind "https://kind.sigs.k8s.io/dl/v0.9.0/kind-$(uname)-amd64" chmod +x ./kind mv ./kind /some-dir-in-your-PATH/kind </p> <p>在 Mac 上通过 Homebrew: </p> <pre>brew install kind
在 Windows 上:
curl.exe -Lo kind-windows-amd64.exe https://kind.sigs.k8s.io/dl/v0.9.0/kind-windows-amd64 Move-Item .\kind-windows-amd64.exe c:\some-dir-in-your-PATH\kind.exe # OR via Chocolatey (https://chocolatey.org/packages/kind) choco install kind
要使用 kind,你需要安装 docker。
一旦你运行了docker,你就可以用以下方法创建一个集群。
kind create cluster
要删除您的集群,请使用
kind delete cluster
要从 Kubernetes 源代码创建一个集群。
确保 Kubernetes 被克隆在 $(go env GOPATH)/src/k8s.io/kubernetes 中。
构建一个节点映像并创建一个集群。
kind build node-image kind create cluster --image kindest/node:latest
多节点集群和其他高级功能可以用配置文件来配置,更多的用法请看文档或运行 kind [command] --help。
社区
请为 BUG、功能请求和其他问题提供帮助!
本项目的维护者可以通过以下方式联系。
- Kubernetes Slack 中的 #kind channel
- 对该 repo 提出问题
- The Kubernetes SIG-Testing 邮件列表
目前的维护者是 @BenTheElder 和 @munnerz -- 如果您有任何问题,请随时联系我们。
我们非常欢迎拉取请求!
如果你正在计划一个新功能,请先提交一个问题来讨论。
如果你不知道从哪里开始,请查看问题跟踪器中的帮助需求问题,或者随时联系我们进行讨论。 微笑脸
另请参阅:我们自己的贡献者指南和 Kubernetes 社区页面。
为什么选择 kind?
- kind 支持多节点(包括 HA)集群。
- kind 支持从源代码构建 Kubernetes 的发布版构建
- 支持make/bash/docker或bazel,以及预先发布的构建。
- 支持Linux、MacOS和Windows
- kind 是一个经过 CNCF 认证的符合 Kubernetes 安装程序。
行为守则
参与 Kubernetes 社区受 Kubernetes 行为准则的约束。
(The first version translated by vz on 2020.10.10)