I previously wrote about the use of “vctl” tool with VMware fusion and, I recently worked with VMware Fusion and Kubernetes Kind integration to provision a Kind cluster to couple to testings on my own. I felt it was quite easy and thought to publish an article about the VMware Fusion and Kind integration.
When running a container with vctl, it creates a Virtual Machine with a small footprint (lightweight) called a CRX VM. By default, it creates and starts a CRX VM at the creation of the container and shuts down and removed when stopping the container. By default vctl assigns 2GB of RAM for the CRX container node and physical machine should have a 2GB of free memory available. If you are running a two nodes cluster 4GB physical memory should be available.
To start with, you can start the container runtime with the below command and it will download the kubectl command-line utility, CRX VM, and Kind binary for the operating system.
vctl system start

It will complete the downloading and start the container runtime for the containers.

Read More:
- Tap Kubernetes Cluster Communication With Linkerd Service Mesh
- What Is VMware Test Drive And What Are The Benefits?
- Deploy Applications Easily With Kubeapps On Kubernetes
- AWS Systems Manager (SSM) Hybrid Activations With On Premises Virtual Machines
- VMware Developer Center Code Capture With vCenter Server
All the docker commands now alias with the vctl and you can run the Kind cluster.
vctl kind

Now you can create the Kind cluster as below, my cluster name is tc-kind-cluster. You can provide any name as per your needs.
vctl create cluster --name [name_of_the_cluster]

You can see the cluster status specifying the context or you can set this context as the default context if you don’t want to specify it in all the commands.
kubectl cluster-info --context [name_of_the_context]

Standard kubectl commands will be available with the cluster and you and play around with it with your kubernetes knowledge.

You can check the available options with the kind command and if you have multiple clusters you can view them with the kind commands. Also you can build your own node image with kind.
kind get clusters

vctl commands are pretty much alike with the docker commands, only thing I noticed was system df command didn’t work.

Volumes can also be pruned similar to the standard docker commands.

Clusters can be deleted with the kind delete command
kind delete clusters --name [name_of_the_cluster]

You can also check and remove all the downloaded images
vctl images
vctl rmi -all

You can stop the container runtime and detach the volumes attached to the containers with the vctl command
vctl system stop

You can see the current resource utilization of the vctl system and delete the “.vctl” folder to save the space of your computer.

I think this is really great and super simple to use, I personally, really benefitted with this feature when deploying my test kubernetes clusters on my Mac.