caa81f3ac2
- Move CNI configuration from `kubernetes/node` role to `network_plugin/canal` - Create SSL dir for Canal and symlink etcd SSL files - Add needed options to `canal-config` configmap - Run flannel and calico-node containers with proper configuration
58 lines
1.9 KiB
YAML
58 lines
1.9 KiB
YAML
---
|
|
- name: Canal | Write Canal cni config
|
|
template:
|
|
src: "cni-canal.conf.j2"
|
|
dest: "/etc/cni/net.d/10-canal.conf"
|
|
owner: kube
|
|
|
|
- name: Canal | Create canal certs directory
|
|
file:
|
|
dest: "{{ canal_cert_dir }}"
|
|
state: directory
|
|
mode: 0750
|
|
owner: root
|
|
group: root
|
|
|
|
- name: Canal | Link etcd certificates for canal-node
|
|
file:
|
|
src: "{{ etcd_cert_dir }}/{{ item.s }}"
|
|
dest: "{{ canal_cert_dir }}/{{ item.d }}"
|
|
state: hard
|
|
with_items:
|
|
- {s: "ca.pem", d: "ca_cert.crt"}
|
|
- {s: "node.pem", d: "cert.crt"}
|
|
- {s: "node-key.pem", d: "key.pem"}
|
|
|
|
- name: Canal | Set Flannel etcd configuration
|
|
command: |-
|
|
{{ bin_dir }}/etcdctl --peers={{ etcd_access_addresses }} \
|
|
set /{{ cluster_name }}/network/config \
|
|
'{ "Network": "{{ kube_pods_subnet }}", "SubnetLen": {{ kube_network_node_prefix }}, "Backend": { "Type": "{{ flannel_backend_type }}" } }'
|
|
delegate_to: "{{groups['etcd'][0]}}"
|
|
run_once: true
|
|
|
|
- name: Canal | Write canal configmap
|
|
template:
|
|
src: canal-config.yml.j2
|
|
dest: /etc/kubernetes/canal-config.yaml
|
|
|
|
- name: Canal | Write canal node configuration
|
|
template:
|
|
src: canal-node.yml.j2
|
|
dest: /etc/kubernetes/canal-node.yaml
|
|
|
|
- name: Canal | Copy cni plugins from hyperkube
|
|
command: "/usr/bin/docker run --rm -v /opt/cni/bin:/cnibindir {{ hyperkube_image_repo }}:{{ hyperkube_image_tag }} /usr/bin/rsync -a /opt/cni/bin/ /cnibindir/"
|
|
register: cni_task_result
|
|
until: cni_task_result.rc == 0
|
|
retries: 4
|
|
delay: "{{ retry_stagger | random + 3 }}"
|
|
changed_when: false
|
|
|
|
- name: Canal | Copy cni plugins from calico/cni
|
|
command: "/usr/bin/docker run --rm -v /opt/cni/bin:/cnibindir {{ calico_cni_image_repo }}:{{ calico_cni_image_tag }} sh -c 'cp -a /opt/cni/bin/* /cnibindir/'"
|
|
register: cni_task_result
|
|
until: cni_task_result.rc == 0
|
|
retries: 4
|
|
delay: "{{ retry_stagger | random + 3 }}"
|
|
changed_when: false
|