My cluster is made of a mix of arm64 and x86_64 nodes:
The test cluster is created with lxd
See groups_var.
Secrets encrypted with Ansible Vault. Password stored at ~/.vault_pass.txt
as comfigured at ansible.cfg. This is the only password that needs to be remembered. All other passwords are derived from this.
If a password needs to be changed use the command ansible-vault encrypt_string
from this folder - it will ask to enter the content to string and end with ctrd-d.
Install all required galaxies and roles with ansible-galaxy install -r requirements.yml
- Create nodes
ansible-playbook -i hosts-production proxmox_install.yaml
- Prepare nodes
ansible-playbook -i hosts-production hw_setup.yaml
- Install K3S cluster
ansible-playbook -i hosts-production k3s_install.yaml
- Install flux2
ansible-playbook -i hosts-production flux_install.yaml
ansible-playbook -i hosts-production hw_update.yaml
This should not be needed since there is GitHub workflow to do this automatically via PR
- Update
flux install --export>clusters/staging/flux-system/gotk-components.yaml
- Uninstall flux2
flux uninstall
- Uninstall k3s (TBD)
ansible-playbook -i hosts-production k3s_remove.yaml
- Delete VMs
ansible-playbook -i hosts-production proxmox_remove.yaml
- lxd
- microk8s