You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
41 lines
1.2 KiB
YAML
41 lines
1.2 KiB
YAML
- name: Create folder for data
|
|
ansible.builtin.file:
|
|
path: /var/data/
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Deploy init.yaml from template
|
|
ansible.builtin.template:
|
|
src: k8s-dqlite/init.yaml.template
|
|
dest: /var/data/init.yaml
|
|
|
|
- name: Deploy cert-config-file from template
|
|
when: "inventory_hostname == groups['kubernetes'][0]"
|
|
ansible.builtin.template:
|
|
src: k8s-dqlite/csr-dqlite.conf.template
|
|
dest: /var/tmp/csr-dqlite.conf
|
|
|
|
- name: dqlite Generate certificate
|
|
when: "inventory_hostname == groups['kubernetes'][0]"
|
|
command: openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -nodes -keyout /var/data/cluster.key -out /var/data/cluster.crt -subj "/CN=k8s" -config /var/tmp/csr-dqlite.conf -extensions v3_ext
|
|
|
|
- name: Fetch cluster.crt and cluster.key
|
|
when: "inventory_hostname == groups['kubernetes'][0]"
|
|
synchronize:
|
|
src: "{{ item }}"
|
|
dest: /tmp/
|
|
mode: pull
|
|
with_items:
|
|
- /var/data/cluster.crt
|
|
- /var/data/cluster.key
|
|
|
|
- name: Copy cluster.crt and cluster.key to joining nodes
|
|
when: "inventory_hostname != groups['kubernetes'][0]"
|
|
ansible.builtin.copy:
|
|
src: "{{ item }}"
|
|
dest: /var/data/
|
|
mode: u=rw,g=r,o=r
|
|
with_items:
|
|
- /tmp/cluster.crt
|
|
- /tmp/cluster.key
|