kind
- 请使用最新的 Go 版本,最好是 Go 1.13 或更新版本。
- 为了使用 kind,还需要。
- 安装最新版本的 kind。
- 增加 Docker 的
使用下列命令创建一个集群:
--name
用于为集群指定一个名字。默认情况下,该集群将会名为kind
。您可以使用下面的命令来创建一个关联外部负载均衡的
kind
集群。 否则您需要使用服务的 node 端口访问网关或其他 k8s 负载均衡类型的服务。因为kind
默认不提供外部负载均衡。$ @samples/kind-lb/setupkind.sh@ --cluster-name istio-testing
使用下列命令查看 kind 集群列表:
$ kind get clusters
-
$ kubectl config get-contexts
* kind-istio-testing kind-istio-testing kind-istio-testing
minikube minikube minikube
kind
会作为前缀加到环境和集群名上,如:kind-istio-testing
如果运行了多套集群,还需要选择
kubectl
将要操作哪一套。 可以在 Kubernetes kubeconfig 文件中设置当前环境来指定一个默认集群。 另外,还可以运行下列命令来为kubectl
设置当前环境:kind 集群设置完成后,就可以开始在它上面 了。
当体验过后,想删除集群时,可以使用以下命令:
$ kind delete cluster --name istio-testing
Deleting cluster "istio-testing" ...
kind 不像 minikube 一样内置了操作界面。但仍然可以设置一个基于网页的 Kubernetes 界面,以查看集群。 参考以下说明来为 kind 设置操作界面。
-
创建
ClusterRoleBinding
以提供对新创建的集群的管理权限访问。需要用 Bearer Token 来登录到操作界面。使用以下命令将 token 保存到变量。
$ token=$(kubectl get secrets -o jsonpath="{.items[?(@.metadata.annotations['kubernetes\.io/service-account\.name']=='default')].data.token}"|base64 -d)
使用
echo
命令显示 token 并复制它,以用于登录到操作界面。$ echo $token
使用 kubectl 命令行工具运行以下命令以访问操作界面:
Starting to serve on 127.0.0.1:8001
最好将 token 保存起来,不然每次登录到操作界面需要 token 时都得重新运行上述步骤 4.