first commit
This commit is contained in:
33
playbooks/main.yaml
Executable file
33
playbooks/main.yaml
Executable file
@ -0,0 +1,33 @@
|
||||
# Author: Oriol Filter
|
||||
# 13/12/2023
|
||||
|
||||
- name: Preparethings
|
||||
order: inventory
|
||||
hosts: all
|
||||
gather_facts: true
|
||||
serial: 1 # 1 Host at a time
|
||||
vars:
|
||||
# Connect
|
||||
ansible_user: "{{ desired_ansible_user }}"
|
||||
ansible_password: "{{ desired_ansible_password }}"
|
||||
ansible_become_password: "{{ ansible_password | default('1') }}"
|
||||
|
||||
# Interpreter
|
||||
ansible_python_interpreter: "/usr/bin/python3"
|
||||
|
||||
tasks:
|
||||
# - check vars
|
||||
- debug: var=is_master # Not actually used/relevant
|
||||
- debug: var=ansible_host
|
||||
- debug: var=install_kubeadm_version
|
||||
|
||||
- name: Ping check
|
||||
ping:
|
||||
|
||||
- name: Set new repos
|
||||
import_tasks: task_set_repos.yaml
|
||||
become: true
|
||||
|
||||
- name: stuff
|
||||
import_tasks: task_upgrade.yaml
|
||||
become: true
|
12
playbooks/task_set_repos.yaml
Normal file
12
playbooks/task_set_repos.yaml
Normal file
@ -0,0 +1,12 @@
|
||||
## Update repositories
|
||||
# https://kubernetes.io/blog/2023/08/15/pkgs-k8s-io-introduction/
|
||||
|
||||
- name: Add Kubernetes GPG key
|
||||
apt_key:
|
||||
url: https://pkgs.k8s.io/core:/stable:/v1.28/deb/Release.key
|
||||
state: present
|
||||
|
||||
- name: Add Kubernetes APT repository
|
||||
apt_repository:
|
||||
repo: deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.28/deb/ /
|
||||
state: present
|
67
playbooks/task_upgrade.yaml
Normal file
67
playbooks/task_upgrade.yaml
Normal file
@ -0,0 +1,67 @@
|
||||
## Kubeadm
|
||||
- name: apt update
|
||||
ansible.builtin.apt:
|
||||
update_cache: yes
|
||||
|
||||
- name: apt install kubeadm
|
||||
ansible.builtin.apt:
|
||||
allow_change_held_packages: true
|
||||
name:
|
||||
- kubeadm={{ install_kubeadm_version }}
|
||||
|
||||
- name: Call `kubeadm upgrade`
|
||||
shell: kubeadm upgrade node
|
||||
|
||||
- name: Drain node
|
||||
become: false
|
||||
delegate_to: localhost
|
||||
kubernetes.core.k8s_drain:
|
||||
name: "{{ ansible_facts['fqdn'] }}"
|
||||
state: drain
|
||||
delete_options:
|
||||
delete_emptydir_data: true
|
||||
ignore_daemonsets: true
|
||||
force: yes
|
||||
|
||||
## Kubelet && kubectl
|
||||
- name: apt update
|
||||
ansible.builtin.apt:
|
||||
update_cache: yes
|
||||
|
||||
- name: apt install kubelet && kubeadm
|
||||
ansible.builtin.apt:
|
||||
allow_change_held_packages: true
|
||||
name:
|
||||
- kubelet={{ install_kubeadm_version }}
|
||||
- kubectl={{ install_kubeadm_version }}
|
||||
|
||||
- name: systemctl daemon-reload
|
||||
ansible.builtin.systemd_service:
|
||||
daemon_reload: true
|
||||
|
||||
- name: Restart kubelet
|
||||
ansible.builtin.service:
|
||||
name: kubelet
|
||||
state: restarted
|
||||
|
||||
## Standard update upgrade
|
||||
- name: apt update
|
||||
ansible.builtin.apt:
|
||||
update_cache: yes
|
||||
|
||||
- name: Upgrade general packages
|
||||
ansible.builtin.apt:
|
||||
name: "*"
|
||||
state: latest
|
||||
|
||||
## Reboot node
|
||||
- name: reboot
|
||||
reboot:
|
||||
|
||||
## Uncordon node
|
||||
- name: Uncordon node
|
||||
become: false
|
||||
delegate_to: localhost
|
||||
kubernetes.core.k8s_drain:
|
||||
name: "{{ ansible_facts['fqdn'] }}"
|
||||
state: uncordon
|
Reference in New Issue
Block a user