diff --git a/tasks/Debian.yml b/tasks/Debian.yml index 14320d0..9952f0a 100644 --- a/tasks/Debian.yml +++ b/tasks/Debian.yml @@ -7,12 +7,19 @@ - docker_ver == "docker_ce" - name: add docker repository - apt_repository: repo='deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ansible_distribution_release}} stable' state=present update_cache=yes + apt_repository: + repo: 'deb [arch=amd64] https://download.docker.com/linux/ubuntu {{ ansible_distribution_release }} stable' + state: present + update_cache: yes when: - docker_ver == "docker_ce" - name: "Ensure GRUB_CMDLINE_LINUX is updated" - lineinfile: dest=/etc/default/grub regexp='^(GRUB_CMDLINE_LINUX=".*)"$' line='\1 cgroup_enable=memory swapaccount=1"' backrefs=yes + lineinfile: + dest: /etc/default/grub + regexp: '^(GRUB_CMDLINE_LINUX=".*)"$' + line: '\1 cgroup_enable=memory swapaccount=1"' + backrefs: yes when: - not docker_installed.stat.exists @@ -22,7 +29,11 @@ - not docker_installed.stat.exists - name: "Ensure DEFAULT_FORWARD_POLICY in /etc/default/ufw is updated" - lineinfile: dest=/etc/default/ufw regexp='^(DEFAULT_FORWARD_POLICY=").*"$' line='\1ACCEPT"' backrefs=yes + lineinfile: + dest: /etc/default/ufw + regexp: '^(DEFAULT_FORWARD_POLICY=").*"$' + line: '\1ACCEPT"' + backrefs: yes notify: reload ufw tags: [docker,firewall] diff --git a/tasks/RedHat.yml b/tasks/RedHat.yml index 5838563..08ce66e 100644 --- a/tasks/RedHat.yml +++ b/tasks/RedHat.yml @@ -29,7 +29,7 @@ mode: 0644 register: need_firewalld_reload when: - - kubernetes_server == true + - kubernetes_server|bool #- name: Reload firewalld configuration # service: @@ -37,13 +37,13 @@ # state: reloaded # enabled: yes # when: -# - kubernetes_server == true +# - kubernetes_server|bool - name: reload firewalld to refresh service list command: firewall-cmd --reload when: - need_firewalld_reload is changed - - kubernetes_server == true + - kubernetes_server|bool # Définir interface - name: Open Firewalld @@ -53,6 +53,6 @@ state: enabled immediate: true when: -# - need_firewall == true +# - need_firewall|bool # - firewall_name == "firewalld" - - kubernetes_server == true + - kubernetes_server|bool diff --git a/tasks/install_server.yml b/tasks/install_server.yml index ff7d23a..d164131 100644 --- a/tasks/install_server.yml +++ b/tasks/install_server.yml @@ -21,8 +21,7 @@ # - kubernetes_cri_changed is changed - name: Disable SWAP since kubernetes can't work with swap enabled (1/2) - shell: | - swapoff -a + command: swapoff -a - name: Remove swapfile from /etc/fstab (2/2) mount: @@ -82,10 +81,11 @@ # Install API loadbalancer - include_tasks: "load_balancer.yml" when: - - kubernetes_master == true + - kubernetes_master|bool - groups['KubernetesMasters'] | length > 1 -- stat: +- name: Check if /etc/kubernetes/admin.conf already existe + stat: path: /etc/kubernetes/admin.conf register: st changed_when: False @@ -97,16 +97,17 @@ - st.stat.exists - name: Retreive kubeadm Major version - shell: kubeadm version | sed 's/.*{Major:"\([0-9]\)".*/\1/' + shell: set -o pipefail && kubeadm version | sed 's/.*{Major:"\([0-9]\)".*/\1/' register: kubeadm_version_major changed_when: False - name: Retreive kubeadm Minor version - shell: kubeadm version | sed -e 's/.* Minor:"\([0-9]*\)".*/\1/' + shell: set -o pipefail && kubeadm version | sed -e 's/.* Minor:"\([0-9]*\)".*/\1/' register: kubeadm_version_minor changed_when: False -- set_fact: +- name: Defined a default lb_kubemaster + set_fact: lb_kubemaster: "{{ groups['KubernetesMasters'][0] }}" when: - lb_kubemaster is undefined @@ -201,7 +202,7 @@ dest: /root/kubeadm-config.yaml owner: root group: root - mode: 600 + mode: 0600 when: - server_enrolled.rc == 1 @@ -221,7 +222,7 @@ # command: kubectl --kubeconfig=/etc/kubernetes/admin.conf taint nodes --all node-role.kubernetes.io/master- command: kubectl --kubeconfig=/etc/kubernetes/admin.conf taint nodes '{{ ansible_hostname | lower }}' node-role.kubernetes.io/master- when: kubernetes_master_taint|bool and current_taint.stdout - + # # At this point, we have a kubernetes up and running, but ready for it # @@ -234,7 +235,7 @@ mode: 0700 state: directory when: - - kubernetes_master == true + - kubernetes_master|bool - name: Copy certificat file on copy: @@ -245,7 +246,7 @@ group: root mode: 0600 when: - - kubernetes_master == true + - kubernetes_master|bool # # Manque autoconfig de .kube/config local @@ -256,4 +257,4 @@ # src: /etc/kubernetes/pki/ca.crt # dest: /root/.kube/{{ kubernetes_cluster_name }}/ca.crt # when: -# - kubernetes_master == true +# - kubernetes_master|bigip_pool diff --git a/tasks/load_balancer.yml b/tasks/load_balancer.yml index c9ac070..f72bfbc 100644 --- a/tasks/load_balancer.yml +++ b/tasks/load_balancer.yml @@ -2,7 +2,7 @@ - name: Install needed packages package: name: "{{ item }}" - state: latest + state: present update_cache: yes with_items: - keepalived diff --git a/tasks/main.yml b/tasks/main.yml index 7378387..164058c 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -2,7 +2,8 @@ - name: Include vars for {{ ansible_os_family }} include_vars: "{{ ansible_os_family }}.yml" -- set_fact: +- name: Define vars for master + set_fact: kubernetes_server: true kubernetes_master: true kubernetes_master_taint: false @@ -10,7 +11,8 @@ - "'KubernetesMasters' in group_names" - "'KubernetesNodes' not in group_names" -- set_fact: +- name: Define vars for node + set_fact: kubernetes_server: true kubernetes_master: false kubernetes_master_taint: false @@ -18,7 +20,8 @@ - "'KubernetesNodes' in group_names" - "'KubernetesMasters' not in group_names" -- set_fact: +- name: Define vars for taint master + set_fact: kubernetes_server: true kubernetes_master: true kubernetes_master_taint: true @@ -26,7 +29,8 @@ - "'KubernetesNodes' in group_names" - "'KubernetesMasters' in group_names" -- set_fact: +- name: Define vars for tooling + set_fact: kubernetes_sever: false when: - "'KubernetesMasters' not in group_names" @@ -36,13 +40,16 @@ include_tasks: "{{ ansible_os_family }}.yml" - name: Install kubernetes tools - package: name="{{ kubernetes_package_name }}" state=latest update_cache=yes + package: + name: "{{ kubernetes_package_name }}" + state: present + update_cache: yes # notify: Restart kubelet - name: Include kubernetes server rules include_tasks: "install_server.yml" when: - - kubernetes_server == true + - kubernetes_server|bool #- name: Install python library for docker # package: name="{{ python_openshift_lib }}" state=latest update_cache=yes