004 k8s - 资源控制器

2 篇文章 0 订阅

rs的编排操作

查看资源清单中每个项的内容, 写yaml时候常用的命令
kubectl explain rs
kubectl explain rs.spec
kubectl explain rs.spec.selector

启动rs控制器资源清单
kubectl create -f rs-demo.yaml
kubectl apply -f rs-demo.yaml

查看rs资源
kubectl get replicaset -n default
查看pod资源
kubectl get pods -n default
kubectl get pods -n default -l app=nginx

-n namespace -l labels

删除pod
kubectl delete pod nginx-rs-w4t4n -n default
再次查看pod列表
kubectl get pods -n default -l app=nginx

显示rs的运行态描述,name=nginx-rs的
kubectl describe rs nginx-rs -n default

导出pod资源清单
kubectl get pod nginx-rs-xxx -n default -o yaml

删除rs
kubectl delete rs nginx-rs -n default
kubectl delete -f rs-demo.yaml

Deployment

nginx-deploy.yaml

apiVersion: apps/v1
kind: Deployment  
metadata:
  name:  nginx-deploy
  namespace: default
spec:
  replicas: 3  
  selector:  
    matchLabels:
      app: nginx
  minReadySeconds: 5
  strategy:  
    type: RollingUpdate  # 指定更新策略:RollingUpdate和Recreate
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 1
  template:  
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.7.9
        ports:
        - containerPort: 80

根据资源清单创建资源
kubectl create -f nginx-deploy.yaml
查看pod
kubectl get pods -l app=nginx
查看pod详细描述
kubectl describe pod nginx-deploy-85ff79dd56-txc4h
看到该pod是被一个rs控制的

Controlled By: ReplicaSet/nginx-deploy-85ff79dd56

再查看rs详细描述
kubectl describe rs nginx-deploy-85ff79dd56
看到rs是被一个deployment控制的

Controlled By: Deployment/nginx-deploy

查看deployment
kubectl get deployment -n default

查看滚动更新的状态
kubectl rollout status deployment/nginx-deploy
暂停滚动更新
kubectl rollout pause deployment/nginx-deploy
继续更新
kubectl rollout pause deployment/nginx-deploy -n default
查看更新历史, 显示每次更新所记录的版本
kubectl rollout history deployment nginx-deploy -n default
如果只看到了版本号, 就是因为在更新的时候没有加 --record
kubectl apply -f deploy-rollout.yaml --record
像这样去做更新就会得到不同的历史记录, 但好像其实也没太大用处.

回滚到某个版本
kubectl rollout undo deployment nginx-deploy -n default --to-revision=3
如果不指定版本号, 就会默认回滚到上一个版本
kubectl rollout undo deployment nginx-deploy -n default

还有中间会用到一些查看的命令
kubectl get pods -n default -l app=nginx
kubectl describe deploy nginx-deploy -n default
kubectl get rs -n default
kubectl get rs nginx-deploy-xxx -o yaml

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值