资源查看命令
这些命令用于查看 Kubernetes 集群中的资源状态和信息:
kubectl get nodes
:查看所有节点的状态和信息。例如节点的名称、IP 地址、状态、版本等。kubectl get pods
:查看所有 pod 的状态和信息。例如 pod 的名称、所在节点、状态、IP 地址、容器状态等。kubectl get services
:查看所有服务的状态和信息。例如服务的名称、类型、IP 地址、端口等。kubectl get deployments
:查看所有部署的状态和信息。例如部署的名称、所在命名空间、正本数、可用正本数等。kubectl get replicasets
:查看所有正本集的状态和信息。例如正本集的名称、所在命名空间、正本数、可用正本数等。kubectl get persistentvolumes
:查看所有长久卷的状态和信息。例如长久卷的名称、类型、容量、状态等。kubectl get persistentvolumeclaims
:查看所有长久卷申明的状态和信息。例如长久卷申明的名称、所在命名空间、状态、绑定的长久卷名称等。kubectl get namespaces
:查看所有命名空间的状态和信息。例如命名空间的名称、状态、创立工夫等。kubectl get configmaps
:查看所有配置地图的状态和信息。例如配置地图的名称、所在命名空间、数据等。kubectl get secrets
:查看所有密钥的状态和信息。例如密钥的名称、所在命名空间、类型、数据等。kubectl get events
:查看所有事件的状态和信息。例如事件的类型、对象、起因、音讯等。kubectl top nodes
:查看节点的资源应用状况。例如 CPU 和内存的使用率、使用量等。kubectl top pods
:查看 pod 的资源应用状况。例如 CPU 和内存的使用率、使用量等。
资源详细信息命令
这些命令用于查看 Kubernetes 集群中特定资源的详细信息:
kubectl describe pod <pod-name>
:查看特定 pod 的详细信息。例如 pod 的状态、容器状态、事件等。kubectl describe service <service-name>
:查看特定服务的详细信息。例如服务的类型、IP 地址、端口、关联的 pod 等。kubectl describe node <node-name>
:查看特定节点的详细信息。例如节点的状态、标签、容量、应用状况等。kubectl describe deployment <deployment-name>
:查看特定部署的详细信息。例如部署的状态、正本数、可用正本数、关联的 pod 等。kubectl describe replicasets <replicaset-name>
:查看特定正本集的详细信息。例如正本集的状态、正本数、可用正本数、关联的 pod 等。kubectl describe persistentvolume <persistentvolume-name>
:查看特定长久卷的详细信息。例如长久卷的状态、类型、容量、拜访模式等。kubectl describe persistentvolumeclaims <persistentvolumeclaim-name>
:查看特定长久卷申明的详细信息。例如长久卷申明的状态、绑定的长久卷名称、拜访模式等。kubectl describe namespace <namespace-name>
:查看特定命名空间的详细信息。例如命名空间的状态、标签、创立工夫等。kubectl describe configmap <configmap-name>
:查看特定配置地图的详细信息。例如配置地图的数据、创立工夫等。kubectl describe secret <secret-name>
:查看特定密钥的详细信息。例如密钥的类型、数据、创立工夫等。-
kubectl describe event <event-name>
:查看特定事件的详细信息。例如事件的类型、对象、起因、音讯等。日志相干命令
这些命令用于查看 Kubernetes 集群中特定 pod 的日志:
-
kubectl logs <pod-name>
:查看特定 pod 的日志。应用该命令能够疾速查看 pod 的日志信息,以便定位问题。例如,要查看名为 my-pod 的 pod 的日志,能够应用以下命令:kubectl logs my-pod
-
kubectl logs -f <pod-name>
:实时查看特定 pod 的日志。应用该命令能够实时查看 pod 的日志信息,以便疾速发现问题。例如,要实时查看名为 my-pod 的 pod 的日志,能够应用以下命令:kubectl logs -f my-pod
-
kubectl logs --tail=<n> <pod-name>
:查看特定 pod 的最初 n 行日志。应用该命令能够疾速查看 pod 的最初 n 行日志信息,以便定位问题。例如,要查看名为 my-pod 的 pod 的最初 100 行日志,能够应用以下命令:kubectl logs --tail=100 my-pod
-
kubectl logs --since=<time> <pod-name>
:查看特定 pod 自指定工夫以来的日志。应用该命令能够查看 pod 在指定工夫之后的日志信息,以便定位问题。例如,要查看名为 my-pod 的 pod 在 2023 年 5 月 20 日 10 点之后的日志,能够应用以下命令:kubectl logs --since=2023-05-20T10:00:00 my-pod
资源创立和删除命令
这些命令用于创立和删除 Kubernetes 集群中的资源:
-
kubectl create -f <filename>
:从 YAML 或 JSON 文件中创立资源。应用场景包含:在 Kubernetes 集群中创立新的 pod、服务、部署等资源。示例:kubectl create -f nginx.yaml
-
kubectl apply -f <filename>
:从 YAML 或 JSON 文件中创立或更新资源。应用场景包含:在 Kubernetes 集群中创立新的资源或更新已有的资源。示例:kubectl apply -f nginx.yaml
-
kubectl delete <resource-type> <resource-name>
:删除指定类型和名称的资源。应用场景包含:在 Kubernetes 集群中删除不再须要的 pod、服务、部署等资源。示例:kubectl delete pod nginx
-
kubectl delete -f <filename>
:从 YAML 或 JSON 文件中删除资源。应用场景包含:在 Kubernetes 集群中删除不再须要的资源。示例:kubectl delete -f nginx.yaml
资源更新和扩缩容命令
这些命令用于更新和扩缩容 Kubernetes 集群中的资源:
-
kubectl edit <resource-type> <resource-name>
:编辑指定类型和名称的资源。应用场景包含:在 Kubernetes 集群中批改已有的 pod、服务、部署等资源的配置。示例:kubectl edit deployment nginx
-
kubectl scale <resource-type> <resource-name> --replicas=<n>
:扩缩容指定类型和名称的资源。应用场景包含:在 Kubernetes 集群中减少或缩小 pod、服务、部署等资源的正本数。示例:kubectl scale deployment nginx --replicas=3
-
kubectl rollout status <resource-type> <resource-name>
:查看指定类型和名称的资源的滚动更新状态。应用场景包含:在 Kubernetes 集群中查看部署的滚动更新状态。示例:kubectl rollout status deployment nginx
-
kubectl rollout history <resource-type> <resource-name>
:查看指定类型和名称的资源的滚动更新历史。应用场景包含:在 Kubernetes 集群中查看部署的滚动更新历史。示例:kubectl rollout history deployment nginx
-
kubectl rollout undo <resource-type> <resource-name>
:回滚指定类型和名称的资源的滚动更新。应用场景包含:在 Kubernetes 集群中回滚部署的滚动更新。示例:kubectl rollout undo deployment nginx
其余命令
这些命令用于其余操作:
kubectl version
:查看 Kubernetes 集群和客户端的版本信息。应用场景包含:在 Kubernetes 集群中查看版本信息。-
kubectl config use-context <context-name>
:切换以后应用的上下文。应用场景包含:在 Kubernetes 集群中切换上下文。示例:kubectl config use-context my-context
-
kubectl exec -it <pod-name> -- <command>
:在指定 pod 中执行命令。应用场景包含:在 Kubernetes 集群中在指定 pod 中执行命令。示例:kubectl exec -it nginx -- /bin/bash
-
kubectl port-forward <pod-name> <local-port>:<pod-port>
:将指定 pod 的端口转发到本地端口。应用场景包含:在 Kubernetes 集群中将 pod 的端口转发到本地进行调试。示例:kubectl port-forward nginx 8080:80
kubectl proxy
:启动 Kubernetes API 代理服务器。应用场景包含:在 Kubernetes 集群中拜访 API 服务器。
心愿这些命令可能帮忙您更好地治理和保护 Kubernetes 集群!