software-infrastructure/bmcluster.yaml
2024-10-10 11:37:23 -04:00

76 lines
1.9 KiB
YAML

---
# Master playbook for eom.dev
- name: Initialize servers
hosts: servers
become: true
roles:
- role: ericomeehan.debian
vars:
is_new_host: true
- role: ericomeehan.ericomeehan
- role: ericomeehan.nvidia_driver
vars:
nvidia_driver_debian_install_tesla_driver: true
when:
- nvidia_driver_needed == true
- role: ericomeehan.qemu-network
- name: Wait for virtual machines to boot
- name: Copy SSH ID to virtual machines
- name: Initialize virtual machines
hosts: vms
become: true
roles:
- role: ericomeehan.debian
vars:
is_new_host: true
- role: ericomeehan.ericomeehan
- name: Initialize load balancers
hosts: load_balancers
become: true
- name: Initialize Kubernetes clusters
hosts: clusters
become: true
pre_tasks:
- name: Update sysctl configuration to enable IPv4 packet forwarding
lineinfile:
path: /etc/sysctl.conf
line: 'net.ipv4.ip_forward = 1'
state: present
- name: Update sysctl configuration to enable IPv6 packet forwarding
lineinfile:
path: /etc/sysctl.conf
line: 'net.ipv6.conf.all.forwarding = 1'
state: present
- name: Reload sysctl configuration
command: sysctl --system
- name: Enable br_netfilter kernel module
command: modprobe br_netfilter
- name: Add the module to a configuration file for persistence
lineinfile:
path: /etc/modules-load.d/modules.conf
line: "br_netfilter"
- name: Install kubernetes library
apt:
name: python3-kubernetes
state: present
roles:
- role: geerlingguy.containerd
- role: geerlingguy.kubernetes
- role: geerlingguy.helm
when:
- kubernetes_role == 'control-plane'
- name: Deploy services
hosts: alpha-control-plane
vars_files:
- vars/secrets.yaml
become: true
roles:
- role: ericomeehan.eom
- role: ericomeehan.gondwana