在K8S中,Service的Nodeport端口范围?

简介: 在K8S中,Service的Nodeport端口范围?

在Kubernetes中,NodePort是一种服务(Service)类型,它允许从集群外部访问服务。当创建一个NodePort类型的服务时,Kubernetes会在每个节点上打开一个静态端口(称为NodePort),所有发往该端口的流量都会被转发到服务后端的Pod。

默认情况下,Kubernetes为NodePort服务分配的端口范围是从30000到32767。这个范围是出于以下考虑:

  • 避免冲突:这个范围内的端口不太可能与集群内其他服务使用的端口发生冲突。
  • 符合标准:这个范围通常用于注册端口,意味着它们可以被分配给用户或用户级应用程序。

如果你希望使用特定的端口而不是让Kubernetes自动分配,你可以在创建Service时通过--port--target-port参数指定端口号。例如:

kubectl expose deployment/my-deployment --port=8080 --target-port=80 --type=NodePort

在这个例子中,--port=8080指定了NodePort服务在每个节点上监听的端口。如果你没有指定--port,Kubernetes将自动从默认的NodePort范围内选择一个未使用的端口。

如果你需要修改默认的NodePort范围,可以通过设置--service-node-port-range标志来启动API服务器。例如:

kube-apiserver --service-node-port-range=12000-22000

综上所述,将NodePort的范围设置为12000到22000。请注意,这个设置需要在集群启动时进行配置,并且所有API服务器实例必须使用相同的范围。

一旦设置了自定义的NodePort范围,Kubernetes将在这个范围内为NodePort服务分配端口。如果在这个范围内没有足够的端口可用,创建NodePort服务的操作将会失败,并提示没有可用端口。因此,如果你有很多NodePort服务,可能需要选择一个更大的范围来避免端口耗尽。

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
9月前
|
Kubernetes 容器
K8S的Service的LoadBanlance之Metallb解决方案
本文介绍了如何在Kubernetes中使用MetalLB来实现Service的LoadBalancer功能,包括MetalLB的部署、配置、以及通过创建地址池和部署服务来测试MetalLB的过程。
348 2
K8S的Service的LoadBanlance之Metallb解决方案
|
4月前
|
运维 分布式计算 Kubernetes
ACK One多集群Service帮助大批量应用跨集群无缝迁移
ACK One多集群Service可以帮助您,在无需关注服务间的依赖,和最小化迁移风险的前提下,完成跨集群无缝迁移大批量应用。
|
10月前
|
Kubernetes 网络安全 容器
在K8S中,有个服务使用service的nodeport进行暴露,发现访问不到如何排查?
在K8S中,有个服务使用service的nodeport进行暴露,发现访问不到如何排查?
|
10月前
|
Kubernetes 负载均衡 网络协议
在K8S中,Service的类型有哪几种,请说⼀下他们的用途?
在K8S中,Service的类型有哪几种,请说⼀下他们的用途?
|
10月前
|
开发框架 .NET Linux
【Azure 应用服务】 部署到App Service for Linux 服务的Docker 镜像,如何配置监听端口呢?
【Azure 应用服务】 部署到App Service for Linux 服务的Docker 镜像,如何配置监听端口呢?
126 0
|
10月前
|
SQL 网络协议 NoSQL
【Azure 应用服务】App Service/Azure Function的出站连接过多而引起了SNAT端口耗尽,导致一些新的请求出现超时错误(Timeout)
【Azure 应用服务】App Service/Azure Function的出站连接过多而引起了SNAT端口耗尽,导致一些新的请求出现超时错误(Timeout)
102 0
|
10月前
|
Kubernetes 负载均衡 网络协议
在K8S中,Service的类型有哪些?
在K8S中,Service的类型有哪些?
|
10月前
|
Kubernetes 网络协议 Docker
在K8S中,ip-cer-pod与docker原生端口映射有何区别?
在K8S中,ip-cer-pod与docker原生端口映射有何区别?
|
2月前
|
网络协议 安全 应用服务中间件
云服务器怎么开启被关闭的端口?手把手教你开启端口
在使用云服务器时,若发现某些服务无法访问,可能是端口被关闭。本文介绍了端口关闭的原因、检查方法及开启步骤。原因包括初始设置限制、防火墙规则和外部网络策略;可通过netstat或ss命令检查端口状态,用ufw、iptables或firewalld调整防火墙规则。最后提供了解决常见问题的建议,确保端口正常开放并可供外网访问。
580 9
|
4月前
|
SQL 关系型数据库 MySQL
云服务器常用端口作用
了解云服务器常用端口的作用有助于高效管理资源、快速定位问题及更好地使用云服务。常见端口包括:21(FTP,文件传输)、22(SSH,远程连接Linux)、25(SMTP,发送邮件)、80(HTTP,网页服务)、110/143(POP3/IMAP,接收邮件)、443(HTTPS,加密网页)、1433(SQL Server)、3306(MySQL)、3389(RDP,远程访问Windows桌面)和8080(代理服务)。
121 2

推荐镜像

更多