k8s调度

- Service存在的意义

1. 防止Pod失联(服务发现)
2. 定义一组Pod的访问策略(负载均衡)

- Pod与Service的关系

1. 通过label-selector相关联
2. 通过Service实现Pod的负载均衡( TCP/UDP 4层)

image

- Service三种常用类型

  1. ClusterIP:默认,分配一个稳定的IP地址,即VIP,只能在集群内部访问(同Namespace内的Pod)
    image

  2. NodePort:在每个节点上启用一个端口来暴露服务,可以在集群外部访问。也会分配一个稳定内部集群IP地址。
    image

  3. LoadBalancer:与NodePort类似,在每个节点上启用一个端口来暴露服务。除此之外,Kubernetes会请求底层云平台上的负载均衡器,将每个Node([NodeIP]:[NodePort])作为后端添加进去。
    image

- Ingress为弥补NodePort不足而生

NodePort存在的不足:
1. 一个端口只能一个服务使用,端口需提前规划
2. 只支持4层负载均衡

- Ingress

Ingress 公开了从集群外部到集群内服务的HTTP和HTTPS路由。流量路由由Ingress资源上定义的规则控制。

- Ingress Contronler怎么工作的?

Ingress Contronler通过与 Kubernetes API 交互,动态的去感知集群中 Ingress 规则变化,然后读取它,按照自定义的规则,规则就是写明了哪个域名对应哪个service,生成一段 Nginx 配置,应用到管理的Nginx服务,然后热加载生效。以此来达到Nginx负载均衡器配置及动态更新的问题。
posted @ 2022-03-13 17:13  曾某某scau  阅读(67)  评论(0编辑  收藏  举报