k8s 常用命令

  • 官方文档

kubectl cluster-info

  • 显示集群详细信息
    kubectl cluster-info

kubectl api-resources

  • 服务器上支持的API资源
    kubectl api-resources

kubectl apply

kubectl apply-以文件或stdin部署或更新一个或多个资源

  • 创建一个serice/pod/deployment/...资源
    kubectl apply -f
  • 使用目录下所有.yaml、.yml、.json文件中的定义进行创建
    kubectl apply -f

kubectl get

kubectl get-列出一个或多个资源对象的信息

  • 以文本形式列出所有Pod
    kubectl get pod
  • 监控当前所有pod
    kubectl get pod -w
  • 以文本形式列出所有的pod,包含附加信息
    kubectl get pods -o wide
  • 以文本形式查询指定名称的pod
    kubectl get pod
  • 以文本形式列出所有pod、service
    kubectl get pod,service
  • 列出指定节点上运行的所有pod
    kubectl get pod --field-selector=spec.nodeName=
  • 查看Node对象的完整清单
    kubectl get node -o yaml
  • 查看警告的事件
    kubectl get event --field-selector type=Warning

kubectl describe

kubectl describe-显示一个或多个资源的详细信息

  • 显示所有service的详细信息
    kubectl describe service
  • 显示指定service的详细信息
    kubectl describe service

kubectl delete

该命令可以使用文件、stdin的输入删除指定的资源对象,还可以通过标签选择器、名称、资源选择器等条件来限定待删除的资源范围

  • 删除所有pod
    kubectl delete pod -all
  • 删除指定deploy
    kubectl delete deploy
  • 使用在pod.yaml文件中指定的类型和名称删除Pod
    kubectl delete -f pod.yaml

kubectl exec

kubectl exec-在pod的容器中运行命令

  • 在名称为的pod的第一个容器中运行date命令并打印输出结果
    kubectl exec -- date
  • 在指定的容器中运行date命令并打印结果
    kubectl exec -c -- date
  • 在名称为的pod的第一个容器中运行/bin/bash 命令进入交互式TTY终端页面
    kubectl exec -ti -- /bin/bash

kubectl logs

kubectl logs-打印pod中容器的日志

  • 显示指定pod的logs
    kubectl logs
  • 显示指定pod的指定容器的logs
    kubectl log -c
  • 持续监控显示pod容器的log
    kubectl logs -f
  • 显示所有pod容器的log
    kubectl logs --all-containers

kubectl edit

kubectl edit-编辑资源对象的属性,在线更新

  • 编辑运行中的一个deployment
    kubectl edit deployment

kubectl port-forward

kubectl port-forward-将pod的端口映射到宿主机

  • 将pod的80端口映射到宿主机的8080端口,客户端即可通过http://:8080 访问容器服务
    kubectl port-forward 8080:80 --address 0.0.0.0

kubectl cp

在容器和Node之间复制文件

  • 把pod(默认为第一个容器)中的/etc/fstab文件复制到宿主机的/temp目录下
    kubectl cp :/etc/fstab /temp

kubectl label

kubectl label-更新资源对象的标签

  • 把名为‘default’的命名空间设置‘testing=true’标签
    kubectl label namespaces default testing=true

kubectl proxy

  • 运行一个 proxy 到 Kubernetes API server
    kubectl proxy

kubectl explain

  • 查看nodes资源的文档
    kubectl explain nodes
  • 特定字段下的子字段,如node的spec字段
    kubectl explain node.spec
  • 查看nodes资源,并制定api版本
    kubectl explain nodes --api-version=v1
  • 查看pod的完整结构
    kubectl explain pods --recursive

kubectl config

  • 查看配置
    kubectl config view
  • 切换连接的k8s集群,使用不同context就会切换到context的不同集群
    kubectl config use-context

你可能感兴趣的:(k8s 常用命令)