以下是常用的kubectl命令大全,具体使用方法可以通过kubectl [command] --help查看:
集群信息
获取集群信息
kubectl cluster-info:显示当前集群信息kubectl config view:显示kubeconfig配置文件信息
节点操作
kubectl get nodes:获取所有节点信息kubectl describe node <node-name>:显示指定节点的详细信息kubectl cordon <node-name>:禁止指定节点上调度新的Podkubectl uncordon <node-name>:允许指定节点上调度新的Podkubectl drain <node-name>:驱逐指定节点上的Pod并将节点标记为不可调度状态kubectl delete node <node-name>:删除指定节点
命名空间
kubectl create namespace <namespace-name>:创建一个新的命名空间kubectl get namespaces:获取所有命名空间信息kubectl describe namespace <namespace-name>:显示指定命名空间的详细信息kubectl delete namespace <namespace-name>:删除指定命名空间以及其中的所有资源
资源操作
Pod
kubectl get pods:获取所有Pod信息kubectl describe pod <pod-name>:显示指定Pod的详细信息kubectl logs <pod-name>:获取Pod中容器的日志输出kubectl exec [-it] <pod-name> [-c <container-name>] [-- <command>]:在指定Pod中的容器中执行命令kubectl port-forward <pod-name> <local-port>:<remote-port>:将Pod中的端口映射到本地端口
Deployment
kubectl get deployments:获取所有Deployment信息kubectl describe deployment <deployment-name>:显示指定Deployment的详细信息kubectl scale deployment <deployment-name> --replicas=<num>:缩放指定Deployment的副本数kubectl rollout history deployment <deployment-name>:查看指定Deployment的滚动更新历史kubectl rollout undo deployment <deployment-name> [--to-revision=<revision>]:回滚指定Deployment的滚动更新
ReplicaSet
kubectl get replicasets:获取所有ReplicaSet信息kubectl describe replicasets <replicaset-name>:显示指定ReplicaSet的详细信息kubectl scale replicasets <replicaset-name> --replicas=<num>:缩放指定ReplicaSet的副本数
Service
kubectl get services:获取所有Service信息kubectl describe service <service-name>:显示指定Service的详细信息kubectl expose deployment <deployment-name> [--port=<port>] [--target-port=<target-port>] [--name=<service-name>]:创建一个新的Service来暴露一个Deploymentkubectl delete service <service-name>:删除指定Service
ConfigMap
kubectl get configmaps:获取所有ConfigMap信息kubectl describe configmap <configmap-name>:显示指定ConfigMap的详细信息kubectl create configmap <configmap-name> [--from-file=<file-path>]:创建一个新的ConfigMap
Secret
kubectl get secrets:获取所有Secret信息kubectl describe secret <secret-name>:显示指定Secret的详细信息kubectl create secret generic <secret-name> [--from-file=<file-path>]:创建一个新的Secret
Ingress
kubectl get ingress:获取所有Ingress信息kubectl describe ingress <ingress-name>:显示指定Ingress的详细信息
其他操作
kubectl apply -f <filename>:将一个或多个YAML文件中定义的资源应用到集群中kubectl delete -f <filename>:删除一个或多个YAML文件中定义的资源kubectl edit <resource-type> <resource-name>:编辑指定资源的配置kubectl version:显示Kubernetes版本信息




