首页 > 编程语言 >Kubernetes--NodePort类型的Service资源

Kubernetes--NodePort类型的Service资源

时间:2022-10-06 13:55:26浏览次数:64  
标签:Kubernetes Service -- 端口 NodePort myapp 类型 节点

NodePort类型的Service资源

NodePort即节点Port,通常在安装部署Kubernetes集群系统时会预留一个端口范围用于NodePort,默认为30000~32767之间的端口。与ClusterIP类型的可省略.spec.type属性所不同的是,定义NodePort类型的Service资源时,需要通过此属性明确指定其类型名称。

例如,下面的配置清单中定义的Service资源对象myapp-svc-nodeport,它使用了NodePort类型,且人为指定其节点端口为32223:


kind: Service
apiVersion: v1
metadata:
  name: myapp-svc-nodeport
spec:
  type: NodePort
  selector:
    app: myapp
  ports:
  - protocol: TCP
    port: 80
    targetPort: 80
    nodePort: 32223

 

实践中,并不建议用户使用自定义使用的节点端口,除非事先能够明确知道它会不会与某个现存的Service资源产生冲突。无论如何,只要没有特别需求,留给系统自动配置总是较好的选择~

使用创建命令创建上面的Service对象后即可了解其运行状态:

]$ kubectl get services myapp-svc-nodeport 
NAME                 TYPE       CLUSTER-IP      EXTERNAL-IP   PORT(S)        AGE
myapp-svc-nodeport   NodePort   10.108.234.17   <none>        80:32223/TCP   12m

命令结果显示,NodePort类型的Service资源依然会被配置ClusterIP,事实上,它会作为节点从NodePort接入流量后转发的目标地址,目标端口则是与Service资源对应的spec.ports.port属性中定义的端口。【请求流量转发过程大家可自行搜索详细过程这里我就不多做解释了

因此呢,对于集群外部的客户端来说,它们可经由任何一个节点的节点IP及端口访问NodePort类型的Service资源,而对于集群内的Pod客户端来说,依然可以通过ClusterIP对其进行访问。NodePort类型就是在工作节点的IP地址上选择一个端口用于将集群外部的用户请求转发至目标Service的ClusterIP和Port,因此,这种类型的Service既可如ClusterIP一样受到集群内部客户端Pod访问。

 

标签:Kubernetes,Service,--,端口,NodePort,myapp,类型,节点
From: https://www.cnblogs.com/zhangxin9/p/16757479.html

相关文章

  • 云平台和产品:建设方案与实施计划
            春去秋来,岁月如梭,光阴似箭,不曾察觉从事计算机编程已有12个年头,我想可以自称为一名程序员老鸟。作为一只老鸟,感触颇多,因为没有留下什么值得怀念的......
  • Ubuntu mariadb数据库安装
    1、安装数据库服务器和客户端sudoapt-getinstallmariadb-servermariadb-client2、安装Mariadb信息查询sudoaptinstalllibmariadb-dev-compat3、makefil......
  • ubuntu开启热点
    wlan1添加ip地址ipaddradd192.168.1.1/24devwlan1broadcast192.168.1.255dnsmasq配置文件#wlan1domain=mi6.dnsmasq.cominterface=wlan1dhcp-host=192.16......
  • docker搭建可道云
    拉取kodbox镜像[root@docker~]#dockerpullkodcloud/kodboxUsingdefaulttag:latestlatest:Pullingfromkodcloud/kodboxlatest:Pullingfromkodcloud/kodbox......
  • Java方法(递归)
    递归就是A方法调用A方法,就是自己调用自己利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求......
  • IfcHeatFluxDensityMeasure
    IfcHeatFluxDensityMeasure类型定义IfcHeatFluxDensityMeasure是对物体内热流密度的测量。通常以W/m2(J/sm2)为单位测量。类型:REALIFC2.0中的新类型。 EXPRESSSpec......
  • 注册功能页面的搭建
    思路分析注册页面需要对用户提交的数据进行校验,并且需要对用户输入错误的地方进行提示!所有我们需要使用forms组件搭建注册页面!平时我们书写form是组件的时候是在views.p......
  • 1.7 数据结构_字典 增删改,字典的遍历 key和value
    #字典的增删改  #获取值元素:dict_size[key]  #新增元素:dict_size[key]=value  #修改元素:dict_size[key]=new_value #删除元素:deldict_size[key]#字典......
  • Python: Factory Method Pattern
     #Python3.9#工厂方法模式FactoryMethodPatternfrom__future__importannotationsfromabcimportABC,abstractmethodimportpygame#pipinstallpyg......
  • 减少回流与重绘
    一、前情回顾在讨论回流与重绘之前,我们要知道:浏览器使用流式布局模型(FlowBasedLayout)。浏览器会把HTML解析成DOM,把CSS解析成CSSOM,DOM和CSSOM合并就产生了Render......