# Copyright 2020 Huawei Technologies Co., Ltd. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. --- - name: check whether k3s is already installed shell: cmd: which k3s register: result ignore_errors: yes no_log: True - debug: msg: k3s is already present when: result.stdout != "" - debug: # yamllint disable rule:line-length msg: Ignore Uninstall Log , k3s not installed continue with Installation # yamllint disable rule:line-length when: result.stdout == "" - debug: msg: K3 Installation started on {{ ansible_facts['distribution'] }} MEP Node - name: "INSTALL: Disabling firewall for successfull k3s installation on CentOs" shell: cmd: systemctl stop firewalld when: ansible_facts['distribution'] == "CentOS" and result is failed - name: "INSTALL: install container-selinux" shell: cmd: yum install -y container-selinux selinux-policy-base when: ansible_facts['distribution'] == "CentOS" and result is failed ignore_errors: true - name: "INSTALL: get interface name" shell: cmd: ip a |grep {{ ansible_host }} |awk '{print $NF}' register: ifName when: result is failed # yamllint disable rule:line-length - name: "INSTALL: install k3s" shell: cmd: curl -sfL https://get.k3s.io | INSTALL_K3S_EXEC="--node-ip={{ ansible_host }} --node-external-ip={{ ansible_host }} --bind-address={{ ansible_host }} --flannel-iface=eth0 --docker --no-deploy=servicelb --no-deploy=traefik --write-kubeconfig-mode 644 --kube-apiserver-arg="service-node-port-range=30000-36000"" sh - when: result is failed # yamllint disable rule:line-length #- name: "INSTALL: install k3s" # shell: # cmd: curl -sfL https://get.k3s.io | sh - # when: result is failed - name: "INSTALL: create .kube dir" shell: cmd: mkdir -p $HOME/.kube/ when: result is failed - name: "INSTALL: copy kubeconfig" shell: cmd: cp /etc/rancher/k3s/k3s.yaml $HOME/.kube/config when: result is failed