Kubernetes(简称K8s)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是Kubernetes的一些常用命令汇总,这些命令通常通过kubectl
命令行工具执行:
1)基础命令
-
kubectl get
:获取资源列表。 -
kubectl describe
:显示资源的详细信息。 -
kubectl create
:从文件或标准输入创建资源。 -
kubectl apply
:从文件或标准输入应用配置到资源。 -
kubectl delete
:删除资源。
2)容器日志
-
kubectl logs
:打印容器的日志。
3)容器执行命令
-
kubectl exec
:在容器内执行命令。
4)部署管理
-
kubectl rollout
:管理资源的部署,查看状态、历史、回滚等。 -
kubectl scale
:扩容或缩容 Deployment、ReplicaSet、Replication Controller或 Job。 -
kubectl autoscale
:自动调整 Deployment、ReplicaSet 或 ReplicationController 的副本数量。
5)服务发现和负载均衡
-
kubectl expose
:将 Deployment、Service、Pod 或 ReplicaSet 作为新的 Kubernetes Service 公开。
6)配置和存储
-
kubectl label
:更新资源上的标签。 -
kubectl annotate
:更新资源的注解。 -
kubectl config
:修改 kubeconfig 文件。
7)集群管理
-
kubectl cluster-info
:显示集群信息。 -
kubectl version
:显示客户端和服务端版本信息。
8)资源类型
以下是一些常用的资源类型,可以与kubectl get
、kubectl describe
、kubectl delete
等命令结合使用:
-
pods
:Pods。 -
nodes
:集群中的节点。 -
services
:Kubernetes 服务。 -
deployments
:部署。 -
replicasets
:副本集。 -
statefulsets
:有状态集合。 -
daemonsets
:守护进程集。 -
jobs
:一次性任务。 -
cronjobs
:周期性任务。 -
ingresses
:入口资源。
9)命令示例
- 获取所有Pods:
kubectl get pods
- 描述特定Pod:
kubectl describe pod <pod-name>
- 创建资源:
kubectl create -f <filename>.yaml
- 删除资源:
kubectl delete -f <filename>.yaml
- 查看日志:
kubectl logs <pod-name>
- 执行命令:
kubectl exec -it <pod-name> -- /bin/bash