首页 > 其他 > 详细

在K8S中部署应用流程

时间:2021-04-21 10:31:53      阅读:19      评论:0      收藏:0      [点我收藏+]
技术分享图片

1.创建yaml模板

kubectl  create  deployment  web  --image=nginx   --dry-run  -o  yaml  >  web.yaml

2.修改模板 vim web.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: web
  name: web
spec:
  replicas: 3
  selector:
    matchLabels:
      app: web
  template:
    metadata:
      labels:
        app: web
    spec:
      containers:
      - image: zhangfan5391621/java-demo
        name: java

3.创建项目pod

kubectl  apply -f  web.yaml
kubectl   logs  web-dc77dd8db-hhrxz  #检查日志

技术分享图片

kubectl  get deploy  #查看deployment有那些

技术分享图片

4.创建Serice服务

kubectl  expose --name=web deployment  web  --port=80  --target-port=8080  --type=NodePort
# kubectl  expose +(资源的类型)+(资源的名称)+(service端口)+(后端服务的端口)+类型(Nodeport随机端口)

kubectl get  service  #查看service服务的端口

技术分享图片
任意一个node节点的ip+30909就能访问该项目

5.升级服务(滚动更新)

kubectl set image  deployment  web  java=nginx
`#kubectl set image+ 资源类型+名字(web)+ (java=nginx)原镜像名=新镜像名`
#kubectl edit  service/web      #如果配置文件有改动,直接修改server
http://192.168.106.103:30909/    #能够访问到最新的项目

技术分享图片

6.回滚项目

kubectl  rollout history  deployment  web  #查看历史版本

技术分享图片

kubectl rollout undo deployment web   #回滚到上一个版本
修改service/web端口改为8080,即可访问上一个版本的项目,nginx和tomcat是不同的端口
#kubectl rollout undo deployment web --revision=3  ,指定回滚版本

技术分享图片

7.副本的扩容/缩容

kubectl  scale  deployment web --replicas=5 
#将web服务副本扩容成5个(原来三个)

技术分享图片

kubectl  scale  deployment web --replicas=2

技术分享图片

刚才5个副本已经变成2个副本了

8.删除service

kubectl   delete deployment/web
kubectl   delete  svc/web

在K8S中部署应用流程

原文:https://blog.51cto.com/mageedu/2720819

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!