prepare to initiate the cluster
This commit is contained in:
parent
5cef7d19b1
commit
799dd340ea
3 changed files with 96 additions and 0 deletions
|
|
@ -13,6 +13,12 @@
|
||||||
# when:
|
# when:
|
||||||
# - kubernetes_cri_changed is changed
|
# - kubernetes_cri_changed is changed
|
||||||
|
|
||||||
|
- name: Remove swapfile from /etc/fstab
|
||||||
|
mount:
|
||||||
|
name: swap
|
||||||
|
fstype: swap
|
||||||
|
state: absent
|
||||||
|
|
||||||
- name: Ensuring /etc/systemd/system/kubelet.service.d Folder Exists
|
- name: Ensuring /etc/systemd/system/kubelet.service.d Folder Exists
|
||||||
file:
|
file:
|
||||||
path: "/etc/systemd/system/kubelet.service.d"
|
path: "/etc/systemd/system/kubelet.service.d"
|
||||||
|
|
@ -34,3 +40,65 @@
|
||||||
|
|
||||||
- name: Enable kubelet on boot
|
- name: Enable kubelet on boot
|
||||||
service: name=kubelet state=started enabled=yes
|
service: name=kubelet state=started enabled=yes
|
||||||
|
|
||||||
|
- stat: path=/etc/kubernetes/admin.conf
|
||||||
|
register: st
|
||||||
|
changed_when: False
|
||||||
|
|
||||||
|
- name: Create KubernetesMasterConfigured group
|
||||||
|
group_by: key=KubernetesMasterConfigured
|
||||||
|
when:
|
||||||
|
- st.stat.exists
|
||||||
|
|
||||||
|
- include_tasks: "init_cluster.yml"
|
||||||
|
when:
|
||||||
|
- groups['KubernetesMasterConfigured'] is not defined
|
||||||
|
- groups['KubernetesMasters'][0] == ansible_hostname
|
||||||
|
|
||||||
|
# Install API loadbalancer
|
||||||
|
- include_tasks: "load_balancer.yml"
|
||||||
|
when:
|
||||||
|
- kubernetes_master is true
|
||||||
|
- groups['KubernetesMaster'] | length > 1
|
||||||
|
|
||||||
|
# Prepare first master for extend procedure
|
||||||
|
- include_tasks: "prepare_first_master.yml"
|
||||||
|
when:
|
||||||
|
- groups['KubernetesMasterConfigured'][0] == ansible_hostname
|
||||||
|
- groups['KubernetesMasterConfigured'] | length == 1 # to be tested (potential syntax error)
|
||||||
|
- groups['KubernetesMaster'] | length > 1
|
||||||
|
|
||||||
|
- stat: path=/etc/kubernetes/admin.conf
|
||||||
|
register: st
|
||||||
|
changed_when: False
|
||||||
|
|
||||||
|
- name: Create KubernetesMasterConfigured group
|
||||||
|
group_by: key=KubernetesMasterConfigured
|
||||||
|
when:
|
||||||
|
- st.stat.exists
|
||||||
|
|
||||||
|
- name: Extend Master services on unconfigured hosts
|
||||||
|
include_tasks: "add_master.yml"
|
||||||
|
when:
|
||||||
|
- groups['KubernetesMaster'] | length > 1
|
||||||
|
|
||||||
|
#- name: Check if a node is still tainted
|
||||||
|
# command: kubectl get nodes '{{ ansible_host }}' -o jsonpath='{.spec.taints}'
|
||||||
|
# when: taint_master
|
||||||
|
# register: current_taint
|
||||||
|
# tags: taint
|
||||||
|
#
|
||||||
|
#- name: taint the machine if needed
|
||||||
|
# command: kubectl taint nodes --all node-role.kubernetes.io/master-
|
||||||
|
# when: taint_master == true and current_taint.stdout
|
||||||
|
# tags: taint
|
||||||
|
|
||||||
|
#
|
||||||
|
# At this point, we have a kubernetes up and running, but ready for it
|
||||||
|
#
|
||||||
|
|
||||||
|
- name: Make /root/.kube directory
|
||||||
|
file: path="/root/.kube" owner=root group=root mode=0700 state=directory
|
||||||
|
|
||||||
|
- name: Copy certificat file on
|
||||||
|
copy: src=/etc/kubernetes/admin.conf dest=/root/.kube/config remote_src=yes owner=root group=root mode=0600
|
||||||
|
|
|
||||||
|
|
@ -9,8 +9,28 @@
|
||||||
package: name="{{ kubernetes_package_name }}" state=latest update_cache=yes
|
package: name="{{ kubernetes_package_name }}" state=latest update_cache=yes
|
||||||
notify: Restart kubelet
|
notify: Restart kubelet
|
||||||
|
|
||||||
|
- set_fact:
|
||||||
|
kubernetes_server: true
|
||||||
|
kubernetes_master: true
|
||||||
|
when:
|
||||||
|
- "'KubernetesMasters' in group_names"
|
||||||
|
|
||||||
|
- set_fact:
|
||||||
|
kubernetes_server: true
|
||||||
|
kubernetes_master: false
|
||||||
|
when:
|
||||||
|
- "'KubernetesMasters' in group_names"
|
||||||
|
|
||||||
|
- set_fact:
|
||||||
|
kubernetes_server: false
|
||||||
|
when:
|
||||||
|
- "'KubernetesMasters' not in group_names"
|
||||||
|
- "'KubernetesNodes' not in group_names"
|
||||||
|
|
||||||
- name: Include kubernetes server rules
|
- name: Include kubernetes server rules
|
||||||
include_tasks: "install_server.yml"
|
include_tasks: "install_server.yml"
|
||||||
|
when:
|
||||||
|
- kubernetes_server is true
|
||||||
|
|
||||||
#- name: Install python library for docker
|
#- name: Install python library for docker
|
||||||
# package: name="{{ python_openshift_lib }}" state=latest update_cache=yes
|
# package: name="{{ python_openshift_lib }}" state=latest update_cache=yes
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,6 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<service>
|
<service>
|
||||||
|
{% if kubernetes_master is true %}
|
||||||
<short>Kubernetes master</short>
|
<short>Kubernetes master</short>
|
||||||
<description>Open Kubernetes master ports.</description>
|
<description>Open Kubernetes master ports.</description>
|
||||||
<port protocol="tcp" port="6443"/>
|
<port protocol="tcp" port="6443"/>
|
||||||
|
|
@ -9,4 +10,11 @@
|
||||||
<port protocol="tcp" port="10251"/>
|
<port protocol="tcp" port="10251"/>
|
||||||
<port protocol="tcp" port="10252"/>
|
<port protocol="tcp" port="10252"/>
|
||||||
<port protocol="tcp" port="10255"/>
|
<port protocol="tcp" port="10255"/>
|
||||||
|
{% else %}
|
||||||
|
<short>Kubernetes node</short>
|
||||||
|
<description>Open Kubernetes node ports.</description>
|
||||||
|
<port protocol="tcp" port="10250"/>
|
||||||
|
<port protocol="tcp" port="80"/>
|
||||||
|
<port protocol="tcp" port="443"/>
|
||||||
|
{% endif %}
|
||||||
</service>
|
</service>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue