您当前的位置:首页 > 电脑百科 > 站长技术 > 服务器

kubernetes ingress配置转发端口

时间:2022-01-21 09:31:14  来源:  作者:爱思考乔斯林0H0

Ingress配置转发端口本质

Ingress配置转发端口本质,还是利用service nodePort能力,通过暴露ingress的本地端口来转发。

Ingress默认不支持TCP or UDP services。因此Ingress controller使用--tcp-services-configmap和--udp-services-configmap这两个配置达到转发端口的目的。

(文中采用阿里云kubernetes v1.16.9)

检查一下这两个配置是否开启:

kubectl get deployment Nginx-ingress-controller -n kube-system -o yaml

kubernetes ingress配置转发端口

 

如图所示,已经开启了,同时表明了,后面需要修改对应 tcp-services configmap

创建hello Tomcat

创建一个 namespaces,这个namespaces跟后面的 deployment和service,还有tcp-services configmap都有关系。

kubectl create ns dev

部署一个tomat应用kubectl create -f deployment-hello.yaml

# cat deployment-hello.yaml 
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: hello
  namespaces: dev
spec:
  replicas: 4
  template:
    metadata:
      labels:
        run: hello
    spec:
      containers:
       - name: hello
         image: tomcat:8
         imagePullPolicy: Always
         ports:
         - name: http
           containerPort: 8080

创建一个service,kubectl create -f service-hello.yaml

#cat service-hello.yaml 
apiVersion: v1
kind: Service
metadata:
  name: hello
  labels:
    name: hello
  namespaces: dev
spec:
  clusterIP: "None"
  ports:
  - port: 8080
    targetPort: 8080
    protocol: TCP
  selector:
    run: hello

ingress-nginx-lb service

修改 namespace 为 kube-system 下的 ingress-nginx-lb service:

注意:

port可以改成其他端口,比如18080

targetPort要跟后面的tcp-services configmap配置保持一致,都是8080

 

kubectl edit svc/nginx-ingress-lb -n kube-system
- name: hello
    port: 18080
    protocol: TCP
    targetPort: 8080
kubernetes ingress配置转发端口

 

 

再去看这个nginx-ingress-lb,发现回自动给你添加一个nodePort: 32031。

 

kubernetes ingress配置转发端口

 

看看是不是配置成功kubectl get svc -n kube-system

kubernetes ingress配置转发端口

 

修改 tcp-services configmap

修改 namespace kube-system 下的 tcp-service configmap,添加配置:

kubectl edit configmap/tcp-services -n kube-system
data:
  8080: dev/hello:8080

在配置data之前,你需要一个deploy+service来

其中 configmap data 的格式为: <namespace/service name>:<service port>:[PROXY]:[PROXY]

kubernetes ingress配置转发端口

 

通过阿里云提供的 EXTERNAL-IP,也就是 对应阿里云负载均衡的外网IP,即可访问:

http://EXTERNAL-IP:18080

 

同时检查一下阿里云对应的负载均衡,发现对应的端口已经自动监听了,不用再手工在页面上处理。

kubernetes ingress配置转发端口

 

 

kubernetes ingress配置转发端口

 

 

 

参考

  1. ingress-nginx Exposing TCP and UDP https://blog.csdn.net/hxpJAVA1/article/details/86756970
  2. k8s ingress配置转发tcp流量 https://blog.csdn.net/w851685279/article/details/115911686
  3. nginx ingress controller 之 TCP service https://zhuanlan.zhihu.com/p/102857596
  4. kubernetes发布tomcat服务,通过deployment,service布署 https://www.cnblogs.com/pu20065226/p/10644272.html


Tags:kubernetes   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
Ingress配置转发端口本质Ingress配置转发端口本质,还是利用service nodePort能力,通过暴露ingress的本地端口来转发。Ingress默认不支持TCP or UDP services。因此Ingress con...【详细内容】
2022-01-21  Tags: kubernetes  点击:(15)  评论:(0)  加入收藏
1Kubernetes 集群架构图 2Openshift or Kubernetes 集群架构图 3常见的 CI/CD 架构图1. Gitlab Webhook + Jenkins SharedLibraries/Kubernetes + SonarScanner Maven Plugi...【详细内容】
2022-01-18  Tags: kubernetes  点击:(9)  评论:(0)  加入收藏
流水线(Pipeline)是把一个重复的过程分解为若干个子过程,使每个子过程与其他子过程并行进行的技术。本文主要介绍了诞生于云原生时代的流水线框架 Argo。 什么是流水线?在计算机...【详细内容】
2021-11-30  Tags: kubernetes  点击:(32)  评论:(0)  加入收藏
当我们通过kubectl来查看、修改Kubernetes资源时,有没有想过后面的接口到底是怎样的?有没有办法探查这些交互数据呢?Kuberenetes客户端和服务端交互的接口,是基于http协议的。所...【详细内容】
2021-11-23  Tags: kubernetes  点击:(62)  评论:(0)  加入收藏
在今年的NGINX Sprint 2.0虚拟大会上,NGINX(来自流行的开源web服务器/负载均衡器和反向代理背后的公司F5),发布了NGINX现代应用参考架构(MARA)。该公司在一篇博客文章中说,这将帮...【详细内容】
2021-09-26  Tags: kubernetes  点击:(73)  评论:(0)  加入收藏
虚拟节点(Virtual Node)实现了Kubernetes与弹性容器实例ECI的无缝连接,让Kubernetes集群轻松获得极大的弹性能力,而不必受限于集群的节点计算容量。您可以灵活动态的按需创建ECI...【详细内容】
2021-04-15  Tags: kubernetes  点击:(240)  评论:(0)  加入收藏
针对越来多的Kubernetes容器云,对Kubernetes集群的故障排查却成了一个棘手问题。本文虫虫给大家以直观图示方式介绍如何排查Kubernetes的故障。该篇是系列文章续&mdash;&mdas...【详细内容】
2020-12-22  Tags: kubernetes  点击:(136)  评论:(0)  加入收藏
在过去几年,Kubernetes 在容器编排市场独占鳌头。自 2016 年以来,Docker Swarm 就退出了主要竞争者的行列,并且像 AWS 一样承诺对 K8s 进行支持和集成,换句话说,它承认了失败。目...【详细内容】
2020-11-30  Tags: kubernetes  点击:(133)  评论:(0)  加入收藏
写在前面要出发周边游(以下简称要出发)是国内知名的主打「周边游」的在线旅行网站,为了降低公司内部各个业务模块的耦合度,提高开发、交付及运维效率,我们在 2017 年就基于 Sprin...【详细内容】
2020-11-27  Tags: kubernetes  点击:(164)  评论:(0)  加入收藏
kubernetes的集群搭建有多种方式:二进制、kubeadm、ansible自动化、minikube。minikube方式比较简单,但是只是单节点,适合学习kubernetes基础的时候使用。其他的方式安装都会...【详细内容】
2020-11-10  Tags: kubernetes  点击:(121)  评论:(0)  加入收藏
▌简易百科推荐
需要在服务器上实现个TCP服务器, 由于已安装了nginx, 所以在nginx中给TCP开个口子。stream模块网上文章的说法都是, 1.9.0版之后nginx开始具有TCP/UDP的代理转发功能, 但需...【详细内容】
2022-01-25  有AI野心的电工和码农    Tags:nginx   点击:(3)  评论:(0)  加入收藏
奇葩的要求年年有,这个要求特别怪,跑路的网管有这么可怕吗?付费让我们重置了防火墙,还要求我们重建域服务器和文件服务器。等我们建立好域控,部署完文件服务器,权限也设置完毕,却又...【详细内容】
2022-01-25  IT狂人日志    Tags:服务器   点击:(2)  评论:(0)  加入收藏
Ingress配置转发端口本质Ingress配置转发端口本质,还是利用service nodePort能力,通过暴露ingress的本地端口来转发。Ingress默认不支持TCP or UDP services。因此Ingress con...【详细内容】
2022-01-21  爱思考乔斯林0H0    Tags:kubernetes   点击:(15)  评论:(0)  加入收藏
对于普通人来说,云计算是一个离我们很近,同时离我们也很远的存在。之所以说它“近”,是因为云计算的应用已经深入到我们生活的方方面面,由云服务器所承载的各类程序应用已经无处...【详细内容】
2022-01-14    中关村在线  Tags:云服务器   点击:(10)  评论:(0)  加入收藏
很多站长都发现了同一问题,就是网站使用时间长了,卡顿延迟的问题越来越明显。我们可以看看是不是网站的虚拟主机流量被限制了。很多站长可能不知道,虚拟主机被限制流量是什么回...【详细内容】
2022-01-10  群英网络  搜狐号  Tags:流量限制   点击:(23)  评论:(0)  加入收藏
不知道站长们在使用云服务器的时候有没有遇到过卡顿或者无法访问的情况呢?这个时候我们应该考虑是不是云服务器的流量超限。那么如果云服务器出现流量超限我们要做什么呢?有哪...【详细内容】
2022-01-10  群英网络  搜狐号  Tags:服务器流量   点击:(23)  评论:(0)  加入收藏
云服务器使用时间越长,上面积累的文件也就越多,特别是做网站的云服务器,网站的数据不断更新,服务器的内存空间就这么大,一直不断消耗,总是会消耗殆尽的。定期做好云服务器的内容管...【详细内容】
2022-01-10  群英网络    Tags:云服务器   点击:(24)  评论:(0)  加入收藏
虚拟主机:一台服务器通过虚拟技术将有限的虚拟空间给切割成若干个小的虚拟空间,每个虚拟空间就是一台虚拟主机。每台虚拟主机都是有独立的域名和IP地址的,并且具有完整的Intern...【详细内容】
2022-01-10  科技鉴解    Tags:云服务器   点击:(24)  评论:(0)  加入收藏
独立IP虚拟主机就是虚拟主机配置独立IP,独立IP虚拟主机是很多人都喜欢用的主机,但还有一些新手站长对独立IP虚拟主机还不太了解,关于独立IP虚拟主机的好处和缺点还不清楚。今天...【详细内容】
2022-01-10  群英网络    Tags:虚拟主机   点击:(18)  评论:(0)  加入收藏
Netty自己的ByteBufByteBuf是为了解决ByteBuffer的问题和满足网络应用程序开发人员的日常需求而设计的.JDK中ByteBuffer的缺点: 无法动态扩容 长度是固定的,不能动态扩展和...【详细内容】
2022-01-07  互联网高级架构师    Tags:Netty   点击:(21)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条