Kubernetes-部署可以有多个复制集吗?

Kubernetes-部署可以有多个复制集吗?,kubernetes,containers,microservices,Kubernetes,Containers,Microservices,刚读完奈杰尔·波尔顿的《库伯内特斯之书》。剩下的问题是,部署是否可以指定多个复制集 当我想到部署时,我想到的是传统意义上的整个应用程序的部署。或者每个微服务都有一个部署 apiVersion: apps/v1beta2 kind: Deployment metadata: name: hello-deploy spec: replicas: 10 selector: matchLabels: app: hello-world minReadySeconds:

刚读完奈杰尔·波尔顿的《库伯内特斯之书》。剩下的问题是,部署是否可以指定多个复制集

当我想到部署时,我想到的是传统意义上的整个应用程序的部署。或者每个微服务都有一个部署

apiVersion: apps/v1beta2
kind: Deployment
metadata: 
  name: hello-deploy
spec:
  replicas: 10
  selector:
    matchLabels:
      app: hello-world
  minReadySeconds: 10
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxUnavailable: 1
      maxSurge: 1
  template:
    metadata:
      labels:
        app: hello-world
    spec:
      containers:
      - name: hello-pod
        image: nigelpoulton/k8sbook : latest
        ports:
        - containerPort: 8080

部署包含一个pod模板,每个修订版生成一个replicaset,这意味着每个微服务的部署

您还可以管理每种微服务类型的“已部署服务”数量。 因此,例如,如果您要部署服务A(带有Java服务的Docker映像)5次,那么部署将产生5个pod。每个吊舱都包含服务A的图像

如果您部署此服务的新版本a(带有Java服务的Docker映像),Kubernetes能够进行滚动更新并管理旧Java服务类型(现有POD)的关闭,并使用新Java服务a.2(新Docker映像)创建5个新POD


因此,您的整个微服务应用程序/基础架构都是基于多个部署构建的。每个生成的Kubernetes吊舱由Kubernetes services发布。

每个微服务的部署是常见的;一个真正的应用程序可能由几个指向它们的POD的相关部署和服务组成。好吧,部署这个名称很不幸,但至少你可以升级一个微服务YUP。。。但请注意。如果您开始添加Spinnaker.io来协调Kubernetes集群,它会变得更好。Kubernetes Deployments=Spinnaker Spinnaker群集,其中包含Spinnaker服务器组。欢迎来到持续部署的世界!:)