This commit is contained in:
parent
884df14b6e
commit
52a8de84bc
3 changed files with 87 additions and 16 deletions
|
|
@ -56,21 +56,6 @@
|
||||||
- "crictl"
|
- "crictl"
|
||||||
- "ctr"
|
- "ctr"
|
||||||
|
|
||||||
# Manque kubernetes_server_token, kubernetes_master url
|
|
||||||
|
|
||||||
- name: Deploy systemd service
|
|
||||||
template:
|
|
||||||
src: "etc/systemd/system/{{ item }}.j2"
|
|
||||||
dest: "/etc/systemd/system/{{ item }}"
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: 0600
|
|
||||||
with_items:
|
|
||||||
- "k3s.service"
|
|
||||||
- "k3s.service.env"
|
|
||||||
when:
|
|
||||||
- ansible_service_mgr == "systemd"
|
|
||||||
|
|
||||||
- name: Create thin volumes for k3s
|
- name: Create thin volumes for k3s
|
||||||
lvol:
|
lvol:
|
||||||
vg: "{{ item.vg }}"
|
vg: "{{ item.vg }}"
|
||||||
|
|
@ -97,6 +82,81 @@
|
||||||
with_items:
|
with_items:
|
||||||
- { name: var_lib_k3s, vg: vg_sys, size: 10g, mount_point: /var/lib/rancher/k3s, mount_opts: "discard"}
|
- { name: var_lib_k3s, vg: vg_sys, size: 10g, mount_point: /var/lib/rancher/k3s, mount_opts: "discard"}
|
||||||
|
|
||||||
|
|
||||||
|
# Check controlers
|
||||||
|
- name: Check if /etc/rancher/k3s/k3s.yaml already existe
|
||||||
|
stat:
|
||||||
|
path: /etc/rancher/k3s/k3s.yaml
|
||||||
|
register: st
|
||||||
|
changed_when: False
|
||||||
|
when:
|
||||||
|
- kubernetes_master|bool
|
||||||
|
|
||||||
|
- name: Create KubernetesMasterConfigured group
|
||||||
|
group_by:
|
||||||
|
key: KubernetesMasterConfigured_{{ kubernetes_cluster_name }}
|
||||||
|
when:
|
||||||
|
- kubernetes_master|bool
|
||||||
|
- st.stat.exists
|
||||||
|
|
||||||
|
# First controler
|
||||||
|
- name: Configure first controler
|
||||||
|
# run_once: true
|
||||||
|
block:
|
||||||
|
- name: Deploy systemd service
|
||||||
|
template:
|
||||||
|
src: "etc/systemd/system/{{ item }}.j2"
|
||||||
|
dest: "/etc/systemd/system/{{ item }}"
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0600
|
||||||
|
with_items:
|
||||||
|
- "k3s.service"
|
||||||
|
- "k3s.service.env"
|
||||||
|
when:
|
||||||
|
- ansible_service_mgr == "systemd"
|
||||||
|
|
||||||
|
- name: Enable k3s on boot
|
||||||
|
service:
|
||||||
|
name: k3s
|
||||||
|
state: started
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: Wait for k3s.yaml
|
||||||
|
wait_for:
|
||||||
|
path: /etc/rancher/k3s/k3s.yaml
|
||||||
|
|
||||||
|
- name: Wait for node-token
|
||||||
|
wait_for:
|
||||||
|
path: /var/lib/rancher/k3s/server/node-token
|
||||||
|
|
||||||
|
- name: Add {{ ansible_hostname }} to KubernetesMasterConfigured group
|
||||||
|
group_by:
|
||||||
|
key: KubernetesMasterConfigured_{{ kubernetes_cluster_name }}
|
||||||
|
|
||||||
|
when:
|
||||||
|
- kubernetes_master|bool
|
||||||
|
- vars['KubernetesMasterConfigured_' ~ kubernetes_cluster_name] is not defined
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Manque kubernetes_server_token, kubernetes_master url
|
||||||
|
|
||||||
|
#- name: Deploy systemd service
|
||||||
|
# template:
|
||||||
|
# src: "etc/systemd/system/{{ item }}.j2"
|
||||||
|
# dest: "/etc/systemd/system/{{ item }}"
|
||||||
|
# owner: root
|
||||||
|
# group: root
|
||||||
|
# mode: 0600
|
||||||
|
# with_items:
|
||||||
|
# - "k3s.service"
|
||||||
|
# - "k3s.service.env"
|
||||||
|
# when:
|
||||||
|
# - ansible_service_mgr == "systemd"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
- name: Enable k3s on boot
|
- name: Enable k3s on boot
|
||||||
service:
|
service:
|
||||||
name: k3s
|
name: k3s
|
||||||
|
|
|
||||||
|
|
@ -9,6 +9,12 @@
|
||||||
{% if kubernetes_master == true %}
|
{% if kubernetes_master == true %}
|
||||||
# Kubernetes API server, used by all
|
# Kubernetes API server, used by all
|
||||||
<port protocol="tcp" port="6443"/>
|
<port protocol="tcp" port="6443"/>
|
||||||
|
{% endif %}
|
||||||
|
{% if kubernetes_cri == "k3s" %}
|
||||||
|
# K3S with flannel and wireguard
|
||||||
|
<port protocol="udp" port="51820"/>
|
||||||
|
{% else %}
|
||||||
|
{% if kubernetes_master == true %}
|
||||||
# etcd server client API, used by kube-apiserver and etcd
|
# etcd server client API, used by kube-apiserver and etcd
|
||||||
<port protocol="tcp" port="2379"/>
|
<port protocol="tcp" port="2379"/>
|
||||||
<port protocol="tcp" port="2380"/>
|
<port protocol="tcp" port="2380"/>
|
||||||
|
|
@ -35,4 +41,5 @@
|
||||||
<port protocol="udp" port="6783-6784"/>
|
<port protocol="udp" port="6783-6784"/>
|
||||||
<port protocol="tcp" port="6783"/>
|
<port protocol="tcp" port="6783"/>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% endif %}
|
||||||
</service>
|
</service>
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,11 @@ After=network-online.target
|
||||||
Type=notify
|
Type=notify
|
||||||
EnvironmentFile=/etc/systemd/system/k3s.service.env
|
EnvironmentFile=/etc/systemd/system/k3s.service.env
|
||||||
{% if kubernetes_master|bool %}
|
{% if kubernetes_master|bool %}
|
||||||
ExecStart=/usr/local/bin/k3s server --flannel-backend=wireguard --disable traefik --secrets-encryption
|
{% if vars['KubernetesMasterConfigured_' ~ kubernetes_cluster_name] is not defined %}
|
||||||
|
ExecStart=/usr/local/bin/k3s server --flannel-backend=wireguard --disable traefik --secrets-encryption --cluster-init
|
||||||
|
{% else %}
|
||||||
|
ExecStart=/usr/local/bin/k3s server --flannel-backend=wireguard --disable traefik --secrets-encryption --server https://{{ kubernetes_master }}:6443 --token ${NODE_TOKEN}
|
||||||
|
{% endif %}
|
||||||
{% else %}
|
{% else %}
|
||||||
ExecStart=/usr/local/bin/k3s agent --server https://{{ kubernetes_master }}:6443 --token ${NODE_TOKEN}
|
ExecStart=/usr/local/bin/k3s agent --server https://{{ kubernetes_master }}:6443 --token ${NODE_TOKEN}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue