--- - name: "Kubernetes Apps | Check cluster settings for MetalLB" fail: msg: "MetalLB require kube_proxy_strict_arp = true, see https://github.com/danderson/metallb/issues/153#issuecomment-518651132" when: - "kube_proxy_mode == 'ipvs' and not kube_proxy_strict_arp" - name: Kubernetes Apps | Check AppArmor status command: which apparmor_parser register: apparmor_status when: - podsecuritypolicy_enabled - inventory_hostname == groups['kube-master'][0] failed_when: false - name: Kubernetes Apps | Set apparmor_enabled set_fact: apparmor_enabled: "{{ apparmor_status.rc == 0 }}" when: - podsecuritypolicy_enabled - inventory_hostname == groups['kube-master'][0] - name: "Kubernetes Apps | Lay Down MetalLB" become: true template: { src: "{{ item }}.j2", dest: "{{ kube_config_dir }}/{{ item }}" } with_items: ["metallb.yml", "metallb-config.yml"] register: "rendering" when: - "inventory_hostname == groups['kube-master'][0]" - name: "Kubernetes Apps | Install and configure MetalLB" kube: name: "MetalLB" kubectl: "{{ bin_dir }}/kubectl" filename: "{{ kube_config_dir }}/{{ item.item }}" state: "{{ item.changed | ternary('latest','present') }}" become: true with_items: "{{ rendering.results }}" when: - "inventory_hostname == groups['kube-master'][0]"