在K8S中部署应用流程

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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值