-
Notifications
You must be signed in to change notification settings - Fork 0
/
pi-k8s_playbook.yml
77 lines (57 loc) · 3.1 KB
/
pi-k8s_playbook.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
---
# once all workers joined, run with --tags delete_token to kill the join token on master
- hosts: k8sall
vars:
kubeadm_version: "1.18.2-00"
containerdio_version: "1.2.13-1"
# for Raspbian:
#docker_ce_cli_version: "5:18.09.9~3-0~debian-buster"
#docker_ce_version: "5:18.09.9~3-0~debian-buster"
# for ubuntu:
docker_ce_cli_version: "5:19.03.8~3-0~ubuntu-bionic"
docker_ce_version: "5:19.03.8~3-0~ubuntu-bionic"
# pod_cidr_network must be specified for flannel or calico
pod_cidr_network: "10.244.0.0/16"
# see latest flannel commit sha in https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/create-cluster-kubeadm/#tabs-pod-install-6
#flannel_version: "2140ac876ef134e0ed5af15c65e414cf26827915"
# see latest calico version at https://docs.projectcalico.org/releases
calico_version: "v3.14"
# omitting flannel_version and calico_version will result in weave being installed
install_dashboard: no
#dashboard_version: "v2.0.0-rc7"
disable_wifi: yes
disable_bluetooth: yes
local_kubeconfig_filename: "~/.kube/pi-k8s-kubeconfig.yaml"
## move tmp/log storage off sd to ram
## if using iscsi or nfs root, best to leave writing to root by setting "no"
## but set to "yes" if using sd card
tmp_ram: no
log_ram: no
## to use a specific raspi kernel version, set a commit sha or
## version number from commit messages at https://github.com/Hexxeh/rpi-firmware/commits/master
kernel_version: "4.19.89"
## to use custom ntp servers for timesyncd, multiple servers can be space-separated
# ntp_servers: "[ny-ntp-ip-address] [my-other-ntp-ip-address]"
## convert pi to use root fs on an nfs host, not the sd card
## (Note: docker does not support nfs)
## can include "{{ inventory_hostname }}" which will be replaced as expected
# nfs_root_source: "[my-nfs-server-ip]:/[my-mount-path]/{{ inventory_hostname }}"
## convert pi to use root fs on an iscsi lun, not the sd card
## can include "{{ inventory_hostname}}" which will be replaced as expected
## NOTE : if using an SD card rather than iscsi root, it's likely the kube-scheduler
## will regularly crashloop due to losing their own leadership election
## due to timeout. iscsi root is highly recommended.
# iscsi_root_ip: "[my-iscsi-host-ip]"
# iscsi_root_iqn: "iqn.2010-01.com.mydomain:host.Target-{{ inventory_hostname }}-Root"
# iscsi_root_username: "[chapuser]"
# iscsi_root_password: "[chappass]"
## add a user & uid to the pi so that files created on the remote with a given user
## appear "nicely" in ls
# nfs_guest_username: "nfshostguest"
# nfs_guest_uid: "1025"
## uncomment the following and populate to have a common nfs data volume mounted on each host
## k8s should generally use per-pod volumes in manifest, so no need for his global approach
# nfs_data_mountpoint: "/[my-mountpoint]"
# nfs_data_source: "[my-nfs-server-ip]:[my-nfs-mount]"
roles:
- pi-k8s