零基础拿下云原生 CKA 认证
王雪飞
前东软高级工程师
567 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
零基础拿下云原生 CKA 认证
15
15
1.0x
00:00/00:00
登录|注册

09|网络篇:通过Service访问Pod

你好,我是雪飞。
前面我们学习了通过 Deployment 部署无状态应用 Pod,其中有些 Pod 中的应用是提供 Web 访问服务,所以需要通过网络访问到这些 Pod。
在部署 Pod 的时候,K8s 集群给它们分配了自己的 IP 地址,Pod 可以直接通过集群内部 IP 地址相互访问。但是我们还需要解决两个问题:
第一个是服务发现,K8s 中 Pod 的 IP 地址是动态分配的,每次 Pod 重启后都会重新分配一个内部 IP,因此无法使用固定的 IP 来访问 Pod。
第二个是负载均衡,Deployment 管理的 Pod 是多副本的,并且可以扩缩容,因此需要一个统一的访问入口将访问请求自动分配给这些 Pod 副本。为了解决这两个问题,Service 资源对象应运而生。

认识 Service

Service 是 K8s 中负责网络服务发现和负载均衡的资源对象,它定义了通过网络访问 Pod 的方式。当我们访问 Service 时,它自动将访问请求转发到相应的 Pod 上,然后由 Pod 上的应用处理访问请求。
Service 主要处理“服务发现”和“负载均衡”这两个重要问题。服务发现是指当 Pod 发生变化时(如故障重启、扩容缩容等),Service 仍能自动找到变化后的 Pod。负载均衡是指 Service 可以代理多个 Pod 的网络访问,通过一定机制把访问 Service 的请求自动分配到这些代理的 Pod 中。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. Service 是 K8s 中负责提供服务发现和负载均衡功能的资源对象,解决了服务发现和负载均衡的问题。 2. Service 有四种类型:ClusterIP、NodePort、LoadBalancer、ExternalName,分别用于不同的访问需求。 3. 不同类型的 Service 可以实现集群内部和集群外部的访问需求,如 ClusterIP 和 NodePort 用于集群内部访问,LoadBalancer 用于集群外部访问,ExternalName 用于引入集群外部的应用。 4. NodePort 类型允许在集群外部访问 Service,将 Service 的端口映射到每个节点的对应端口上,通过节点 IP 和端口来访问 Service。 5. LoadBalancer 类型需要使用第三方负载均衡器来生成一个 “External-IP”,然后通过 “External-IP” 来访问 Service,也允许通过节点 IP 和映射的节点端口来访问 Service。 6. ExternalName 类型的 Service 用于引入集群外部的应用,通过 ExternalName 属性指定外部应用的 URL 地址或者 IP 地址,然后就可以在集群内部访问此 Service 来访问外部的应用。 7. Service 可以配置多端口以代理 Pod 的不同端口,例如配置 HTTP 和 HTTPS 端口。 8. 通过 Service 的 DNS 域名访问可以实现集群内部的访问。 9. 了解了 Service 的不同类型和访问方式后,可以进一步学习 Ingress 资源对象,通过 Ingress 可以方便地配置 HTTPS 访问。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《零基础拿下云原生 CKA 认证》
新⼈⾸单¥59
立即购买
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部
文章页面操作
MAC
windows
作用
esc
esc
退出沉浸式阅读
shift + f
f11
进入/退出沉浸式
command + ⬆️
home
滚动到页面顶部
command + ⬇️
end
滚动到页面底部
⬅️ (仅针对订阅)
⬅️ (仅针对订阅)
上一篇
➡️ (仅针对订阅)
➡️ (仅针对订阅)
下一篇
command + j
page up
向下滚动一屏
command + k
page down
向上滚动一屏
p
p
音频播放/暂停
j
j
向下滚动一点
k
k
向上滚动一点
空格
空格
向下滚动一屏
播放器操作
MAC
windows
作用
esc
esc
退出全屏
⬅️
⬅️
快退
➡️
➡️
快进
空格
空格
视频播放/暂停(视频全屏时生效)