#! /usr/bin/bash {% if kube_network_plugin == "calico" %} # This node's IPv4 address CALICO_IPAM=true DEFAULT_IPV4={{ip | default(ansible_default_ipv4.address) }} # The kubernetes master IP {% if loadbalancer_apiserver is defined and apiserver_loadbalancer_domain_name is defined %} KUBERNETES_MASTER=https://{{ apiserver_loadbalancer_domain_name }}:{{ loadbalancer_apiserver.port }} {% else %} KUBERNETES_MASTER={{ hostvars[groups['kube-master'][0]]['ip'] | default(hostvars[groups['kube-master'][0]]['ansible_default_ipv4']['address']) }} {% endif %} # Location of etcd cluster used by Calico. By default, this uses the etcd # instance running on the Kubernetes Master ETCD_AUTHORITY="127.0.0.1:2379" #{% if inventory_hostname in groups['etcd'] %} #ETCD_AUTHORITY="127.0.0.1:2379" #{% else %} #ETCD_AUTHORITY="127.0.0.1:23799" #{% endif %} # The kubernetes-apiserver location - used by the calico plugin {% if loadbalancer_apiserver is defined and apiserver_loadbalancer_domain_name is defined %} KUBE_API_ROOT=https://{{ apiserver_loadbalancer_domain_name }}:{{ loadbalancer_apiserver.port }}/api/v1/ {% else %} KUBE_API_ROOT=https://{{ hostvars[groups['kube-master'][0]]['ip'] | default(hostvars[groups['kube-master'][0]]['ansible_default_ipv4']['address']) }}:{{kube_apiserver_port}}/api/v1/ {% endif %} {% else %} FLANNEL_ETCD_PREFIX="--etcd-prefix=/{{ cluster_name }}/network" {% endif %} {% if calico_token is defined | default('') %} KUBE_AUTH_TOKEN={{ calico_token.content|b64decode }} {% endif %}