52 lines
No EOL
1.3 KiB
YAML
52 lines
No EOL
1.3 KiB
YAML
---
|
|
- name: Install Docker
|
|
package:
|
|
name: docker.io
|
|
version: "{{ docker_version }}"
|
|
state: present
|
|
|
|
- name: Install Kubelet/Kubectl/Kubeadm
|
|
package:
|
|
name: ["kubelet","kubectl","kubeadm"]
|
|
version: "{{ kube_version }}-00"
|
|
state: present
|
|
|
|
- name: Pull images for Kubernetes
|
|
command: kubeadm config images pull --kubernetes-version "{{ kube_version }}"
|
|
|
|
- name: Initiate Kubernetes cluster on Master node
|
|
command: >-
|
|
kubeadm init
|
|
--apiserver-advertise-address={{ ansible_default_ipv4.address }}
|
|
--pod-network-cidr={{ pod_network_cidr }}
|
|
--ignore-preflight-errors=Swap
|
|
register: output
|
|
changed_when: "'Kubeadm completed the bootstrap of control plane node' in output.stdout"
|
|
run_once: true
|
|
delegate_to: master1
|
|
|
|
- name: Copy admin credentials from master
|
|
fetch:
|
|
src: "/etc/kubernetes/admin.conf"
|
|
dest: "./admin.conf"
|
|
flat: yes
|
|
run_once: true
|
|
delegate_to: master1
|
|
|
|
- name: Create .kube directory if not exists
|
|
file:
|
|
path: ~/.kube
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Copy kubeconfig to local machine
|
|
copy:
|
|
src: ./admin.conf
|
|
dest: ~/.kube/config
|
|
owner: "{{ ansible_user_id }}"
|
|
group: "{{ ansible_user_gid }}"
|
|
mode: '0644'
|
|
|
|
- name: Deploy Calico network plugin
|
|
import_role:
|
|
name: calico |