常用命令

以下是一些集群内的常用的命令,帮助你在 英博云GPU容器服务集群 上使用 k8s 时更加得心应手,更多命令请参考官方文档open in new window

申请和编辑清单

kubectl apply -f [manifest.yaml] # 应用清单来部署资源或通过覆盖现有清单来应用更改
kubectl edit [resource_type] [resource_name/id] # 使用文本编辑器编辑资源清单

获取状态

# 通用语法
kubectl get [资源类型]

# 部署
kubectl  get deployment  # 显示default命名空间下的部署
kubectl  get deployment -A  # 显示所有命名空间下的部署
kubectl  get deployment  [deployment-name]  # 显示特定的 Deployment

# 服务
kubectl  get service  #显示default命名空间下的所有服务
kubectl  get service -A  # 显示所有命名空间下的部署
kubectl  get service -n  [namespace]  #...在特定的命名空间中

# PVC
kubectl  get pvc  # 显示default命名空间下活动的持久卷声明(存储卷)
kubectl  get pvc -A # 显示所有命名空间下的持久卷声明(存储卷)

# Pod
kubectl  get pod  # 显示default命名空间下的所有 Pod
kubectl  get pod -A  # 显示所有命名空间下的部署
kubectl  get pod -o wide  #...更多信息
kubectl  get pod -n  [namespace]  #...在特定的命名空间中

描述Pod并获取日志

# 通用语法
kubectl  describe  [资源类型] [资源名称/id]

# Pod
kubectl  describe pods  # 显示所有 Pod 的详细信息
kubectl  describe pod  [pod_id]  #...关于特定 Pod
kubectl  describe pod  [pod_id] -o yaml  #...关于特定 Pod,采用 YAML 格式

# 日志
kubectl  logs -f  [pod_id]  # 获取 pod 的流日志

删除资源

kubectl delete [资源类型] [资源名称/id]
kubectl  delete pod  [pod_name]  # 删除一个 pod,deployment 将启动一个新的
kubectl  delete deploy  [deployment_name]  # 删除部署,不会重新启动

pod交互

示例

kubectl exec -it -n [namespace] [pod_name] -- bash # 在你的 pod 中打开一个 bash shell