mirror of
https://github.com/JamesTurland/JimsGarage.git
synced 2025-08-14 01:12:22 +00:00
Use one play for both roles since the targets are the same Fact gathering disabled because it's slow and not needed for anything in the roles
57 lines
1.6 KiB
YAML
57 lines
1.6 KiB
YAML
# 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
|