feat: ansible checkpoint
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
plugin: community.general.incus
|
||||
strict: true
|
||||
remotes:
|
||||
- local:home-infrastructure
|
||||
- local:homelab
|
||||
groups:
|
||||
masters: "'master' in inventory_hostname"
|
||||
workers: "'worker' in inventory_hostname"
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
<service-group>
|
||||
<name replace-wildcards="yes">%h</name>
|
||||
<service>
|
||||
<type>_ssh._tcp</type>
|
||||
<port>22</port>
|
||||
</service>
|
||||
</service-group>
|
||||
@@ -0,0 +1,4 @@
|
||||
- name: Restart Avahi Daemon
|
||||
ansible.builtin.service:
|
||||
name: avahi-daemon
|
||||
state: restarted
|
||||
@@ -0,0 +1,19 @@
|
||||
- name: Install Avahi Daemon
|
||||
ansible.builtin.apt:
|
||||
pkg:
|
||||
- avahi-daemon
|
||||
state: present
|
||||
|
||||
- name: Enable Avahi Daemon Service
|
||||
ansible.builtin.service:
|
||||
name: avahi-daemon
|
||||
state: started
|
||||
enabled: true
|
||||
|
||||
- name: Copy Avahi SSH service configuration
|
||||
ansible.builtin.copy:
|
||||
src: ssh.service
|
||||
dest: /etc/avahi/services/ssh.service
|
||||
mode: "644"
|
||||
notify:
|
||||
- Restart Avahi Daemon
|
||||
@@ -1,2 +1,8 @@
|
||||
- name: Install required packages
|
||||
ansible.builtin.import_tasks: packages.yaml
|
||||
|
||||
- name: Setup networking configuration
|
||||
ansible.builtin.import_tasks: network.yaml
|
||||
|
||||
- name: Setup Avahi Daemon
|
||||
ansible.builtin.import_tasks: avahi.yaml
|
||||
|
||||
@@ -0,0 +1,5 @@
|
||||
- name: Enable IPv4 Forwarding
|
||||
ansible.posix.sysctl:
|
||||
name: net.ipv4.ip_forward
|
||||
value: "1"
|
||||
sysctl_set: true
|
||||
@@ -1,5 +1,6 @@
|
||||
- name: Install Python 3 Dependencies
|
||||
- name: Install Ansible Dependencies
|
||||
ansible.builtin.apt:
|
||||
pkg:
|
||||
- python3-debian
|
||||
- python3-kubernetes
|
||||
state: present
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
---
|
||||
- name: Initialise Kubernetes cluster
|
||||
ansible.builtin.command:
|
||||
argv:
|
||||
- kubeadm
|
||||
- init
|
||||
- --pod-network-cidr=172.16.0.0/16
|
||||
- --control-plane-endpoint={{ ansible_facts['default_ipv4']['address'] }}:6443
|
||||
- --upload-certs
|
||||
args:
|
||||
creates: /etc/kubernetes/admin.conf
|
||||
|
||||
|
||||
- name: Copy Kubernetes Admin Config
|
||||
ansible.builtin.command: "{{ item }}"
|
||||
loop:
|
||||
- mkdir -p $HOME/.kube
|
||||
- cp /etc/kubernetes/admin.conf $HOME/.kube/config
|
||||
- chown $(id -u):$(id -g) $HOME/.kube/config
|
||||
args:
|
||||
creates: $HOME/.kube/config
|
||||
|
||||
# - name: Install Pod Network (Calico)
|
||||
# ansible.builtin.shell: kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.32.0/manifests/calico.yaml > pod_network_setup.txt
|
||||
# args:
|
||||
# chdir: $HOME
|
||||
# creates: pod_network_setup.txt
|
||||
@@ -1,24 +0,0 @@
|
||||
---
|
||||
- name: Initialise high-availability Kubernetes cluster
|
||||
ansible.builtin.command: >-
|
||||
kubeadm init
|
||||
--pod-network-cidr="172.16.0.0/16"
|
||||
--control-plane-endpoint="{{ ansible_default_ipv4.address }}:6443"
|
||||
--upload-certs
|
||||
args:
|
||||
creates: /etc/kubernetes/admin.conf
|
||||
|
||||
- name: Copy Kubernetes Admin Config
|
||||
ansible.builtin.command: "{{ item }}"
|
||||
loop:
|
||||
- mkdir -p $HOME/.kube
|
||||
- cp /etc/kubernetes/admin.conf $HOME/.kube/config
|
||||
- chown $(id -u):$(id -g) $HOME/.kube/config
|
||||
args:
|
||||
creates: $HOME/.kube/config
|
||||
|
||||
- name: Install Pod Network (Calico)
|
||||
ansible.builtin.shell: kubectl apply -f https://raw.githubusercontent.com/projectcalico/calico/v3.32.0/manifests/calico.yaml > pod_network_setup.txt
|
||||
args:
|
||||
chdir: $HOME
|
||||
creates: pod_network_setup.txt
|
||||
+21
-6
@@ -1,9 +1,24 @@
|
||||
- name: Bootstrap
|
||||
- name: Common setup
|
||||
hosts: all
|
||||
roles:
|
||||
- common
|
||||
- name: Setup Kubernetes masters
|
||||
hosts: masters
|
||||
roles:
|
||||
- kubernetes_node
|
||||
- kubernetes_master
|
||||
|
||||
# # ========================
|
||||
# # SETUP KUBERNETES CLUSTER
|
||||
# # ========================
|
||||
|
||||
# - name: Initialise Kubernetes cluster
|
||||
# hosts: masters[0]
|
||||
# roles:
|
||||
# - kubernetes_master
|
||||
|
||||
# # =======================
|
||||
# # JOIN MASTERS TO CLUSTER
|
||||
# # =======================
|
||||
|
||||
# - name: Adkfk
|
||||
# hosts: masters[0]
|
||||
# tasks:
|
||||
# - name: Generate Kubernetes 'join' command
|
||||
# ansible.builtin.command: echo hi
|
||||
# changed_when: true
|
||||
|
||||
Reference in New Issue
Block a user