k8 sdeployment和service区别

本人github

在Kubernetes中,Deployment和Service是两种不同的资源类型,它们各自承担着不同的角色和职责:

Deployment

  • Deployment是一个高级的Kubernetes资源,用于描述应用的期望状态,包括应用使用的镜像、副本数量等。
  • 它负责确保指定数量的Pod副本始终处于运行状态。
  • Deployment通过创建和管理一组Pod(实际运行应用的容器集合)来维护应用的状态。
  • 它支持声明式的更新,可以帮助你实现应用的滚动更新、回滚等操作。
  • Deployment是自愈的,如果Pod失败,Deployment会自动替换它。

Service

  • Service是一个定义了如何访问一组特定Pod的抽象层。
  • 它为Pod组提供了一个稳定的IP地址和端口号,即使Pod的实例发生变化,这个IP地址和端口号也不会改变。
  • Service通过选择器(Selector)来确定它代理的Pod集合。
  • 它可以提供负载均衡,将外部或内部的请求分发到后端的多个Pod。
  • Service使得Pod可以被外部访问(如通过NodePort或LoadBalancer类型的Service),也可以在集群内部提供服务发现。

简而言之,Deployment负责部署和管理Pod,而Service负责定义如何访问这些Pod。在实际使用中,通常会同时使用Deployment和Service来部署和访问应用。

猜你喜欢

转载自blog.csdn.net/m0_57236802/article/details/135379541