ansible-role-kubernetes/templates/etc/firewalld/services/kubernetes.xml.j2

38 lines
1.2 KiB
Django/Jinja

<?xml version="1.0" encoding="utf-8"?>
<service>
<short>Kubernetes</short>
<description>Open needed Kubernetes ports.</description>
{% if kubernetes_master == false or kubernetes_master_taint == true %}
<port protocol="tcp" port="80"/>
<port protocol="tcp" port="443"/>
{% endif %}
{% if kubernetes_master == true %}
# Kubernetes API server, used by all
<port protocol="tcp" port="6443"/>
# etcd server client API, used by kube-apiserver and etcd
<port protocol="tcp" port="2379"/>
<port protocol="tcp" port="2380"/>
# Kubelet API, used by self and control plane
<port protocol="tcp" port="10250"/>
# kube-scheduler, used by self
<port protocol="tcp" port="10251"/>
# kube-controler-manager, used by self
<port protocol="tcp" port="10252"/>
# ???
<port protocol="tcp" port="10255"/>
{% else %}
<port protocol="tcp" port="10250"/>
{% endif %}
{% if kubernetes_network == "flannel" %}
# flannel vxlan
<port protocol="udp" port="8472"/>
{% elif kubernetes_network == "calico" %}
# calico
<port protocol="udp" port="4789"/>
<port protocol="tcp" port="5473"/>
{% elif kubernetes_network == "weave-net" %}
# Weave-Net
<port protocol="udp" port="6783-6784"/>
<port protocol="tcp" port="6783"/>
{% endif %}
</service>