104 lines
2.9 KiB
YAML
104 lines
2.9 KiB
YAML
---
|
|
- name: Common Tasks
|
|
include_tasks: common.yaml
|
|
# tags:
|
|
# - install
|
|
|
|
- name: Check if kubernetes has been Initialized
|
|
stat:
|
|
path: /etc/kubernetes/admin.conf
|
|
register: KubernetesInitialized
|
|
tags:
|
|
- always
|
|
|
|
- name: kubernetes prime
|
|
include_tasks: prime.yaml
|
|
when: kubernetes_config.cluster.prime.name == inventory_hostname
|
|
|
|
|
|
- name: kubernetes workers
|
|
include_tasks: workers.yaml
|
|
when: kubernetes_config.cluster.prime.name != inventory_hostname
|
|
|
|
|
|
- name: Add Kubernetes Node Labels
|
|
kubernetes.core.k8s:
|
|
definition:
|
|
apiVersion: v1
|
|
kind: Node
|
|
metadata:
|
|
name: "{{ inventory_hostname }}"
|
|
labels:
|
|
"{{ item | from_yaml_all }}"
|
|
delegate_to: "{{ kubernetes_config.cluster.prime.name }}"
|
|
with_items:
|
|
- "{{ kubernetes_config.hosts[inventory_hostname].labels }}"
|
|
when:
|
|
- ( kubernetes_config.hosts[inventory_hostname].labels is defined and
|
|
kubernetes_config.hosts[inventory_hostname].labels|default('')|length > 0 )
|
|
tags:
|
|
- install
|
|
- nodelabels
|
|
|
|
|
|
- name: Add Node Taints
|
|
kubernetes.core.k8s_taint:
|
|
state: "present"
|
|
name: "{{ inventory_hostname }}"
|
|
taints:
|
|
- "{{ item | from_yaml_all }}"
|
|
delegate_to: "{{ kubernetes_config.cluster.prime.name }}"
|
|
with_items:
|
|
- "{{ kubernetes_config.hosts[inventory_hostname].taints.present }}"
|
|
when:
|
|
- (kubernetes_config.hosts[inventory_hostname].taints.present is defined and
|
|
kubernetes_config.hosts[inventory_hostname].taints.present|default('')|length > 0 )
|
|
tags:
|
|
- install
|
|
- taints
|
|
|
|
|
|
- name: Remove Node Taints
|
|
kubernetes.core.k8s_taint:
|
|
state: "absent"
|
|
name: "{{ inventory_hostname }}"
|
|
taints:
|
|
- "{{ item | from_yaml_all }}"
|
|
delegate_to: "{{ kubernetes_config.cluster.prime.name }}"
|
|
with_items:
|
|
- "{{ kubernetes_config.hosts[inventory_hostname].taints.absent }}"
|
|
when:
|
|
- ( kubernetes_config.hosts[inventory_hostname].taints.absent is defined and
|
|
kubernetes_config.hosts[inventory_hostname].taints.absent|default('')|length > 0 )
|
|
tags:
|
|
- install
|
|
- taints
|
|
|
|
|
|
|
|
|
|
- name: Create Cluster Namespaces
|
|
kubernetes.core.k8s:
|
|
state: present
|
|
definition:
|
|
apiVersion: v1
|
|
kind: Namespace
|
|
metadata:
|
|
name: "{{ item.name }}"
|
|
labels:
|
|
#app.kubernetes.io/version: # App version
|
|
#app.kubernetes.io/component:
|
|
#app.kubernetes.io/part-of:
|
|
app.kubernetes.io/managed-by: Ansible
|
|
#meta.kubernetes.io/description: "{{ item.description | default('') }}"
|
|
meta.kubernetes.io/version: "{{ deployment_git_current_short_hash | default('') }}"
|
|
with_items:
|
|
- "{{ kubernetes_config.namespaces }}"
|
|
when:
|
|
( kubernetes_config.namespaces is defined and
|
|
kubernetes_config.namespaces | default('') | length > 0 and
|
|
kubernetes_config.cluster.prime.name == inventory_hostname )
|
|
tags:
|
|
- install
|
|
- namespaces
|