Networking Kubernetes群集所需的端口
假设我想在裸机服务器上创建一个k8s集群,有1个主节点和2个节点。我必须在防火墙中打开哪些端口,以便主机和节点可以通过Internet进行通信?(我知道我可以使用VPN,但我只想知道我需要哪些端口)。我想我至少需要以下端口。我还需要更多吗?如果我用法兰绒或印花布呢?我想创建一个全面的列表,列出所有可能的k8s服务和所需的端口。多谢各位 kubectl-8080 ui-80或443或9090Networking Kubernetes群集所需的端口,networking,kubernetes,firewall,Networking,Kubernetes,Firewall,假设我想在裸机服务器上创建一个k8s集群,有1个主节点和2个节点。我必须在防火墙中打开哪些端口,以便主机和节点可以通过Internet进行通信?(我知道我可以使用VPN,但我只想知道我需要哪些端口)。我想我至少需要以下端口。我还需要更多吗?如果我用法兰绒或印花布呢?我想创建一个全面的列表,列出所有可能的k8s服务和所需的端口。多谢各位 kubectl-8080 ui-80或443或9090 etcd-23792380如果API服务器、etcd、计划程序和控制器管理器在同一台机器上运行,则在没有V
etcd-23792380如果API服务器、etcd、计划程序和控制器管理器在同一台机器上运行,则在没有VPN的情况下,需要公开打开的端口有: 主人
- 6443(如果TLS被禁用,则为8080) 从节点(kubelet、kube代理、pods)和用户(kubectl,…)到API服务器的客户端连接
- 10250(默认情况下不安全!) Kubelet端口,接受来自API服务器(主)的连接
如果使用NodePort服务或入口资源公开应用程序,则相应的端口也应在节点上打开。kubernetes的端口如下所示: 来自CoreOS。Kubernestes需要: 主节点: 工作节点(仆从):
非常感谢。所以,您不需要公开etcd?是和否:如果etcd在与API服务器相同的主机上独立运行,它可以在本地主机上侦听。如果您有一个单独的etcd集群(通常为3台主机),则应允许来自运行API服务器的主机的流量。在这种情况下,请确保在etcd上启用TLS,因为etcd默认不需要任何身份验证。再次感谢。那么,节点基本上只需要访问K2s主节点?这是真的,即使我使用法兰绒、印花布或编织?编辑,抱歉,“输入”张贴评论。为了澄清,如果我有3台服务器,它们都在互联网上。基本上,我需要打开的唯一端口是K8s的8080?109.74.199.100主机>:8080 109.74.199.101节点1 109.74.199.102节点2主机还必须在每个节点上建立与kubelet的连接,如我在回答中所述,Kubernetes网络上的防火墙应该完全禁用(要求可能因您选择的解决方案而异)对于weave,您需要6783/6784 tcp和UDPCA,请提供源代码的链接?非常感谢。官方文件这些官方文件是你获取好名单的最佳场所。上面没有“Used by”列,如果您真的想拥有一个安全的系统,而不仅仅是为每个人开放端口,那么这一点可能很重要。遗憾的是,关于这一点的官方文档没有那么直接地找到。CoreOS文档中提到的端口是否也适用于其他Kubernetes实现,例如kops、EKS、GKE?
TCP 6443* Kubernetes API Server
TCP 2379-2380 etcd server client API
TCP 10250 Kubelet API
TCP 10251 kube-scheduler
TCP 10252 kube-controller-manager
TCP 10255 Read-Only Kubelet API
TCP 10250 Kubelet API
TCP 10255 Read-Only Kubelet API
TCP 30000-32767 NodePort Services