45 lines
1.4 KiB
Django/Jinja
45 lines
1.4 KiB
Django/Jinja
---
|
|
apiVersion: kubeadm.k8s.io/v1beta3
|
|
kind: JoinConfiguration
|
|
discovery:
|
|
{% if kubeadm_use_file_discovery %}
|
|
file:
|
|
kubeConfigPath: {{ kube_config_dir }}/cluster-info-discovery-kubeconfig.yaml
|
|
{% else %}
|
|
bootstrapToken:
|
|
{% if kubeadm_config_api_fqdn is defined %}
|
|
apiServerEndpoint: {{ kubeadm_config_api_fqdn }}:{{ loadbalancer_apiserver.port | default(kube_apiserver_port) }}
|
|
{% else %}
|
|
apiServerEndpoint: {{ kubeadm_discovery_address }}
|
|
{% endif %}
|
|
token: {{ kubeadm_token }}
|
|
{% if kubeadm_ca_hash.stdout is defined %}
|
|
caCertHashes:
|
|
- sha256:{{ kubeadm_ca_hash.stdout }}
|
|
{% else %}
|
|
unsafeSkipCAVerification: true
|
|
{% endif %}
|
|
{% endif %}
|
|
timeout: {{ discovery_timeout }}
|
|
tlsBootstrapToken: {{ kubeadm_token }}
|
|
caCertPath: {{ kube_cert_dir }}/ca.crt
|
|
{% if kubeadm_cert_controlplane is defined and kubeadm_cert_controlplane %}
|
|
controlPlane:
|
|
localAPIEndpoint:
|
|
advertiseAddress: {{ kube_apiserver_address }}
|
|
bindPort: {{ kube_apiserver_port }}
|
|
certificateKey: {{ kubeadm_certificate_key }}
|
|
{% endif %}
|
|
nodeRegistration:
|
|
name: '{{ kube_override_hostname }}'
|
|
criSocket: {{ cri_socket }}
|
|
{% if 'calico_rr' in group_names and 'kube_node' not in group_names %}
|
|
taints:
|
|
- effect: NoSchedule
|
|
key: node-role.kubernetes.io/calico-rr
|
|
{% endif %}
|
|
{% if kubeadm_patches | length > 0 %}
|
|
patches:
|
|
directory: {{ kubeadm_patches_dir }}
|
|
{% endif %}
|