kubectl命令
查看所有 pod 列表, -n 后跟 namespace, 查看指定的命名空间
kubectl get pod
kubectl get pod -n kube
查看 RC 和 service 列表, -o wide 查看详细信息
kubectl get rc,svc
kubectl get pod,svc -o wide
kubectl get pod
显示 Node 的详细信息
kubectl describe node 192.168.0.212
显示 Pod 的详细信息, 特别是查看 pod 无法创建的时候的日志
kubectl describe pod
eg:
kubectl describe pod redis-master-tqds9
根据 yaml 创建资源, apply 可以重复执行,create 不行
kubectl create -f pod.yaml
kubectl apply -f pod.yaml
基于 pod.yaml 定义的名称删除 pod
kubectl delete -f pod.yaml
删除所有包含某个 label 的pod 和 service
kubectl delete pod,svc -l name=
kubectl delete namespace xxx
删除所有 Pod
kubectl delete pod --all
查看 endpoint 列表
kubectl get endpoints
kubectl get namespace
执行 pod 的 date 命令
kubectl exec
kubectl exec
kubectl exec
通过bash获得 pod 中某个容器的TTY,相当于登录容器
kubectl exec -it
eg:
kubectl exec -it redis-master-cln81 -- bash
例如user-deployment:
kubectl --namespace=default exec -it user-deployment-54469dd57-vg87g --container user -- sh
获取所有k8s资源类型
kubectl api-resources
获取所有k8s自定义资源申明
kubectl get crd
获取所有k8s控制器资源
kubectl get controllerrevisions -A
获取所有wehhook
kubectl get mutatingwebhookconfigurations
启动一个nginx容器
kubectl run nginx --image=nginx --port=80
运行一个在前台运行的 busybox 单个实例,如果退出不会重启。
kubectl run busybox -it --image=busybox --env="POD_NAMESPACE=default" --restart=Never
调试镜像,通常“--command -- sleep 3600”启动参数可用于
#容器启动sleep 3600秒,即容器运行1小时,
kubectl run busybox -it --image=busybox --command -- sleep 3600
#格式
# run NAME --image=image [--env="key=value"] [--port=port] [--replicas=replicas] [--dry-run=bool] [--overrides=inline-json] [--command] -- [COMMAND] [args...]
通过在default命名空间下创建deploymen启动一个nginx pod
kubectl create deployment nginx --image=nginx:1.22 --port=80 -n default
查看容器的日志
kubectl logs
kubectl logs -f