k8s kubectl 常用命令

kubectl get pod --all-namespaces
# 更多pod相关的信息
kubectl get pod -o wide --all-namespaces
# 更多svc相关的信息
kubectl get svc -o wide --all-namespaces

kubectl get svc --all-namespaces
kubectl get svc -n kubernetes-dashboard
# 命名空间下的所以资源
kubectl -n kubernetes-dashboard get all
# 密钥详情
kubectl describe secret test-ingress-secret
# pod详情
kubectl describe pod kubernetes-dashboard-67484c44f6-qswjk -n kubernetes-dashboard
# pod日志
kubectl logs -f kubernetes-dashboard-67484c44f6-qswjk -n kubernetes-dashboard

kubectl get ingresses

kubectl delete -n default deployment myapp
kubectl delete -n default service myapp
kubectl delete -n default ingress test-myapp

Deployment

# apply 可以重复执行,create 不行
kubectl create -f nginx-deployment.yaml
kubectl apply -f nginx-deployment.yaml
kubectl apply -k ./nginx

kubectl get pods #查询 Pod 列表
kubectl delete -f nginx-deployment.yaml

kubectl delete pod --all # 删除所有 Pod

Service

kubectl get service

Secret

kubectl get secrets

PVC

kubectl get pvc

执行 pod 的 date 命令

kubectl exec <pod-name> -- date

通过bash获得 pod 中某个容器的TTY,相当于登录容器

kubectl exec -it <pod-name> -c <container-name> -- bash
kubectl exec -it redis-master-cln81 -- bash

查看容器的日志

kubectl logs <pod-name>
kubectl logs -f <pod-name> # 实时查看日志

伸缩 pod 副本

kubectl scale deployment {deployment_name} --replicas=2

proxy

kubectl proxy

感谢阅读这篇文章,如果你喜欢,或者遇到了问题,可以关注我的公众号