49 lines
1.5 KiB
YAML
49 lines
1.5 KiB
YAML
---
|
|
# tasks file for k8s_control
|
|
|
|
- name: initialise kubernetes cluster [kubeadm init]
|
|
ansible.builtin.shell: "kubeadm init --control-plane-endpoint='{{ hostvars[groups['Master'][0]].ansible_host }}:6443' --ignore-preflight-errors=all"
|
|
register: kubeadm_init_result
|
|
|
|
- name: record kubeadm init stdout
|
|
ansible.builtin.copy:
|
|
content: "{{ kubeadm_init_result.stdout }}"
|
|
dest: "/etc/kubernetes/kubeadm-init.stdout"
|
|
|
|
- name: record kubeadm init stderr
|
|
ansible.builtin.copy:
|
|
content: "{{ kubeadm_init_result.stderr }}"
|
|
dest: "/etc/kubernetes/kubeadm-init.stderr"
|
|
|
|
|
|
- name: create .kube config folder for the ansible user
|
|
ansible.builtin.file:
|
|
path: "/home/{{ ansible_user }}/.kube"
|
|
state: directory
|
|
owner: "{{ ansible_user }}"
|
|
group: "{{ ansible_user }}"
|
|
mode: 0755
|
|
|
|
- name: copy admin.conf to .kube folder for the ansible user
|
|
ansible.builtin.copy:
|
|
src: /etc/kubernetes/admin.conf
|
|
dest: "/home/{{ ansible_user }}/.kube/config"
|
|
owner: "{{ ansible_user }}"
|
|
remote_src: yes
|
|
mode: 0644
|
|
|
|
- name: Set the KUBECONFIG environment variable for the ansible user
|
|
ansible.builtin.shell: "export KUBECONFIG=/home/{{ ansible_user }}/.kube/config"
|
|
environment:
|
|
KUBECONFIG: "/home/{{ ansible_user }}/.kube/config"
|
|
|
|
|
|
- name: install Pod network
|
|
ansible.builtin.shell:
|
|
cmd: kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
|
|
|
|
- name: Wait for controlplane to be ready
|
|
ansible.builtin.pause:
|
|
minutes: 3
|
|
|