Raj*_*Raj 41 deployment containers kubernetes google-kubernetes-engine kubernetes-pod
我想通过k8s Deployment对象管理我的部署来部署应用程序集群.文档让我非常困惑.我的基本布局具有以下可独立扩展的组件:
从技术上讲,以上所有4个属于独立缩放的独立窗格.
我的问题是:
pod.yml文件然后以某种方式在deployment.yml文件中引用它们,或者部署文件是否也可以嵌入pod定义?spec部分Deployment相当于定义一个 pod.那是对的吗?如果我想以声明方式描述多pod部署,该怎么办?我是否需要多个deployment.yml文件?Osw*_*ann 40
Pagids答案有大部分基础知识.您应该Deployments为您的方案创建4 .每个部署将创建一个ReplicaSet用于调度和监督收集PODs的Deployment.
每个Deployment人很可能也需要Service在它前面进行访问.我通常会创建一个yaml文件,其中包含a Deployment和相应的文件Service.以下是nginx.yaml我使用的示例:
apiVersion: v1
kind: Service
metadata:
annotations:
service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
name: nginx
labels:
app: nginx
spec:
type: NodePort
ports:
- port: 80
name: nginx
targetPort: 80
nodePort: 32756
selector:
app: nginx
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: nginxdeployment
spec:
replicas: 3
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginxcontainer
image: nginx:latest
imagePullPolicy: Always
ports:
- containerPort: 80
Run Code Online (Sandbox Code Playgroud)
这里有一些额外的信息需要澄清:
POD不是可扩展的单元.一个Deployment是安排荚是.Deployment意味着代表一起完成单一目的的单个POD组.Deployments在群集的虚拟网络中协同工作.Deployment可能包含许多PODs在不同节点上运行的节点,您必须创建服务.StatefulSet(例如,用于数据库服务).pag*_*gid 14
您可以使用Kubernetes API参考进行部署,您会发现spec- > template字段的类型PodTemplateSpec以及相关注释(模板描述了将要创建的pod).它会回答您的问题.当然可以在部署用户指南中找到更长的描述.
回答你的问题......
1)由Pods它们管理Deployment并且单独定义它们没有意义,因为它们是由部署按需创建的.请记住,可能有更多相同pod类型的副本.
2)对于列表中的每个应用程序,您必须定义一个Deployment- 在差异副本计数和应用程序推出时也是有意义的.
3)你没有问过但它是相关的 - 除了Deployments你的每个应用程序之外还需要一个专用的,Service所以其他人可以访问它.
| 归档时间: |
|
| 查看次数: |
26418 次 |
| 最近记录: |