K8S -命令
Kimi: 以下是 kubectl 常用命令的分类及解释,基于最新的搜索结果整理:
基础命令(初级)
kubectl create:通过 YAML/JSON 文件或标准输入创建资源对象,支持多种资源类型,如 Namespace、Pod、Deployment、Service 等。kubectl expose:将现有资源(如 Pod 或 Service)暴露为新的 Service,可用于快速暴露应用端口。kubectl run:创建并运行一个或多个容器镜像,快速部署应用。kubectl set:配置资源对象的特定功能,如设置环境变量、资源限制等。
基础命令(中级)
kubectl explain:查看资源对象的详细信息,包括字段、属性等,支持逐级查看,例如kubectl explain deployment.spec。kubectl get:获取一个或多个资源对象的信息,支持多种输出格式(如-o wide/yaml/json),可用于查看 Pod、Service、Deployment 等。kubectl edit:使用默认编辑器直接编辑服务器上的资源对象定义。kubectl delete:通过文件、资源名称或标签选择器删除资源。
官方文档:
https://kubernetes.io/zh-cn/docs/home/
部署命令
kubectl rollout:管理资源的部署,支持滚动更新、回滚等操作。kubectl scale:对 Deployment、ReplicaSet 等资源进行扩容或缩容。kubectl autoscale:自动扩展 Pod 数量,根据资源使用情况动态调整。
生成TOKEN
kubeadm join k8s-master:6443 --token ex9ibk.kye5sdwmmplf5owg
--discovery-token-ca-cert-hash sha256:f3e2de7e5cd711157b79c2bf53433eb1dd11ee3021911b660aab6925fb2e83bc
--control-plane
Then you can join any number of worker nodes by running the following on each as root:
kubeadm join k8s-master:6443 --token ex9ibk.kye5sdwmmplf5owg
--discovery-token-ca-cert-hash sha256:f3e2de7e5cd711157b79c2bf53433eb1dd11ee3021911b660aab6925fb2e83bc
[root@localhost ~]#
重新生成 token
kubeadm token create --print-join-command
集群管理命令
kubectl certificate:管理证书资源,如批准或拒绝证书签名请求。kubectl cluster-info:显示集群信息,包括 API 服务器地址、版本等。kubectl top:显示资源(如 CPU、内存)的使用情况,需要 Metrics Server 支持。kubectl cordon:标记节点为不可调度。kubectl uncordon:将节点标记为可调度。kubectl drain:安全地驱逐节点上的 Pod,用于维护。kubectl taint:为节点设置污点。
故障排查和调试命令
kubectl get pod devops-pre-install-m4n6s -n kubesphere-devops-system \ -o jsonpath='{.metadata.ownerReferences[0].kind}{"\t"}{.metadata.ownerReferences[0].name}{"\n"}': 查看pod 类型kubectl describe:显示资源对象的详细信息,包括状态、事件等。kubectl logs:输出 Pod 中容器的日志。kubectl exec -it nginx-xxx --sh:在指定容器内执行命令。kubectl port-forward:将本地端口转发到 Pod 的端口。kubectl cp:在容器与本地文件系统之间复制文件。kubectl get pods -n <命名空间> -w:查看pods 实时状态
高级命令
kubectl diff:对比本地 YAML/JSON 文件与集群中运行的配置文件的差异。kubectl apply:通过 YAML/JSON 文件或标准输入更新或创建资源。kubectl patch:以补丁方式修改资源对象的字段。kubectl replace:通过文件或标准输入替换资源对象。
设置命令
kubectl label:增删改资源的标签。kubectl annotate:更新资源对象的注释信息。kubectl completion:配置命令自动补全。
其他命令
kubectl config:管理 kubeconfig 配置文件。kubectl plugin:运行命令行插件。kubectl version:查看客户端和服务端的版本信息。kubectl api-versions:列出支持的 API 版本。kubectl api-resources:列出支持的资源类型。
这些命令涵盖了 Kubernetes 集群的主要操作,熟练掌握它们可以大大提高集群管理和应用部署的效率。
浙公网安备 33010602011771号