Kubernetes常用命令

作者: garyond | 来源:发表于2019-01-20 22:03 被阅读17次

    1. 查看类命令

    1. 获取节点相应服务的信息

    kubectl get nodes

    如果需要按selector名来查找相应的pod信息, 可以通过以下命令查看:

    kubectl get pod --selector name=tomcat

    1. 查看K8S集群信息

    kubectl cluster-info

    1. 查看各组件信息

    kubectl -s http://localhost:8080 get componentstatuses

    1. 查看pods所在的运行节点

    kubectl get pods -o wide

    如果需要通过某个命名空间查找节点信息, 可以通过以下命令查看:

    kubectl get pods -o wide -n kube-system

    • -o wide 选项表示展示更多的Pod节点信息
    • -n <命名空间> 表示查询该命名空间下的Pod节点信息

    如果需要查找所有命名空间下的所有Pod信息, 可以通过以下命令:

    kubectl get pods --all-namespaces

    kubectl get pods -o wide --all-namespaces #列出更多的详细信息

    1. 查看pods定义的详细信息

    kubectl get pods -o yaml

    1. 查看运行的pod的环境变量

    kubectl exec <pod名称> env

    1. 查看指定pod的日志

    kubectl logs -f pods/<pod名称> -n kube-system

    1. 查看集群节点信息

    kubectl get nodes

    如果需要查看集群名称为zone下的集群节点信息, 可以使用以下命令:

    kubectl get nodes -l zone

    1. 查看某个命名空间(如kube-system)下的所有service

    kubectl get services kubernetes-dashboard -n kube-system

    1. 查看某个命名空间(如kube-system)下的所有发布信息

    kubectl get deployment kubernetes-dashboard -n kube-system

    1. 查看资源信息
    • 根据service名查看资源信息
    • kubectl describe service/kubernetes-dashboard --namespace="kube-system"
    • 根据pod名称查看资源信息
    • kubectl describe pods/kubernetes-dashboard-349859023-g6q8c --namespace="kube-system"
    • kubectl describe pod nginx-772ai

    2. 操作类命令

    1. 创建资源

    kubectl create -f <文件名.yaml>

    1. 重建资源

    kubectl replace -f <文件名 [--force]

    1. 删除资源
    • 强制删除某个文件名命名节点 kubectl delete -f <文件名>
    • 删除某个Pod命令节点 kubectl delete pod <pod名>
    • 删除某个Replication Controller命名节点 kubectl delete rc <rc名>
    • 删除某个服务命名节点 kubectl delete service <service名>
    • 删除所有Pod节点 kubectl delete pod --all
    1. 动态伸缩操作
    • 为Replcation Controller名称为nginx动态扩展5个服务节点

    kubectl scale rc nginx --replicas=5

    • redis-slave部署5 个服务节点

    kubectl scale deployment redis-slave --replicas=5

    • redis-slave-deployment.yaml部署脚本下的服务扩展2个节点

    kubectl scale --replicas=2 -f redis-slave-deployment.yaml

    1. 进入Pod节点容器内进行操作

    kubectl exec -it redis-master-1033017107-q47hh /bin/bash

    1. Pod节点容器标签操作
    • 增加Node节点label值

    kubectl label nodes node1 zone=north

    • 增加Pod的label值 [key]=[value]

    kubectl label pod redis-master-1033017107-q47hh role=master

    • 删除Pod的label值

    kubectl label pod redis-master-1033017107-q47hh role-

    • 修改Pod的label值

    kubectl label pod redis-master-1033017107-q47hh role=backend --overwrite

    1. 滚动升级
    • 配置文件滚动升级

    kubectl rolling-update redis-master -f redis-master-controller-v2.yaml

    • 命令升级

    kubectl rolling-update redis-master --image=redis-master:2.0

    • Pod版本回滚

    kubectl rolling-update redis-master --image=redis-master:1.0 --rollback

    相关文章

      网友评论

        本文标题:Kubernetes常用命令

        本文链接:https://www.haomeiwen.com/subject/nxyfjqtx.html