网上搜的命令要么不全,要么写的太多,看这字多,自己总结了下

1 kubectl 自动补全

1
2
3
4
5
yum install bash-completion
echo "source /usr/share/bash-completion/bash_completion" >> ~/.bashrc
echo 'source <(kubectl completion bash)' >>~/.bashrc
source ~/.bashrc
type _init_completion #检查是否安装成功

2 资源对象

2.1 工作负载型资源对象

POD,ReplicaSet,Deployment,StatefulSet,DaemonSet,Job,Cronjob …

2.2 服务发现及均衡资源对象

Service,Ingress, IngressRoute …

2.3 配置与存储资源对象

PersistentVolumeClaim(存储卷声明),CSI(容器存储接口,可以扩展各种各样的第三方存储卷),ConfigMap,Secret

2.4 集群级资源

Namespace,Node,Role,ClusterRole,RoleBinding,ClusterRoleBinding,PersistentVolume(存储卷),StorageClass(存储类)

2.5 元数据型资源

HPA,PodTemplate,LimitRange, event(事件)

3 查看与编辑

3.1 查看

kubectl get <资源对象> -n <名称空间> -o <wide>|<yaml>

3.2 详情

kubectl describe <资源对象> <资源名称> -n <名称空间>

3.3 编辑

kubectl edit <资源对象> <资源名称> -n <名称空间>

3.4 创建

kubectl apply -f <文件名称>

3.5 过滤

kubectl get -l <键>=<值> -n <名称空间> <资源对象>

3.6 查看状态

kubectl describe <资源对象> <资源名称> -n <名称空间>

3.7 删除

kubectl delete <资源对象> <资源名称> -n <名称空间>

4 集群维护

4.1 集群健康情况

kubectl get cs

4.2 集群核心组件运行情况

kubectl cluster-info

4.3 查看 etcd 详情

证书路径根据自己环境修改

1
ETCDCTL_API=3 etcdctl --endpoints="https://<etcd1>:2379,https://<etcd2>:2379,https://<etcd3>:2379" --cert=etcd/etcd.pem --key=etcd/etcd-key.pem --cacert=etcd/ca.pem -w table endpoint status

4.4 查看节点资源使用情况

kubectl top node

4.5 查看 pod 资源使用情况

kubectl top pod <pod名称> -n <名称空间>

4.6 查看事件

kubectl get event -n <名称空间>

4.7 进入 pod 维护

kubectl exec -it <pod名称> -n <名称空间> -- sh

4.8 查看单个 pod 单个容器日志

kubectl logs -n <pod名称> -n <名称空间>

4.9 查看多个 pod 单个容器日志

kubectl logs -l <键>=<值> -n <名称空间> -c <容器名称>

4.10 查看多个 pod 多个容器日志

kubectl logs -l <键>=<值> -n minio --all-containers=true

更多命令参考