# Hello, thanks for using my playbook, hopefully you can help to improve it. # Things that need adding: (there are many more) # 1) Support different OS & architectures # 2) Support multiple CNIs # 3) Improve the wait logic # 4) Use kubernetes Ansible plugins more sensibly # 5) Optimise flow logic # 6) Clean up ############################################################### # MAKE SURE YOU CHANGE group_vars/all.yaml VARIABLES!!!!!!!!!!! ############################################################### # bootstraps first server and copies configs for others/agents - name: Prepare all nodes hosts: rke2 gather_facts: false # fact gathering is slow and not needed for any of our tasks become: true roles: - prepare-nodes - rke2-download # Creates RKE2 bootstrap manifests folder and copies kube-vip template over (configured with variables) - name: Deploy Kube VIP hosts: servers gather_facts: true roles: - kube-vip # bootstraps the first server, copies configs to nodes, saves token to use later - name: Prepare RKE2 on Servers and Agents hosts: servers,agents gather_facts: true roles: - rke2-prepare # Adds additional servers using the token from the previous task - name: Add additional RKE2 Servers hosts: servers gather_facts: true roles: - add-server # Adds agents to the cluster - name: Add additional RKE2 Agents hosts: agents gather_facts: true roles: - add-agent # Finish kube-vip, add metallb - name: Apply manifests after cluster is created hosts: servers gather_facts: true roles: - apply-manifests