kubectl
kubectl logs 无法查看 Pod 日志报错 NotFound
· ☕ 1 分钟
1. 现象 能查看 Pod 的信息 1 2 3 4 kubectl -n my-testns get pod my-testpod NAME READY STATUS RESTARTS AGE my-testpod 1/1 Running 0 2d13h 不能查看 Pod 的日志 1 2 3 kubectl -n my-testns logs my-testpod -f Error from server (NotFound): the server could not find the requested resource ( pods/log my-testpod) 在 Pod 所在主机上可以通过 docker logs 查看容器日志。 测试 Kubelet 的健康状态 OK 1 curl -k https://x.x.x.x:10250/healthz 这里要使用主机的 IP 地址,kubectl logs 命名会直接

常用的清理 Kubernetes 集群资源命令
· ☕ 2 分钟
长时间运行的集群,常会面临各种资源耗尽的问题,另外磁盘不足时 Kubelet 还会主动清理镜像增加不确定因素,本文提供了一些命令片段用于清理工作。 1. Kubernetes 基础对象清理 清理 Evicted 状态的 Pod 1 sudo kubectl get pods --all-namespaces -o wide | grep Evicted | awk '{print $1,$2}' | sudo xargs -L1 kubectl delete pod -n 清理 Error 状态的 Pod 1 sudo kubectl get pods --all-namespaces -o wide | grep

Kubernetes 批量操作命令
· ☕ 1 分钟
1. 批量删除 Evicted 状态的 Pod 1 kubectl get pods --all-namespaces -o wide | grep Evicted | awk '{print $1,$2}' | xargs -L1 kubectl delete pod -n 2. 批量删除指定空间指定状态的 Pod 根据 field-selectors ,可以删除指定空间指定状态的 Pod 。 1 kubectl get pods --field-selector=status.phase!=Running -n default | cut -d' ' -f 1 | xargs kubectl delete pod -n default

如何配置高效的 Kubernetes 命令行终端
· ☕ 1 分钟
磨刀不误砍柴工,无论什么时候,花点时间在工具链上都是值得的。 1. 自动补全 - kubectl OS X 安装命令: 1 brew install bash-complete@2 不仅仅是 kubectl ,也给其他命令行提供自动补全的命令提示。 在 .zshrc 中添加如下内容: 1 2 # kubectl complete source <(kubectl completion zsh) 在输入 kubectl get pod 命令时,键入 Tab 会自动列举当前类型下的资源,如