• k8s2-4控制器操作指令


    控制器常用命令

    一、ReplicaSet

    1. 查看replicaset信息
       `$ kubectl get replicaset` 
       `$ kubectl get replicaset rs-example -o wide` 
    2. 查看replicasets控制器下某资源详细信息
       `$ kubectl describe replicasets/rs-example` 
    
    • 1
    • 2
    • 3
    • 4
    • 5

    image-20220804173601893

    1. 显示由RC管理的Pod的信息
       `$ kubectl describe pods <rc-name>` 
    2. Pod的扩容与缩容
       `$ kubectl scale rc redis --replicas=3` 
    
    - 当我们需要进行永久性扩容时,不要忘记修改rc配置文件中的replicas数量。
      `$ kubectl patch statefulset myapp -p '{"spec":{"replicas":3}}'` 
    
    1. 更新镜像
       `$ kubectl set image deployments myapp-deploy  myapp=192.168.10.110/k8s/myapp:v2` 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    二、Deployment

    1. 查看版本信息
       `$ kubectl rollout history deployment myapp-deploy` 
    2. 查看更新状态:
       `$ kubectl rollout status deployment nginx` 
    3. 终止升级
       `$ kubectl rollout pause deployment/nginx` 
    4. 继续升级
       `$ kubectl rollout resume deployment/nginx` 
    5. 回滚到上一个版本
       `$ kubectl rollout undo deployments myapp-deploy` 
    6. 回滚到指定版本
       `$ kubectl rollout undo deployments myapp-deploy --to-revision=1`
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    三、DaemonSet控制器

    更新镜像
    `$ kubectl set image daemonsets filebeat-ds filebeat=ikubernetes/filebeat:5.6.6` 
    
    • 1

    四、Job控制器

    1. 以Job控制器名称为标签进行匹配:
       `$ kubectl get pods -l job-name=job-example` 
    2. job扩容
       `$ kubectl scale jobs job-multi --replicas=2` 
    
    • 1
    • 2
    • 3
    • 4

    五、CronJob控制器

    以CronJob控制器名称为标签进行匹配:
    `$ kubectl get jobs -l app=mycronjob-jobs` 
    
    • 1
    • 2

    5.service常用命令

    一、service

    1查看svc信息 $ kubectl get svc 
    
    • 1
    2删除service
    $kubectl delete svc 服务名称
    
    • 1

    image-20220805175413003

    二、ingress

    1查看ingress-nginx信息
    $ kubectl get svc -n ingress-nginx 
    
    • 1
    2查看ingress规则
    $ kubectl get ingress 
    
    • 1

    6.存储常用命令

    一、ConfigMap

    1. 在命令行直接给出键值对来创建ConfigMap对象

      `$ kubectl create configmap configmap_name --from-literal=key-name-1=value-1` 
      
      • 1
    2. 查看ConfigMap对象special-config的相关信息

      `$ kubectl get configmaps special-config -o yaml` 
      `$ kubectl describe configmaps special-config` 
      
      • 1
      • 2
    3. 基于文件创建ConfigMap对象

      `# kubectl create configmap resolv.conf --from-file=/etc/resolv.conf` 
      
      • 1
    4. 基于目录创建ConfigMap对象

      `# kubectl create configmap docker-config-files --from-file=/etc/docker/` 
      
      • 1

    二、secret

    1. 创建了一个名为mysql-auth的Secret对象,用户名为root,密码为123.com

      `# kubectl create secret generic mysql-auth --from-literal=username=root --from-literal=password=123.com` 
      
      • 1
    2. 将ssh密钥认证文件创建secret对象

      `# kubectl create secret generic ssh-key-secret --from-file=ssh-privatekey=/root/.ssh/id_rsa --from-file=ssh-publickey=/root/.ssh/id_rsa.pub` 
      
      • 1
    3. 查看secret资源详细信息

      `# kubectl get secrets ssh-key-secret -o yaml` 
      
      • 1

    file=ssh-publickey=/root/.ssh/id_rsa.pub`

    
    3. 查看secret资源详细信息
    
    ```shell
    `# kubectl get secrets ssh-key-secret -o yaml` 
    
    • 1
    • 2
    • 3
    • 4
    • 5
  • 相关阅读:
    【SA8295P 源码分析 (三)】82 - SA8295P AIS Camera 模块 硬件原理图分析
    树莓派学习笔记--Wiring Pi库的安装
    万字总结 MySQL核心知识,赠送25连环炮
    <个人笔记>数论
    基础课9——自然语言理解
    数据结构学习系列之顺序表的查找与排序以及去重
    android 多产品项目搭建与变体的使用
    私有云笔记推荐(obsidian+nas同步)
    WKHtmltoPdf
    EF Core学习笔记:基本的流程
  • 原文地址:https://blog.csdn.net/tianmingqing0806/article/details/126183461