kubectl 语法
kubectl [command] [TYPE] [NAME] [flags]
- command:指定在一个或多个资源商要执行的操作。例如:create、get、describe、delete、apply
- TYPE:执行资源类型(如:pod、node、services、deployments等)。资源类型大小写敏感,可以指定单数、复数或缩写形式。
# 获取所有命名空间列表
kubectl get ns
# 强制删除命名空间
kubectl delete namespace <namespace> --force
# 获取当前命名空间中所有Pod的列表
kubectl get pods --all-namespaces
kubectl get pod -A
kuebctl -n <namespace> get pod
kubectl -n <namespace> get pod -owide | grep xxx
# 获取集群中所有节点的列表
kubectl get nodes
# 获取当前命名空间中所有服务的列表
kubectl get services
# 获取当前命名空间中所有部署的列表
kubectl get deployments
# 创建一个部署
kubectl create deployment <deployment-name> --image=<image>
# 将一个部署暴露为一个服务
kubectl expose deployment <deployment-name> --port=<port>
# 扩展或缩小一个部署的副本数
kubectl scale deployment <deployment-name> --replicas=<num-replicas>
# 删除一个Pod(重启)
kubectl delete pod <pod-name>
# 强制删除一个pod
kubectl delete pod <pod-name> -n <namespace> --force --grace-period=0
# 删除一个服务
kubectl delete service <service-name>
# 删除一个部署
kubectl delete deployment <deployment-name>
# 查看一个Pod的日志
kubectl logs <pod-name>
# 进入pod
kubectl exec -it xxx(pod_id) bash
kubectl -n <namespace> exec -it <pod-name> bash
# 查看持久化卷
kubectl get pvc --all-namespaces | grep pvc-xxxx
kubectl get pvc --all-namespaces | grep pvc-xxxxxxxxxxx-xxxx-xxxxxxxx
# 根据端口号可以查询对应服务的所属租户
kubectl get svc --all-namespaces |grep 32589
kubectl -n <namespace> get svc 服务名称
# 查看pod的名称、类型、端口等信息
kubectl -n <namespace> get svc <pod-name>
kubectl -n <namespace> describe svc <pod-name>
# 将pod的svc文件下载到本地
kubectl -n <namespace> get svc <pod-name> -oyaml test.yaml
# 编辑pod的svc文件
kubectl -n <namespace> edit svc <pod-name>
# 编辑pod的配置文件
kubectl -n <namespace> edit cm <pod-name>