aboutsummaryrefslogtreecommitdiffstats
path: root/fdio.infra.ansible/roles/kubernetes
diff options
context:
space:
mode:
Diffstat (limited to 'fdio.infra.ansible/roles/kubernetes')
-rw-r--r--fdio.infra.ansible/roles/kubernetes/defaults/main.yaml15
-rw-r--r--fdio.infra.ansible/roles/kubernetes/tasks/main.yaml14
-rw-r--r--fdio.infra.ansible/roles/kubernetes/tasks/ubuntu_bionic.yaml37
3 files changed, 66 insertions, 0 deletions
diff --git a/fdio.infra.ansible/roles/kubernetes/defaults/main.yaml b/fdio.infra.ansible/roles/kubernetes/defaults/main.yaml
new file mode 100644
index 0000000000..1a2f773950
--- /dev/null
+++ b/fdio.infra.ansible/roles/kubernetes/defaults/main.yaml
@@ -0,0 +1,15 @@
+---
+# file: roles/kubernetes/defaults/main.yaml
+
+# Version options.
+kubernetes_version: "1.11.0-00"
+kubernetes_apt_package_state: present
+
+# Service options.
+kubernetes_service_state: started
+kubernetes_service_enabled: true
+kubernetes_restart_handler_state: restarted
+
+# APT options.
+kubernetes_apt_repository: "deb http://apt.kubernetes.io/ kubernetes-xenial main"
+kubernetes_apt_repository_state: present
diff --git a/fdio.infra.ansible/roles/kubernetes/tasks/main.yaml b/fdio.infra.ansible/roles/kubernetes/tasks/main.yaml
new file mode 100644
index 0000000000..160ffb8c06
--- /dev/null
+++ b/fdio.infra.ansible/roles/kubernetes/tasks/main.yaml
@@ -0,0 +1,14 @@
+---
+# file: roles/kubernetes/tasks/main.yaml
+
+- name: Kubernetes - Install distribution - release - machine prerequisites
+ include_tasks: '{{ ansible_distribution|lower }}_{{ ansible_distribution_release }}.yaml'
+ tags: install-kubernetes
+
+- name: Kubernetes - Apply kubelet parameter
+ lineinfile:
+ path: '/etc/default/kubelet'
+ state: 'present'
+ regexp: '^KUBELET_EXTRA_ARGS=*'
+ line: 'KUBELET_EXTRA_ARGS=--feature-gates HugePages=false'
+ tags: install-kubernetes
diff --git a/fdio.infra.ansible/roles/kubernetes/tasks/ubuntu_bionic.yaml b/fdio.infra.ansible/roles/kubernetes/tasks/ubuntu_bionic.yaml
new file mode 100644
index 0000000000..454e80e002
--- /dev/null
+++ b/fdio.infra.ansible/roles/kubernetes/tasks/ubuntu_bionic.yaml
@@ -0,0 +1,37 @@
+---
+# file: roles/kubernetes/tasks/ubuntu_bionic.yaml
+
+- name: Kubernetes repository - Dependencies
+ apt:
+ name:
+ - 'apt-transport-https'
+ - 'ca-certificates'
+ - 'software-properties-common'
+ state: 'present'
+ cache_valid_time: 3600
+ install_recommends: False
+ tags: install-kubernetes
+
+- name: Kubernetes repository - Add an Apt signing key
+ apt_key:
+ url: 'https://packages.cloud.google.com/apt/doc/apt-key.gpg'
+ state: 'present'
+ tags: install-kubernetes
+
+- name: Kubernetes repository - Install APT repository
+ apt_repository:
+ repo: '{{ kubernetes_apt_repository }}'
+ state: '{{ kubernetes_apt_repository_state }}'
+ update_cache: yes
+ tags: install-kubernetes
+
+- name: Kubernetes - Install
+ apt:
+ name:
+ - 'kubernetes-cni=0.6.0-00'
+ - 'kubeadm={{ kubernetes_version }}'
+ - 'kubectl={{ kubernetes_version }}'
+ - 'kubelet={{ kubernetes_version }}'
+ state: '{{ kubernetes_apt_package_state }}'
+ force: True
+ tags: install-kubernetes