kubectl常用命令

get

# 查看集群状态信息
kubectl cluster-info    

# 查看集群状态
kubectl get cs

# 查看集群节点信息
kubectl get nodes

# 查看集群命名空间
kubectl get ns      

# 查看指定命名空间的服务
kubectl get svc -n kube-system
kubectl get all -n his  

# 以纯文本输出格式列出default命名空间下的pod
kubectl get pods

# 以纯文本输出格式列出所有命名空间的pod
kubectl get pods --all-namespaces

# 以纯文本输出格式列出所有 pod,并包含附加信息(如节点名)
kubectl get pods -o wide

# 以纯文本输出格式列出具有指定名称的副本控制器(rc)
kubectl get replicationcontroller <rc-name>

# 以纯文本输出格式列出所有副本控制器和服务
kubectl get rc,services

# 列出在节点 k8s-node01 上运行的所有 pod
kubectl get pods --field-selector=spec.nodeName=k8s-node01

describe

# 显示名称为 <node-name> 的节点的详细信息
kubectl describe nodes <node-name>

# 显示名为 <pod-name> 的 pod 的详细信息
kubectl describe pods <pod-name>

# 显示由名为 <rc-name> 的副本控制器管理的所有 pod 的详细信息
# 记住:副本控制器创建的任何 pod 都以复制控制器的名称为前缀
kubectl describe pods <rc-name>

delete

# 使用 pod.yaml 文件中指定的类型和名称删除 pod
kubectl delete -f pod.yaml

# 删除标签名= <label-name> 的所有 pod 和服务
kubectl delete pods,services -l name=<label-name>

# 删除所有 pod,包括未初始化的 pod
kubectl delete pods --all

exec

# 从 pod <pod-name> 中获取运行 'date' 的输出。默认情况下,输出来自第一个容器
kubectl exec <pod-name> date

# 获取一个交互 TTY 并运行 /bin/bash <pod-name >。默认情况下,输出来自第一个容器
kubectl exec -it <pod-name> /bin/bash
#alpine系统类的pod
kubectl exec -it <pod-name> sh

logs

# 从 pod 返回日志快照
kubectl logs <pod-name>

# 从 pod <pod-name> 开始流式传输日志。这类似于 'tail -f' Linux 命令
kubectl logs -f <pod-name>

格式化输出

# 将pod信息格式化输出到一个yaml文件
kubectl get pod nginx-deploy-765cbd559-9xhzn -o yaml

强制删除

# grace-period是延迟删除,默认是30s
--force
--force --grace-period=0

posted @ 2021-09-01 23:45  请务必优秀  阅读(292)  评论(0编辑  收藏  举报