首页 >>  正文

K8s暴露内部服务的多种方式

来源:www.zuowenzhai.com    作者:编辑   日期:2024-05-28

测试yaml:

测试yaml:

端口转发利用的是Socat的功能,这是个神奇的工具,你值得拥有: Socat

之前都是直接将pod上的应用暴露出去,这种方式在实际的生产环境中基本不可取,标准的搞法是基于Service。

Service有三种类型:ClusterIP、NodePort、LoadBalancer。

首先,先了解下Service中端口的概念:

port/nodeport/targetport

port ——Service暴露在Cluster IP上的端口,也就是虚拟IP要绑定的端口。port是提供给集群内部客户端访问Service的入口。

nodeport ——K8s集群暴露给集群外部客户访问Service的入口。

targetport ——是Pod内容器的端口。从port和nodeport上进入的数据最终会经过Kube-proxy流入到后端pod里容器的端口,如果targetport没有显示声明,那么会默认转发到Service接受请求的端口(和port端口保持一致)。

通过Service暴露内部服务的方式有四种:ClusterIP、NodePort、LoadBalancer、Ingress

ClusterIP其实是Service的缺省类型,就是默认类型,例如之前部署的dashboard插件其实就使用是这种类型,可以通过如下指令来分辨:

所以,这种类型的Service本身是不会对集群外暴露服务的,但是却单单可以通过K8s Proxy API来访问。Proxy API是一种特殊的API,Kube-APIServer只代理这类API的HTTP请求,然后将请求转发到某个节点上的Kubelet进程监听的端口上,最后有该端口上的REST API响应请求。

在集群外部访问,需要借助于kubectl,所以集群外的节点必须配置了经过认证的kubectl,可以参看kubectl的配置章节:

这种方式要求访问节点必须具备受认证的kubectl,所以只能用做调试使用。

NodePort是基于ClusterIP的方式来暴露服务的,不过不需要kubectl的配置,他是在每一个node上都监听同一个端口,该端口的访问都会被引导到Service的ClusterIP,后续的方式和ClusterIP的方式是一样的,例子如下:

访问nodeIP:NodePort的时候出现了pod所在的node是OK的,其他的Node访问被拒绝,原因和Docker的版本有关,参看 kubernets nodeport 无法访问 ,解决方案就是在其他的Node上修改FORWARD的链生成规则:

这样就可以访问了:

只能在Service上定义,LoadBalancer是一些特定公有云提供的负载均衡器,需要特定的云服务商提供,比如:AWS、Azure、OpenStack 和 GCE (Google Container Engine) 。这里略过不谈。

与之前的暴露集群Service的方式都不同,Ingress其实不是一种服务。它位于多个服务之前,充当集群中的智能路由器或入口点。类似于Nginx提供的反向代理,其实官方推荐的方式就是Nginx的实现方式。这里以Nginx-Ingress的思路来构建。

Ingress的功能需要两个部分组成,一个是Nginx做网络的7层路由,一个是Ingress-controller来监听ingress rule的变化实时更新nginx的配置,所以在k8s的集群里为了实现Ingress都必须要部署一个Ingress-controller的pod,可以使用官网的套路:

到这一步,Ingress的集群配置已经做完了,接下来进行测试,通过Ingress暴露两个内部的Nginx服务:

然后,给这两个服务配置Ingress规则:




17628575589在日常工作中怎么样实施8S?
单信娥答:通过8S管理,使企业得到更好的发展,让投资者获得最大的投资回报;2、客户满意:通过8S管理,企业就会生产出技术含量高、产品质量好的产品;3、业主满意:通过8S管理,可以降低了生产成本,又能按时按量地完成生产任务;4、员工满意:一个企业的效益好,那么它的员工生活就非常丰富,而人性化的管理又使每个员工有一种成就感和...

176285755898s管理细则的“8S”管理方法
单信娥答:整理:区分可用与不可用,处理不可用的物品。整顿:将可用的物品,依定容、定量、定位的方式处理。清洁:反复贯彻整理、整顿、清扫的骤,保持清洁。服务:提供百分之百顾客满意的亲切服务。速度:超载自己完成工作的时间,并兼顾品质。

17628575589企业数据泄密、商业机密泄漏的几种途径
单信娥答:3.外部竞争对手窃密 竞争对手采用收买方式,买通企业内部人员,让内部人员把重要信息发送竞争方,从而窃取机密的情况也非常多。这种方式直接损害了企业的核心资产,给企业带来致命的打击。4.黑客和间谍窃密 目前国际国内许多黑客和间谍,通过层出不穷的技术手段,窃取国内各种重要信息,已经成为中国信息安全的...

17628575589在社区照顾的服务形式有多种,分为
单信娥答:在社区照顾的服务形式主要分为以下几种:1、将被照顾者迁回他们熟悉的社区中的家庭里生活,并辅以社区支援性服务,如家务助理、社区护士及社区中心等。2、将社区内的大型机构改造为更接近社区的小型机构,如老人庇护所、小型儿童之家等。3、将远离市区的大型机构迁回社区内,使服务对象有机会接触社区,方便亲友探访见面。

17628575589BRAS设备是什么东西来的?
单信娥答:BRAS设备是宽带接入服务器。宽带接入服务器是面向宽带网络应用的新型接入网关,它位于骨干网的边缘层,可以完成用户带宽的IP/ATM网的数据接入。实现商业楼宇及小区住户的宽带上网、基于IPSec的IP VPN服务、构建企业内部Intranet、支持ISP向用户批发业务等应用。

17628575589服务器和存储的带外管理的告警方式有哪些
单信娥答:第N+2条指令将处在第一个处理阶段。这种指令的流水线处理方式使得CPU有并行处理指令的能力,这使处理器能够在单位时间内处理更多的指令。IA架构的服务器采用的是CISC体系结构,即复杂指令集体系结构,这种体系结构的特点是指令较长,指令的功能较强。控制台服务器 SecureLinx SLC控制台服务器通过把机房...

176285755895S管理的内容是什么?
单信娥答:定义:必需品依规定定位、定方法摆放整齐有序,明确标示。目的:不浪费时间寻找物品,提高工作效率和产品质量,保障生产安全。3,清扫:定义:清除现场内的脏污、清除作业区域的物料垃圾。目的:清除“脏污”,保持现场干净、明亮。4,清洁:定义:将整理、整顿、清扫实施的做法制度化、规范化,维持其成果。...

17628575589如何制定生产管理改善计划
单信娥答:要注重生产中技术积累与创新方面的基本工作,在细节上认真对待每一个步骤,在生产控制、计划、组织、指挥、协调等各个方面做到细致、细心。2.生产设备 要注意好设备在细节方面的优化和改进,注意整个生产过程中相关设备的衔接情况,在采用先进设备的时侯最好也要注意一下生产设备的环境维护工作。3.员工素质 ...

17628575589拒绝服务攻击的原理
单信娥答:SYN Flood是当前最流行的DoS(拒绝服务攻击)与DDoS(Distributed Denial Of Service分布式拒绝服务攻击)的方式之一,这是一种利用TCP协议缺陷,发送大量伪造的TCP连接请求,使被攻击方资源耗尽(CPU满负荷或内存不足)的攻击方式。SYN Flood攻击的过程在TCP协议中被称为三次握手(Three-way Handshake),而SYN Flood拒绝服务攻击...

17628575589云服务的四种部署方式
单信娥答:公有云。私有云,混合云,行业云。云服务产品大可归结到三层服务模式之中,但推及到云计算的商业化落地,必须要根据不同的场景,来提供不同的部署方式,例如一个学生党可能只需要一台服务器来做一些实验,那只想为这台服务器付费,一个银行涉及到数据安全,对于保密和隐私比较看重。


(编辑:胡叙媛)
联系方式:
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图
@ 作文摘要网