# Copyright (c) Authors of Clover # # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 - name: Resetting kubeadm on master shell: kubeadm reset - name: Removing KUBELET_NETWORK_ARGS flag in the kubadm config file shell: sed -i '/KUBELET_NETWORK_ARGS=/d' /etc/systemd/system/kubelet.service.d/10-kubeadm.conf args: warn: false - name: Removing redundant config files (1/3) file: path: /home/pi/.kube state: absent - name: Removing redundant config files (2/3) file: path: /home/pi/join.sh state: absent - name: Removing redundant config files (3/3) file: path: /home/pi/kubelog.txt state: absent - name: Initializing kubeadm shell: kubeadm init --token-ttl=0 --pod-network-cidr 10.244.0.0/16 --apiserver-advertise-address={{ ansible_default_ipv4.address }} > kubelog.txt - name: Scraping the join token shell: cat kubelog.txt | grep 'kubeadm join' > join.sh && sed "s/^[ \t]*//" -i join.sh args: warn: false become: false - name: Fetching the joining script fetch: src: /home/pi/join.sh dest: ./ flat: yes become: false - name: Making a .kube directory in home file: path: /home/pi/.kube state: directory become: false - name: Copying admin config file to .kube directory copy: src: /etc/kubernetes/admin.conf dest: /home/pi/.kube/config remote_src: yes - name: Changing user and group ownership of the config file shell: chown $(id -u):$(id -g) /home/pi/.kube/config args: warn: false - name: Installing Flannel shell: curl -sSL https://rawgit.com/coreos/flannel/v0.10.0/Documentation/kube-flannel.yml | sed "s/amd64/arm/g" | kubectl create -f - args: warn: false become: false - name: Pause a minute for system containers to spin up pause: minutes: 1