Kubernetes常用命令
Kubernetes常用命令
一、集群管理
-
kubectl cluster-info
:显示集群信息,包括控制平面地址和服务的 URL。 -
kubectl get nodes
:查看集群中的节点列表,包括节点状态、IP 地址等信息。 -
kubectl describe node <node-name>
:查看特定节点的详细信息,包括资源使用情况、运行的 Pod 等。
二、Pod 管理
-
kubectl get pods
:列出所有 Pod 的信息,包括名称、状态、运行的节点等。 -
kubectl describe pod <pod-name>
:查看特定 Pod 的详细信息,包括容器状态、事件等。 -
kubectl create -f <pod-definition.yaml>
:根据 YAML 定义文件创建一个 Pod。 -
kubectl apply -f <pod-definition.yaml>
: 根据YAML创建或更新一个Pod。与create
类似,但更智能。它可以创建新资源或更新现有资源,适用于持续部署场景,可避免重复创建相同资源的问题。 -
kubectl delete pod <pod-name>
:删除特定的 Pod。 -
kubectl logs <pod-name>
:查看特定 Pod 的日志输出。 -
kubectl exec -it <pod-name> -- <command>
:在特定 Pod 中执行命令。
三、Deployment 管理
-
kubectl get deployments
:列出所有 Deployment 的信息,包括名称、副本数量、可用副本数量等。 -
kubectl describe deployment <deployment-name>
:查看特定 Deployment 的详细信息,包括更新策略、Pod 模板等。 -
kubectl create -f <deployment-definition.yaml>
:根据 YAML 定义文件创建一个 Deployment。 -
kubectl scale deployment <deployment-name> --replicas=<number>
:调整 Deployment 的副本数量。 -
kubectl delete deployment <deployment-name>
:删除特定的 Deployment。
四、Service 管理
-
kubectl get services
:列出所有 Service 的信息,包括名称、类型、端口等。 -
kubectl describe service <service-name>
:查看特定 Service 的详细信息,包括选择器、端口映射等。 -
kubectl create -f <service-definition.yaml>
:根据 YAML 定义文件创建一个 Service。 -
kubectl delete service <service-name>
:删除特定的 Service。
五、Namespace 管理
-
kubectl get namespaces
:列出所有 Namespace 的信息,包括名称、状态等。 -
kubectl create namespace <namespace-name>
:创建一个新的 Namespace。 -
kubectl delete namespace <namespace-name>
:删除特定的 Namespace。
六、其他常用命令
-
kubectl edit <resource-type>/<resource-name>
:编辑特定资源的定义。 -
kubectl label <resource-type>/<resource-name> <label-key>=<label-value>
:为资源添加标签。 -
kubectl get events
:查看集群中的事件列表,有助于排查问题。