kubernetes-Service服务发现

本文深入探讨Kubernetes Service,介绍其作为Pod集合抽象的角色,包括ClusterIP、NodePort、LoadBalancer等类型。讲解了Service模型、Endpoint Controller、Kube-proxy的工作原理,以及如何进行服务发现。此外,还涵盖了Headless Service的创建和使用,以及集群内的DNS服务,如CoreDNS的运行和解析。最后,通过实例展示了如何创建和测试Service。
摘要由CSDN通过智能技术生成

目录

一、Service基本概念

1、Pod的特征

  1. Pod等资源的概念

2.解决pod进行如此多变化时的解决方案

2、Service

  1. Kubernetes Service 定义了这样一种抽象:

  2. Service的实现类型

3、Service模型

4、Endpoint Controller

5、Kube-proxy iptables

6、Kube-proxy IPVS

二、服务发现

1、创建后端Deployment

2、创建Service

3、整理文件并创建

4、查看Service

  1. 查看service简明信息,可以获取service提供服务的ip地址和端口

2.测试service是否正常提供服务

  1. 使用describe命令可以查看service详细信息

5、创建可供外部访问的Service

三、集群中的DNS

1、CoreDNS

2、查看服务的完整域名

3、DNS记录

四、Headless Service(无头服务)

1、Headless Service

2、创建Headless Service

3、使用Headless Service

1.查看Headless Service的信息,可以看到没有IP地址

2.使用的时候利用DNS功能,通过访问“Headless-svc”或“headless-svc.default”来访问服务

一、Service基本概念 1、Pod的特征 1. Pod等资源的概念
①.Pod有自己独立的IP

②.Pod可以被创建,销毁

③.当扩容时,pod的数量会发生变更(可以扩、缩容)

④.当pod故障时,replicaset会创建新的pod

2.解决pod进行如此多变化时的解决方案
一组pod对应一个服务,通过服务访问后端

2、Service 1. Kubernetes Service 定义了这样一种抽象:
逻辑上的一组Pod,一种可以访问它们的策略 — — 通常称为微服务。

    这一组Pod能够被Service访问到,通常是通过Label Selector 实现的
  1. Service的实现类型
    ClusterIP 提供一个集群内部的虚拟IP地址以供Pod访问(默认模式),只能供内部使用
    NodePort 在Node上打开一个端口以供外部访问
    LoadBalancer 通过外部的负载均衡器来访问
    官网(如何发布服务): 服务(Service) | Kubernetes

3、Service模型
每个节点都有一个Kube-Proxy服务,负责iptables(路由);

Endpoint Controller负责映射关系,通过其知道内部IP地址,内部IP映射到服务

最终通过Kube-proxy组件进行工作

4、Endpoint Controller
1.负责生成和维护所有endpoint对象的控制器
2.负责监听service和对应pod的变化
3.监听到service被删除,则删除和该service同名的endpoint对象
4.监听到新的service被创建,

则根据新建service信息获取相关pod列表,然后创建对应endpoint对象

5.监听到service被更新,

则根据更新后的service信息获取相关pod列表,然后更新对应endpoint对象

6.监听到pod事件,则更新对应的service的endpoint对象,将pod IP 记录到endpoint中

endpoint其实就是个列表

5、Kube-proxy iptables
集群内部的Client可以访问服务IP,通过服务IP可以找到集群内部的Pod

6、Kube-proxy IPVS
从k8s的1.8版本开始,kube-proxy引入了IPVS模式,IPVS模式与iptables实现方式类似,但是采用的hash表,因此当service数量达到一定规模时,hash查表的速度优势就会显现出来,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值