diff --git a/playbook/jobs/init_k3s_cluster_apisix b/playbook/jobs/init_k3s_cluster_apisix index d541a568..082ffe4f 100644 --- a/playbook/jobs/init_k3s_cluster_apisix +++ b/playbook/jobs/init_k3s_cluster_apisix @@ -10,11 +10,7 @@ group: master - include_role: name: k3s - vars: - group: master cni: kubeovn - ingress: apisix - external_dns: enable version: 'v1.24.7+k3s1' pod_cidr: '10.10.0.0/16' pod_gateway: '10.10.0.1' @@ -22,8 +18,16 @@ cluster_dns: '172.16.0.10' cluster_domain: 'cluster.local' join_cidr: '100.64.0.0/16' - namespace: ingress + vars: + group: master + - include_role: + name: k3s-addon + vars: + group: master + ingress: apisix + external_dns: enable domain: onwalk.net + namespace: ingress auto_issuance: true update_secret: true tls: diff --git a/playbook/roles/k3s/files/setup-dns-provider.sh b/playbook/roles/k3s-addon/files/setup-dns-provider.sh similarity index 100% rename from playbook/roles/k3s/files/setup-dns-provider.sh rename to playbook/roles/k3s-addon/files/setup-dns-provider.sh diff --git a/playbook/roles/k3s/files/setup-egress.sh b/playbook/roles/k3s-addon/files/setup-egress.sh similarity index 100% rename from playbook/roles/k3s/files/setup-egress.sh rename to playbook/roles/k3s-addon/files/setup-egress.sh diff --git a/playbook/roles/k3s/files/setup-ingress.sh b/playbook/roles/k3s-addon/files/setup-ingress.sh similarity index 100% rename from playbook/roles/k3s/files/setup-ingress.sh rename to playbook/roles/k3s-addon/files/setup-ingress.sh diff --git a/playbook/roles/k3s-addon/meta/main.yml b/playbook/roles/k3s-addon/meta/main.yml new file mode 100644 index 00000000..6fc3ce8b --- /dev/null +++ b/playbook/roles/k3s-addon/meta/main.yml @@ -0,0 +1,3 @@ +dependencies: + - role: cert-manager + - role: secret-manger diff --git a/playbook/roles/k3s-addon/tasks/main.yml b/playbook/roles/k3s-addon/tasks/main.yml new file mode 100755 index 00000000..219ff2dc --- /dev/null +++ b/playbook/roles/k3s-addon/tasks/main.yml @@ -0,0 +1,11 @@ +- name: Setup K3S Ingress + script: files/setup-ingress.sh {{ ingress }} {{ ingress_ip }} + when: inventory_hostname in groups[group] + +- name: Setup DNS Provider + script: files/setup-dns-provider.sh {{ dns_ak }} {{ dns_sk }} + when: ( inventory_hostname in groups[group] ) and (external_dns == 'enable' ) +- name: Remove DNS Provider + shell: 'helm delete external-dns -n external-dns' + when: ( inventory_hostname in groups[group] ) and (external_dns == 'disable' ) + ignore_errors: yes diff --git a/playbook/roles/k3s/meta/main.yml b/playbook/roles/k3s/meta/main.yml index 47819f28..9711b330 100644 --- a/playbook/roles/k3s/meta/main.yml +++ b/playbook/roles/k3s/meta/main.yml @@ -1,4 +1,2 @@ dependencies: - role: common - - role: cert-manager - - role: secret-manger diff --git a/playbook/roles/k3s/tasks/main.yml b/playbook/roles/k3s/tasks/main.yml index b25aaa77..a148a4c8 100755 --- a/playbook/roles/k3s/tasks/main.yml +++ b/playbook/roles/k3s/tasks/main.yml @@ -2,18 +2,6 @@ script: files/setup-k3s.sh {{ version }} {{ cluster_domain }} {{ cni }} {{ ingress }} {{ pod_cidr }} {{ svc_cidr }} when: inventory_hostname in groups[group] -- name: Setup K3S Ingress - script: files/setup-ingress.sh {{ ingress }} {{ ingress_ip }} - when: inventory_hostname in groups[group] - -- name: Setup DNS Provider - script: files/setup-dns-provider.sh {{ dns_ak }} {{ dns_sk }} - when: ( inventory_hostname in groups[group] ) and (external_dns == 'enable' ) -- name: Remove DNS Provider - shell: 'helm delete external-dns -n external-dns' - when: ( inventory_hostname in groups[group] ) and (external_dns == 'disable' ) - ignore_errors: yes - - name: Sync K3S CNI Config template: src=templates/cni_install.sh dest=/tmp/ owner=root group=root mode=0644 when: ( inventory_hostname in groups[group] ) and (cni == 'kubeovn' ) @@ -21,8 +9,3 @@ shell: 'bash /tmp/cni_install.sh' when: ( inventory_hostname in groups[group] ) and (cni == 'kubeovn' ) ignore_errors: yes - - -#- name: Setup Egress -# script: files/setup-egress.sh {{ egress_ip }} {{ namespace }} -# when: inventory_hostname in groups[group]