但它与minikube有很大区别 kind

kind是另一个Kubernetes SIG项目,但它与minikube有很大区别 。它可以将集群迁移到Docker容器中,这与生成虚拟机相比,启动速度大大加快 。简而言之,kind是一个使用Docker容器节点运行本地Kubernetes集群的工具(CLI) 。


接下来,我们开始吧!


前期准备

【但它与minikube有很大区别 kind】想要顺利完成本教程,你需要在本地系统中准备好以下程序:


  • Go
  • 需要运行的Docker服务
安 装

使用以下命令下载和安装kind二进制文件:
GO111MODULE=”on” go get sigs.k8s.io/kind@v0.8.1

确保kind二进制文件是存在的> kind versionkind v0.8.1 go1.14.2 darwin/amd64现在,我们应该能够使用kind CLI来启动一个Kubernetes集群:
Usage:  kind [command]Available Commands:  build       Build one of [node-image]  completion  Output shell completion code for the specified shell  create      Creates one of [cluster]  delete      Deletes one of [cluster]  export      Exports one of [kubeconfig, logs]  get         Gets one of [clusters, nodes, kubeconfig]  help        Help about any command  load        Loads images into nodes  version     Prints the kind CLI version在本文中,我们将聚焦于create、get和delete命令 。


创建一个集群

执行以下命令即可创建一个集群:
kind create cluster


> kind create clusterCreating cluster "kind" ... ? Ensuring node image (kindest/node:v1.18.2)  ? Preparing nodes  ? Writing configuration  ? Starting control-plane ? ? Installing CNI  ? Installing StorageClass Set kubectl context to "kind-kind"You can now use your cluster with:kubectl cluster-info --context kind-kind Have a nice day!将通过拉取最新的Kubernetes节点(v 1.18.2)来创建一个Kubernetes集群 。刚刚我们已经创建了一个v 1.18.2的Kubernetes集群 。


在创建集群的过程中如果我们没有--name参数,那么集群名称将会默认设置为kind 。


创建特定版本的K8S集群

我们可以传--image参数来部署一个特定版本的Kubernetes集群 。


使用的命令为:
kind create cluster --image kindest/node:v1.15.6
> kind create cluster --image kindest/node:v1.15.6 --name kind-1.15.6Creating cluster "kind" ... ? Ensuring node image (kindest/node:v1.15.6)  ? Preparing nodes  ? Writing configuration  ? Starting control-plane ? ? Installing CNI  ? Installing StorageClass Set kubectl context to "kind-kind"You can now use your cluster with:kubectl cluster-info --context kind-kind Have a nice day!列出部署的集群

输入命令:kind get clusters

> kind get clusterskindkind-1.15.6

秒懂生活扩展阅读