Skip to content

Ansible script to provision k8s cluster running on Raspberry PI cluster

License

Notifications You must be signed in to change notification settings

ankur22/k8s-ansible

Folders and files

NameName
Last commit message
Last commit date
Jul 4, 2020
Jul 2, 2020
Jul 2, 2020
Jul 4, 2020
Jul 2, 2020
Jul 2, 2020
Jul 4, 2020
Jul 4, 2020
Jul 4, 2020
Jul 2, 2020
Jul 2, 2020
Jul 2, 2020

Repository files navigation

K8s-Ansible

This is used to provision the Raspberry Pi nodes in the single cluster.

Credentials File

You will need to create an encrypted vault file which contains:

cluster_username: username
cluster_password: password
cluster_sudo_password: sudo_password

Install microk8s and setup cluster

ansible-playbook -i all-hosts k8s.yaml --vault-password-file ansible-vault-password --extra-vars '@vault.yaml'

To run kubectl on a remote machine against the cluster, retrieve the config from the master node:

microk8s config

You will need to run the following to get the token to be able to access the dashboard:

token=$(microk8s kubectl -n kube-system get secret | grep default-token | cut -d " " -f1)
microk8s kubectl -n kube-system describe secret $token

Reset all Nodes in the Cluster

ansible-playbook -i all-hosts reset.yaml --vault-password-file ansible-vault-password --extra-vars '@vault.yaml'

Add SSH Key Certs to known_hosts

ansible-playbook -i all-hosts ssh_cert.yaml --vault-password-file ansible-vault-password --extra-vars '@vault.yaml'

Poweroff all hosts

ansible-playbook -i all-hosts poweroff.yaml --vault-password-file ansible-vault-password --extra-vars '@vault.yaml'

About

Ansible script to provision k8s cluster running on Raspberry PI cluster

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published