68 lines
1.4 KiB
YAML
68 lines
1.4 KiB
YAML
- name: Install prerequisits
|
|
apt:
|
|
name: "{{ item }}"
|
|
update_cache: true
|
|
loop:
|
|
- apt-transport-https
|
|
- ca-certificates
|
|
- curl
|
|
|
|
- name: Enable modules
|
|
community.general.modprobe:
|
|
name: "{{ item }}"
|
|
state: present
|
|
loop:
|
|
- overlay
|
|
- br_netfilter
|
|
|
|
- name: Enable modules persistantly
|
|
lineinfile:
|
|
path: /etc/modules
|
|
line: "{{ item }}"
|
|
state: present
|
|
insertafter: EOF
|
|
loop:
|
|
- overlay
|
|
- br_netfilter
|
|
|
|
- name: Set br_netfilter sysctl parameters
|
|
ansible.posix.sysctl:
|
|
name: "{{ item }}"
|
|
state: present
|
|
value: '1'
|
|
sysctl_set: true
|
|
sysctl_file: /etc/sysctl.d/99-kubernetes-cri.conf
|
|
loop:
|
|
- net.bridge.bridge-nf-call-iptables
|
|
- net.ipv4.ip_forward
|
|
- net.bridge.bridge-nf-call-ip6tables
|
|
|
|
- name: Install kubernetes repo key
|
|
apt_key:
|
|
url: https://packages.cloud.google.com/apt/doc/apt-key.gpg
|
|
state: present
|
|
|
|
- name: Install kubernetes repo
|
|
apt_repository:
|
|
repo: "deb https://apt.kubernetes.io/ kubernetes-xenial main"
|
|
state: present
|
|
filename: kubernetes
|
|
|
|
- name: Install kubeadm
|
|
apt:
|
|
name: "{{ item }}"
|
|
allow_downgrade: true
|
|
state: present
|
|
loop:
|
|
- "kubectl=1.22.1-00"
|
|
- "kubelet=1.22.1-00"
|
|
- "kubeadm=1.22.1-00"
|
|
|
|
- name: Hold kubeadm
|
|
dpkg_selections:
|
|
name: "{{ item }}"
|
|
selection: hold
|
|
loop:
|
|
- kubeadm
|
|
- kubelet
|
|
- kubectl |