Installation
You could of course do this with Ansible or any other orchestration tool. I didn't.
newgrp microk8s
sudo snap install microk8s --classic --channel=1.26/stable
echo alias mkctl=\"microk8s kubectl\" > ~/.bash_aliases
sudo usermod -a -G microk8s ubuntu
sudo chown -f -R ubuntu ~/.kube
# Dump the config to access the cluster remotely
microk8s config
Once you have it installed you may want to copy the output of the config dump to your local machine to manage the cluster from there. On a mac the location would be ~/.kube/config
.
After the install you have access to these commands:
- sudo microk8s stop
- sudo microk8s start
- sudo microk8s status
- sudo microk8s enable <plugin>
- sudo microk8s disable <plugin>
Enable HA for the control plane
sudo microk8s enable ha-cluster
Once this is done, you should see something similar to the following in the output of sudo microk8s status
microk8s is running
high-availability: yes
datastore master nodes: 192.168.1.100:19001 192.168.1.101:19001 192.168.1.102:19001
datastore standby nodes: none
If all went well then congrats! You have a basic running k8s cluster that can be accessed from a computer on your local network.