Skip to content

Commit 505417d

Browse files
committed
Etcd certs: use symlink in kubeadm config
1 parent 16b090c commit 505417d

File tree

4 files changed

+33
-4
lines changed

4 files changed

+33
-4
lines changed

roles/kubernetes/control-plane/defaults/main/main.yml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,6 @@ kube_apiserver_etcd_compaction_interval: "5m0s"
2323
# in the request is actually present in etcd.
2424
kube_apiserver_service_account_lookup: true
2525

26-
kube_etcd_cacert_file: ca.pem
27-
kube_etcd_cert_file: node-{{ inventory_hostname }}.pem
28-
kube_etcd_key_file: node-{{ inventory_hostname }}-key.pem
29-
3026
# Associated interfaces must be reachable by the rest of the cluster, and by
3127
# CLI/web clients.
3228
kube_controller_manager_bind_address: "::"
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
- name: generate symlink to etcd certs
2+
ansible.builtin.file:
3+
src: "{{item.src}}"
4+
dest: "{{item.dest}}"
5+
state: link
6+
loop:
7+
- src: "{{etcd_cert_paths.client.ca}}"
8+
dest: "{{ etcd_cert_dir }}/{{kube_etcd_cacert_file}}"
9+
- src: "{{etcd_cert_paths.client.cert}}"
10+
dest: "{{ etcd_cert_dir }}/{{kube_etcd_cert_file}}"
11+
- src: "{{etcd_cert_paths.client.key}}"
12+
dest: "{{ etcd_cert_dir }}/{{kube_etcd_key_file}}"
13+
when:
14+
- inventory_hostname in groups['kube_control_plane']

roles/kubernetes/preinstall/tasks/main.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,3 +137,10 @@
137137
when:
138138
- kube_network_plugin == 'calico'
139139
- not ignore_assert_errors
140+
141+
- import_tasks: 0200-etcd-link.yml
142+
tags:
143+
- bootstrap-os
144+
- etcd
145+
when:
146+
- etcd_deployment_type != "kubeadm"

roles/kubespray-defaults/defaults/main/main.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -763,3 +763,15 @@ system_upgrade_reboot: on-upgrade # never, always
763763

764764
# Enables or disables the scheduler plugins.
765765
scheduler_plugins_enabled: false
766+
767+
# Symlinks to etcd certs
768+
kube_etcd_cacert_file: "kube-client-ca.pem"
769+
kube_etcd_cert_file: "kube-client-cert.pem"
770+
kube_etcd_key_file: "kube-client-key.pem"
771+
772+
# Harlink to etcd certs
773+
etcd_cert_paths:
774+
client:
775+
ca: "{{ etcd_cert_dir }}/ca.pem"
776+
cert: "{{ etcd_cert_dir }}/node-{{ inventory_hostname }}.pem"
777+
key: "{{ etcd_cert_dir }}/node-{{ inventory_hostname }}-key.pem"

0 commit comments

Comments
 (0)