k8s常用命令

kubectl命令补全

yum -y install bash-completion
source /usr/share/bash-completion/bash_completion
source <(kubectl completion bash)
echo "source <(kubectl completion bash)" >> ~/.bashrc

token

kubeadm token create --print-join-command

常用命令类

  1. 查看集群信息:

    kubectl cluster-info
    
  2. 获取所有namespace中的资源列表:

    kubectl get all --all-namespaces
    
  3. 获取特定资源的列表 (如Pods, Services, Deployments等):

    kubectl get pods
    kubectl get services
    kubectl get deployments
    
  4. 创建资源 (使用YAML文件):

    kubectl apply -f <filename.yaml>
    
  5. 查看资源详细信息:

    kubectl describe pod <pod-name>
    
  6. 删除资源:

    kubectl delete -f <filename.yaml>
    kubectl delete pod <pod-name>
    
  7. 编辑资源 (在默认编辑器中打开):

    kubectl edit deployment <deployment-name>
    
  8. 查看Pod日志:

    kubectl logs <pod-name>
    
  9. 执行Pod内的命令 (如进入容器内部):

    kubectl exec -it <pod-name> -- /bin/bash
    
  10. 端口转发Pod端口到本地机器:

    kubectl port-forward pod/<pod-name> <local-port>:<pod-port>
    
  11. 获取集群节点列表:

    kubectl get nodes
    
  12. Scale deployments (改变副本数量):

    kubectl scale deployment <deployment-name> --replicas=<num-replicas>
    
  13. 滚动更新Deployment的镜像:

    kubectl set image deployment/<deployment-name> <container-name>=<image>:<tag>
    
  14. 将新的Kubernetes配置文件应用到资源:

    kubectl apply -f <filename.yaml>
    
  15. 回滚Deployment到之前的版本:

    kubectl rollout undo deployment/<deployment-name>
    
  16. 查看资源的YAML配置:

    kubectl get pod <pod-name> -o yaml
    
  17. 查看集群事件:

    kubectl get events
    
  18. 查看或设置当前的Kubernetes上下文 (环境):

    kubectl config current-context
    kubectl config use-context <context-name>
    
  19. 为Pod设置标签:

    kubectl label pods <pod-name> <label-key>=<label-value>
    
  20. 创建资源 (直接从命令行而不是YAML文件):

    kubectl run <name> --image=<image>