kind
kind5 is a tool for running local Kubernetes clusters using Docker container nodes
.
kind was primarily designed for testing Kubernetes itself, but may be used for local development or CI.
Follow these instructions to prepare a kind cluster for Istio installation.
Prerequisites
- Please use the latest Go version.
- To use kind, you will also need to install docker6.
- Install the latest version of kind7.
- Increase Docker’s memory limit8.
Installation steps
Create a cluster with the following command:
--name
is used to assign a specific name to the cluster. By default, the cluster will be given the name “kind”.To see the list of kind clusters, use the following command:
To list the local Kubernetes contexts, use the following command.
If you run multiple clusters, you need to choose which cluster
kubectl
talks to. You can set a default cluster forkubectl
by setting the current context in the Kubernetes kubeconfig9 file. Additionally you can run following command to set the current context forkubectl
.Once you are done setting up a kind cluster, you can proceed to install Istio10 on it.
When you are done experimenting and you want to delete the existing cluster, use the following command:
Setup LoadBalancer for kind
kind does not have any built-in way to provide IP addresses to your Loadbalancer
service types, to ensure IP address assignments to Gateway
Services please consult this guide11 for more information.
Setup Dashboard UI for kind
kind does not have a built-in Dashboard UI like minikube. But you can still setup Dashboard, a web-based Kubernetes UI, to view your cluster. Follow these instructions to set up Dashboard for kind.
To deploy Dashboard, run the following command:
Verify that Dashboard is deployed and running.
Create a
ServiceAccount
andClusterRoleBinding
to provide admin access to the newly created cluster.To log in to your Dashboard, you need a Bearer Token. Use the following command to store the token in a variable.
Display the token using the
echo
command and copy it to use for logging in to your Dashboard.You can access your Dashboard using the kubectl command-line tool by running the following command:
Click Kubernetes Dashboard12 to view your deployments and services.