最常见的11种kubectl资源类型
- pods (po)
- nodes(no)
- deployments (deploy)
- replicasets(rs)
- daemonsets(ds)
- statefulsets(sts)
- jobs
- cronjobs(cj)
- services(svc)
- persistentvolumes(pv)
- persistentvolumeclaim (pvc)
最常用的kubectl命令
- help—获取帮助
- get— 显示有关一个或多个资源的信息
- describe—显示关于一个或多个资源的详细信息
- logs—显示容器日志
- exec—进入容器中一个正在运行的进程
- apply—创建或选择一个资源
- delete—删除一个或多个资源
help
在命令之后输入—help以获取该命令的帮助。如,kubectl get pods –help
get
kubectl get all显示了关于运行中的pod、service、deployment以及Replicaset的关键信息。这是检查事物状态的首选命令,你可以将get和单个对象一起使用,并添加—watch标志以实时观察更新。
describe
kubectl describe all显示大量与你的集群相关的详细信息,你也可以将describe与单个对象一起使用。这个命令在debug过程中将大有用处。
logs
logs命令需要一个pod名称。当在多个pod中时,使用-c my-container标志来指定一个容器。使用—previous标志来获取不再运行的容器信息。
exec
exec帮助你debug一个容器进程,它允许你通过带-it的伪终端在容器内执行进程。例如,要在my_pod中进入容器并运行Bash,请输入kubectl exec -it my_pod bash。
apply
这一命令可以通过文件名或控制台输入,对资源进行配置。并且apply能够对集群资源进行声明式管理:如果资源不存在,apply将创建它;如果它存在,apply将更改它。此外,apply还能够添加Service到适用的资源或者通过添加Pod自动化弹性伸缩的Deployment。
请注意,你可以使用create来创建一个Deployment并且使用expose创建一个Service。但相对来说,无论对于文件本身还是之后需要重新使用来说,使用带有apply的YAML文件是更好选择。apply是创建和更新资源的“瑞士军刀”。
delete
kubectl delete pod my_pod这一命令可用于删除名称为my_pod的Pod。
要删除所有相同类型的资源,需要使用—all标志。例如,使用kubectl delete rs –all可以删除所有ReplicaSet。请注意,如果你尝试这一操作,那么要先删除Deployment,否则ReplicaSet将会重新启动。
https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands