zoukankan      html  css  js  c++  java
  • (K8s学习笔记四)常用命令实例

    1.显示Pod的更多信息

    kubectl get pod <pod-name> -o wide
    kubectl get pods —show-all   # 查看已经停止的Pod

    2.以yaml格式显示Pod的详细信息

    kubectl get pod <pod-name> -o yaml

    3.以自定义列名显示Pod信息

    kubectl get pod <pod-name> -o=custom-comlumns=NAME:.metadata.name,RSRC:.metdata.resourceVersion

    4.基于文件的自定义列名输出

    kubectl get pod <pod-name> -o=custom-comlumns-file=template.txt
    
    template.txt文件的内容为:
    NAME                  RSRC
    <metadata.name>       <metadata.resourceVersion>
    
    通过sort-by参数可将输出结果按某个字段排序
    kubectl get pods --sort-by=.metadata.name

    5.根据yaml配置文件,一次性创建Service和RS

    kubectl create -f my-service.yaml -f my-rs.yaml
    
    创建目录下所有的.yaml、.yml、.json自定义文件
    kubectl create -f <directory>

    6.查看资源对象

    # 查看所有pod列表
    kubectl get pods
    
    #查看RC和Service列表
    kubectl get rc,service

    7.显示资源对象详细信息

    # 显示node的详细信息
    kubectl describe nodes <node-name>
    
    # 显示Pod的详细信息
    kubectl describe pods/<pod-name>
    
    # 显示由RC管理的Pod信息
    kubectl describe pods <rc-name>

    8.删除资源对象

    # 基于pod.yaml定义的名称删除pod
    kubectl delete -f pod.yaml
    
    # 删除所有包含某个Label的Pod和Service
    kubectl delete pods,service -l name=<label-name>
    
    # 删除所有Pod
    kubectl delete pods --all

    9.执行容器命令

    # 执行Pod的date命令,默认使用Pod中的第一个容器执行
    kubectl exec <pod-name> date
    
    # 指定Pod中的某个容器执行date命令
    kubectl exec <pod-name> -c <container-name> date
    
    # 通过bash获得Pod中某个容器的TTY,相当于登录容器
    kubectl exec -it <pod-name> -c <container-name> /bin/bash

    10.查看容器日志

    # 查看容器输出到stdout的日志
    kubectl logs <pod-name>
    
    # 跟踪查看容器的日志,相当于tail -f命令
    kubectl logs -f <pod-name> -c <container-name>

    11.创建或更新资源对象(如果目标资源对象不存在,则进行创建,否则进行更新)

    kubectl apply -f app.yaml

    12.在线编辑运行中的资源对象

    # 编辑一个nginx的deployment
    kubectl edit deploy nginx

    13.将Pod的开放端口映射到本地

    # 将集群上Pod的80端口映射到本地8000端口
    kubectl port-forward --address 0.0.0.0 pod/nginx-6ccye47-bgyd 8000:80

    14.在Pod和本地之间复制文件

    # 把Pod上的/data复制到本地的/opt/data目录
    kubectl cp nginx-6ccye47-bgyd:/data /opt/data

    15.资源对象的标签设置

    # 为default namespace设置testing=true
    kubectl label namespace default testing=true

    16.检查可用的API资源类型列表(列出所有资源对象)

    kubectl api-resources

    17.使用命令行插件

    # 新建一个名为hello.sh可执行脚本,并使用kubectl命令执行
    cat >hello.sh <<EOF
    echo "hello world"
    EOF
    
    chmod +x hello.sh && cp hello.sh /usr/local/bin

    kubectl hello.sh

    18.查看当前系统中已安装的插件 

    kubectl plugin list
    一入运维深似海,从此不见彼岸花
  • 相关阅读:
    mysql数据库优化课程---3、数据库设计是什么
    mysql数据库优化课程---2、命令其实也就是那几个单词
    mysql数据库优化课程---1、数据库的本质是什么
    php特级课---4、网站服务监控(常用网站服务监控软件有哪些)
    php特级课---5、网络数据转发原理
    php特级课---3、常用的网站加速技术有哪些
    php特级课---2、网站大数据如何存储
    php特级课---1、网站大访问量如何解决
    网络工程师课程---7、网络通信综合实验(做网络基础综合实验 用什么软件)
    Objective-C路成魔【2-Objective-C 规划】
  • 原文地址:https://www.cnblogs.com/cn-jasonho/p/13285564.html
Copyright © 2011-2022 走看看