Kubernetes 常用命令
Kubernetes 常用命令
kubectl 是 Kubernetes 的命令行工具,以下是一些常用的 kubectl 命令:
kubectl get:获取资源信息。例如,kubectl get pods 获取所有的 pod 信息,kubectl get services 获取所有的服务信息。
获取资源信息
获取所有的 pod 信息
kubectl get podskubectl get pods -n my-namespace
获取所有的服务信息
kubectl get services
获取所有命名空间信息
kubectl get namespaces
显示一个特定资源的详细信息
# 显示名为 my-pod 的 pod 的详细信息kubectl describe pod my-pod
创建一个资源
可以使用 -f 参数指定一个包含资源定义的 YAML 或 JSON 文件
# 创建一个在 my-pod.yaml 文件中定义的 podkubectl create -f my-pod.yaml
删除一个资源
# 删除名为 my-pod 的 podkubectl delete pod my-podkubectl delete pod my-pod -n my-namespacekubectl delete pod my-pod1 my-pod2 my-pod3 -n my-namespace
根据 yaml 文件删除 pod
kubectl delete -f file1.yaml -n my-namespace
在一个 pod 中执行命令
# 在名为 my-pod 的 pod 中执行 ls / 命令kubectl exec my-pod -- ls /
获取 pod 的日志
# 获取名为 my-pod 的 pod 的日志kubectl logs my-pod
根据 yaml 应用一个或多个资源的配置
# 应用在 my-pod.yaml 文件中定义的 pod 的配置kubectl apply -f my-pod.yaml# 应用多个yaml文件kubectl apply -f file1.yaml,file2.yaml,file3.yaml# 应用当前目录下所有的yaml文件kubectl apply -f ./*.yaml
管理资源的部署
# 查看名为 my-deployment 的 deployment 的部署状态kubectl rollout status deployment/my-deployment
管理 kubectl 的配置
# 显示所有的 contextkubectl config get-contexts
设置或查看当前的命名空间
# 设置当前的命名空间为 my-namespacekubectl config set-context --current --namespace=my-namespace
进入运行中的容器
kubectl exec -it -n <namespace> <pod-name> -- /bin/bash
将文件复制到 Pod 中
kubectl cp <local_file_path> <namespace>/<pod_name>:<pod_file_path>
更多命令可以使用 kubectl —help 查看