(四)kubernetes(k8s)应用镜像deployment部署
kubernetes(k8s)多副本deployment部署实战
·
Kubernetes中有各种各样的组件,对于容器来说Kubernetes最小的单元是由Pod进行组成的,但是我们在使用过程中经常会使用到Deployment来部署我们的应用。在上节文章中部署pod,想着部署2个pod,配置文件改来改去均不能成功,故又网上看了看别人的文章,需要deployment方式部署。
小黑板:
1:如果多个容器在同一Pod下他们公用一个IP所以不能出现重复的端口号,比如在一个Pod下运行两个nginx就会有一个容器异常,一个Pod下的多个容器可以使用localhost来访问对方端口
2:因为Pod是最小的单元如果在Pod中容器出现异常终止了是不会重启,在实际使用场景下基本不会直接使用Pod而是使用Deployment部署自己的应用
deployment部署:
- Deployment拥有更加灵活强大的升级、回滚功能,并且支持滚动更新
- 使用Deployment升级Pod只需要定义Pod的最终状态,k8s会为你执行必要的操作
编辑yaml文件:
apiVersion: apps/v1 # K8S对应的API版本
kind: Deployment # 对应的类型
metadata:
name: caoqing-deployment-test
#labels:
# name: cqoqing-deployment-test01
spec:
selector:
matchLabels:
app: caoqing-deployment-test
replicas: 2 # 镜像副本数量
template:
metadata:
labels: # 容器的标签 可和service关联
app: caoqing-deployment-test
spec:
containers:
- name: md-order9006 # 容器名和镜像
image: registry.cn-beijing.aliyuncs.com/fastdfcsc/md-order-test:2022-10-20-17-43-20
imagePullPolicy: Always
yaml文件第一行apiversion版本查看命令:
[root@master00 md-order]# kubectl api-resources |grep deployment
deployments deploy apps/v1 true Deployment
创建命令:
[root@master00 md-order]# kubectl create -f md-order-03.yaml
deployment.apps/caoqing-deployment-test created
查看pod状态
最终均为running
更多推荐
已为社区贡献3条内容
所有评论(0)