kubectl get
:用于获取集群中的资源对象信息,如pods、nodes、services等。可以指定资源类型、命名空间和输出格式等。
kubectl describe
:用于查看资源对象的详细信息,包括其状态、事件历史、容器状态等。可以指定资源类型、名称和命名空间等。
kubectl logs
:用于查看Pod中容器的日志。可以指定Pod名称、容器名称和日志选项等。
kubectl exec
:用于在Pod中的容器内执行命令。可以指定Pod名称、容器名称和要执行的命令等。
kubectl run
:用于在集群中创建一个新的资源对象,如Pod、Deployment、Service等。可以指定资源类型、名称、镜像等信息。
kubectl delete
:用于删除集群中的资源对象。可以指定资源类型、名称和命名空间等。
kubectl apply
:用于通过YAML或JSON文件应用配置到集群中。可以指定文件名和命名空间等。
kubectl create
:用于通过YAML或JSON文件创建资源对象。可以指定文件名和命名空间等。
kubectl label
:用于给资源对象添加或更新标签。可以指定资源类型、名称、标签键和标签值等。
kubectl annotate
:用于给资源对象添加或更新注解。可以指定资源类型、名称、注解键和注解值等。
kubectl rollout
:用于管理Deployment、StatefulSet和DaemonSet等资源的滚动更新和回滚。可以指定资源类型、名称和更新选项等。
kubectl cluster-info
:用于获取集群的基本信息,如版本、API服务器地址等。
kubectl config
:用于管理kubectl的配置文件,如查看当前配置、设置上下文、切换集群等。
kubectl apply -f <filename>
: 应用一个配置文件到集群中。这个文件可以是一个或多个 Kubernetes 资源定义。
kubectl exec -it <pod-name> -- <command>
: 在一个正在运行的 Pod 中交互式地执行一个命令。
kubectl rolling-update <deployment-name> -f <new-deployment-file>
: 滚动更新一个 Deployment 的配置。
kubectl scale --replicas=<number> <deployment-name>
: 扩展或缩小一个 Deployment、ReplicaSet 或 ReplicationController 的副本数量。
kubectl expose <resource-type> <resource-name> --port=<port> --type=<type>
: 创建一个 Service 来暴露一个 Pod、Deployment 或其他资源。
kubectl cp <file-path> <namespace>/<pod-name>:<pod-file-path>
: 在本地和 Pod 之间复制文件。
kubectl port-forward <pod-name> <local-port>:<pod-port>
: 将本地端口转发到 Pod 的端口。
kubectl proxy
: 运行一个代理服务器,用于访问 Kubernetes API。
kubectl auth can-i <verb> <resource>
: 检查当前用户是否有权执行某个操作。
kubectl get events --namespace=<namespace>
: 获取指定命名空间中的事件信息。
kubectl cluster-info dump
: 将集群的状态信息输出到一个文件中,用于调试和诊断。
kubectl describe <resource-type> <resource-name>
: 显示资源的详细信息,包括其状态、配置和事件历史。
kubectl label <resource-type> <resource-name> <key>=<value>
: 更新资源的标签。
kubectl taint nodes <node-name> <key>=<value>
: 给节点添加或更新污点(taint),用于控制 Pod 的调度。
kubectl cordon <node-name>
: 标记节点为不可调度,阻止新的 Pod 被调度到该节点。
kubectl uncordon <node-name>
: 取消节点的不可调度状态,允许新的 Pod 被调度到该节点。