{% if k8.feature.loadbalancer %} - [ 'kubernetes-master:kube-api-endpoint', 'kubeapi-load-balancer:apiserver' ] {% else %} - [ 'kubernetes-master:kube-api-endpoint', 'kubernetes-worker:kube-api-endpoint' ] {% endif %} - [ 'kubernetes-master:certificates', 'easyrsa:client' ] - [ 'kubernetes-master:etcd', 'etcd:db' ] - [ 'kubernetes-master:kube-control', 'kubernetes-worker:kube-control' ] - [ 'kubernetes-worker:certificates', 'easyrsa:client' ] {% if k8.network.controller == 'ovn' %} - [ 'ovn:cni', 'kubernetes-master:cni' ] - [ 'ovn:cni', 'kubernetes-worker:cni' ] {% elif k8.network.controller == 'canal' %} - [ 'canal:etcd', 'etcd:db' ] - [ 'canal:cni', 'kubernetes-master:cni' ] - [ 'canal:cni', 'kubernetes-worker:cni' ] {% else %} - [ 'flannel:etcd', 'etcd:db' ] - [ 'flannel:cni', 'kubernetes-master:cni' ] - [ 'flannel:cni', 'kubernetes-worker:cni' ] {% endif %} - [ 'etcd:certificates', 'easyrsa:client' ] {% if k8.feature.loadbalancer %} - [ 'kubernetes-master:loadbalancer', 'kubeapi-load-balancer:loadbalancer' ] - [ 'kubernetes-worker:kube-api-endpoint', 'kubeapi-load-balancer:website' ] - [ 'kubeapi-load-balancer:certificates', 'easyrsa:client' ] {% endif %} {% if k8.feature.storage == 'ceph' %} - [ 'ceph-osd:mon', 'ceph-mon:osd' ] - [ 'ceph-mon:admin', 'kubernetes-master:ceph-storage' ] {% endif %}