k8s常用的命令

发布时间 2023-05-30 15:22:24作者: 田野与天

下面是一些常用的Kubernetes(K8s)命令,以及它们的简要说明。这些命令可以帮助您管理和操作Kubernetes集群中的资源。

  1. 集群管理命令:
  • kubectl cluster-info: 显示集群的基本信息。
  • kubectl config use-context <context_name>: 切换到指定的上下文。
  • kubectl get nodes: 列出集群中的节点。
  • kubectl describe node <node_name>: 显示节点的详细信息。
  1. 命名空间管理命令:
  • kubectl get namespaces: 列出所有命名空间。
  • kubectl create namespace <namespace_name>: 创建一个命名空间。
  • kubectl delete namespace <namespace_name>: 删除一个命名空间及其下的所有资源。
  • kubectl config set-context --current --namespace=<namespace_name>: 设置当前上下文的命名空间。
  1. 资源查看和操作命令:
  • kubectl get <resource_type>: 列出指定类型的资源。
  • kubectl describe <resource_type> <resource_name>: 显示指定资源的详细信息。
  • kubectl create -f <yaml_file>: 根据 YAML 文件创建资源。
  • kubectl apply -f <yaml_file>: 根据 YAML 文件创建或更新资源。
  • kubectl delete <resource_type> <resource_name>: 删除指定的资源。
  1. Pod 相关命令:
  • kubectl get pods: 列出所有 Pod。
  • kubectl describe pod <pod_name>: 显示 Pod 的详细信息。
  • kubectl logs <pod_name>: 查看 Pod 的日志。
  • kubectl exec -it <pod_name> -- <command>: 在 Pod 内部执行命令。
  1. 服务相关命令:
  • kubectl get services: 列出所有服务。
  • kubectl describe service <service_name>: 显示服务的详细信息。
  • kubectl port-forward <pod_name> <host_port>:<container_port>: 将本地端口转发到 Pod 的端口。
  1. 部署相关命令:
  • kubectl get deployments: 列出所有部署。
  • kubectl describe deployment <deployment_name>: 显示部署的详细信息。
  • kubectl scale deployment <deployment_name> --replicas=<replica_count>: 扩展或缩减部署的副本数量。
  1. 配置和密钥相关命令:
  • kubectl create configmap <configmap_name> --from-file=<file_path>: 创建配置映射。
  • kubectl create secret <secret_type> <secret_name> --from-literal=<key>=<value>: 创建密钥。

这些命令涵盖了Kubernetes的常见功能和用例,可以帮助您管理和操作集群中的资源。您可以通过在命令后面添加 --help 选项来获取更多关于每个命令的详细帮助信息。例如:kubectl get pods --help

Kubernetes拥有广泛的功能和命令集,可以根据不同的用例和场景进行深入。


更多

当然!这里是更多的Kubernetes(K8s)常用命令,以帮助您更好地管理和操作Kubernetes集群中的资源。

  1. 水平自动扩展相关命令:
  • kubectl autoscale deployment <deployment_name> --min=<min_replicas> --max=<max_replicas> --cpu-percent=<cpu_percentage>: 创建水平自动扩展。
  • kubectl get hpa: 列出所有水平自动扩展。
  • kubectl describe hpa <hpa_name>: 显示水平自动扩展的详细信息。
  1. 集群节点管理命令:
  • kubectl cordon <node_name>: 标记节点为不可调度状态。
  • kubectl uncordon <node_name>: 取消标记节点的不可调度状态。
  • kubectl drain <node_name>: 逐渐驱逐节点上的 Pod 并将其删除。
  1. 配置文件操作命令:
  • kubectl apply -f <directory>: 从目录中递归地创建或更新所有资源。
  • kubectl diff -f <yaml_file>: 比较文件中的配置与集群中的当前配置的差异。
  • kubectl get -o yaml <resource_type> <resource_name>: 获取资源的 YAML 配置。
  • kubectl edit <resource_type> <resource_name>: 编辑资源的配置。
  1. 高级资源查询和筛选命令:
  • kubectl get <resource_type> --all-namespaces: 列出所有命名空间中的指定类型的资源。
  • kubectl get <resource_type> -l <label_key>=<label_value>: 根据标签筛选指定类型的资源。
  1. 持久化存储命令:
  • kubectl get pv: 列出所有持久卷。
  • kubectl get pvc: 列出所有持久卷声明。
  • kubectl describe pv <pv_name>: 显示持久卷的详细信息。
  • kubectl describe pvc <pvc_name>: 显示持久卷声明的详细信息。
  1. 集群状态和健康检查命令:
  • kubectl get componentstatuses: 显示集群组件的状态。
  • kubectl get cs: 显示集群组件的状态的简写形式。
  • kubectl get nodes --watch: 实时监视节点的状态变化。

这些命令提供了更多关于Kubernetes集群管理和资源操作的功能。您可以根据自己的需求和用例使用这些命令。请记住,您可以在命令后面添加 --help 选项来获取更多关于每个命令的详细帮助信息。例如:kubectl get pods --help

Kubernetes拥有丰富的功能和命令集,可以根据不同的用例和场景进行深入学习和探索。如果您有特定的问题或需求,请告诉我,我将很乐意为您提供帮助!


更多

当然!这里是更多的Kubernetes(K8s)常用命令,以帮助您更好地管理和操作Kubernetes集群中的资源。

  1. 状态和调试命令:
  • kubectl get events: 列出集群中的事件。
  • kubectl describe event <event_name>: 显示指定事件的详细信息。
  • kubectl top nodes: 显示集群节点的资源使用情况。
  • kubectl top pods: 显示集群中 Pod 的资源使用情况。
  1. 执行命令和调试容器内部命令:
  • kubectl exec -it <pod_name> -- <command>: 在 Pod 内部执行命令。
  • kubectl logs <pod_name>: 查看 Pod 的日志。
  • kubectl logs -f <pod_name>: 实时跟踪 Pod 的日志输出。
  1. 集群网络相关命令:
  • kubectl get services: 列出所有服务。
  • kubectl describe service <service_name>: 显示服务的详细信息。
  • kubectl expose deployment <deployment_name> --port=<port> --target-port=<target_port>: 暴露部署的端口。
  1. 升级和回滚应用程序命令:
  • kubectl set image deployment/<deployment_name> <container_name>=<new_image>: 更新部署中容器的镜像。
  • kubectl rollout status deployment/<deployment_name>: 检查部署的滚动更新状态。
  • kubectl rollout history deployment/<deployment_name>: 查看部署的历史版本。
  • kubectl rollout undo deployment/<deployment_name>: 回滚部署到先前的版本。
  1. 节点调度和亲和性命令:
  • kubectl label nodes <node_name> <label_key>=<label_value>: 为节点添加标签。
  • kubectl label nodes <node_name> <label_key>-: 删除节点上的标签。
  • kubectl taint nodes <node_name> <taint_key>=<taint_value>:<taint_effect>: 在节点上设置容忍性。

这些命令提供了更多关于Kubernetes集群管理和资源操作的功能。您可以根据自己的需求和用例使用这些命令。请记住,您可以在命令后面添加 --help 选项来获取更多关于每个命令的详细帮助信息。例如:kubectl get pods --help

Kubernetes拥有丰富的功能和命令集,可以根据不同的用例和场景进行深入学习和探索。如果您有特定的问题或需求,请告诉我,我将很乐意为您提供帮助!