gopaddle lite - A lifetime free community edition of gopaddle is now available as an add-on to microk8s.
Pre-requisites
OS distribution: MacOS Monterey 12.6 or higher; MicroK8s version: 1.25 or higher;
System resource requirements: 4 vCPU (Intel Arch), 8 GB RAM, 50 GB Disk
'brew' tool must already be installed.
If not installed, install brew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
microk8s must already be installed and must be running.
If not installed, use the below step to install the same:
brew install ubuntu/microk8s/microk8s
microk8s install --channel 1.26Check and ensure that microk8s service is running:
microk8s status --wait-ready
Update the VM configuration to set the CPU & Mem allocation
Unload the multipass config
sudo launchctl unload /Library/LaunchDaemons/com.canonical.multipassd.plist
Edit the file
sudo vi /var/root/Library/Application\ Support/multipassd/multipassd-vm-instances.json
Set the num_cores": 4 and "mem_size": "8589934592". Final JSON file would look like this.
{
"microk8s-vm":{
"deleted":false,
"disk_space":"53687091200",
"extra_interfaces":[
],
"mac_addr":<mac-address>,
"mem_size":"8589934592",
"metadata":{
},
"mounts":[
],
"num_cores":4,
"ssh_username":"ubuntu",
"state":4
}
}Load the config
sudo launchctl load /Library/LaunchDaemons/com.canonical.multipassd.plist
Wait for the microk8s-vm to move to Running state
multipass info microk8s-vm
Wait for microk8s service to move to ready state
microk8s status --wait-ready
Steps to install gopaddle lite addon for microk8s
Enable microk8s community addon and enable gopaddle lite addon.
microk8s enable community
microk8s enable gopaddle-liteOptional parameters while enabling the addon.
microk8s enable gopaddle-lite [-i <IP Address>] [-v <gopaddle version>]
Basic Options:
--ip|-i : static IP address to assign to gopaddle endpoint. This can be a public or private IP address of the microk8s node
--version|-v : gopaddle lite helm chart version (default 4.2.5)If -i option is omitted, then the gopaddle endpoint is decided based on the node's private IP address. Please take a look at the 'gopaddle dashboard endpoint' section for more details.
Example:
microk8s enable gopaddle-lite -i 130.198.9.42 -v 4.2.5
Make a note of the gopaddle lite access endpoint from the above command. You can also obtain the endpoint by listing the node IPs in the cluster. Check the gopaddle dashboard endpoint section.
Wait for gopaddle services to move to running state
microk8s kubectl wait --for=condition=ready pod -l released-by=gopaddle -n gp-lite
If you see this error message
timed out waiting for the condition on pods
, you can execute the above command once again to wait for all the gopaddle services to move to running state.If you are running microk8s on a cloud based virtual machine, enable Firewall ports (if installing gopaddle lite on a cloud based VM)
The following TCP network ports have to be enabled/opened to use the gopaddle lite dashboard:
Ports 30000 to 30006: gopaddle internal use.
Port 32000: Service node port for Grafana dashboard on Kubernetes
Any node port assigned for an application deployed on microk8s
Access the gopaddle dashboard. Provide the user email and accept the end user license to start using the lite edition.
http://10.245.64.9:30003
gopaddle dashboard endpoint
An IP address is required to access the gopaddle lite end point. When not supplied from the command line, the default IP address is determined in the order mentioned below:
If the first node in microk8s cluster is configured with an External/Public IP address, this is chosen as the IP address for the access end point
Else, the Internal/Private IP address of the first node configured in microk8s cluster is used as the IP address for the access end point
Note: The node IP address configured in the microk8s cluster above can be determined using the 'get nodes' command as follows:
microk8s kubectl get nodes -o wide
NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME
microk8s-vm Ready <none> 41m v1.25.2 192.168.64.2 <none> Ubuntu 18.04.6 LTS 4.15.0-194-generic containerd://1.6.6
Steps to disable gopaddle addon for microk8s
Issue the below command to disable gopaddle addon for microk8s:
microk8s disable gopaddle-lite
Steps to update gopaddle addon for microk8s
At a later time, if you want to update gopaddle addon repo (that you previously added at the time of installation of gopaddle addon for microk8s), use the below command:
Update the repository
microk8s addons repo update gp-lite
This results in pulling any updates done to gopaddle addon repo. If it is already up-to-date, you will get the below output:
Updating repository gp-lite Already up to date.
If any new updates are pulled above, in order for this to take effect, you need to execute the following steps:
Disable gopaddle add-on
Steps to uninstall gopaddle addon for microk8s
Follow the below steps to uninstall gopaddle addon for microk8s:
Disable gopaddle addon for microk8s - see the section above
Delete all PVs created by gopaddle
After disabling gopaddle addon for microk8s, the persistent volumes used by gopaddle are still around. Use the below command to delete the persistent volumes created by gopaddle:
microk8s kubectl delete pv -l gp-install-pv=microk8s-hostpath-gp-retain
Delete the storage class
microk8s kubectl delete sc microk8s-hostpath-gp-retain
Remove the node label added by gopaddle
Usage:
microk8s kubectl label nodes microk8s-vm gp-install-node-
Remove the gopaddle addon repo in microk8s
microk8s addons repo remove gp-lite
Support Matrix for gp-lite
The support Matrix for gopaddle lite 4.2.4 is located at: http://help.gopaddle.io/en/articles/6227234-support-matrix-for-gopaddle-lite-4-2-3-community-edition
If you are looking for an advanced installation and configuration of gopaddle onpremise (Lite or Enterprise), take a look at the section below: