第 17 / 18 篇

附录 B 命令速查与术语

命令速查

# 我在操作哪个集群?
kubectl config current-context
# 节点状态
kubectl get nodes
# 创建或更新声明
kubectl apply -n k8s-book -f deployment.yaml
# 查应用、服务和 Pod
kubectl get deployments,services,pods -n k8s-book
# 查详细状态与事件;替换占位符后执行
kubectl describe pod <Pod名称> -n k8s-book
# 查最近日志
kubectl logs deployment/hello-web -n k8s-book --tail=100
# 观察一次发布是否完成
kubectl rollout status deployment/hello-web -n k8s-book --timeout=120s
# 调试访问
kubectl port-forward -n k8s-book service/hello-web 8080:80

logs deployment/hello-web 通常选择其中一个 Pod,并不自动汇总所有副本。需要按标签汇总时,应查阅 logs 的选择器、并发和容器参数,并留意输出所属副本。

小白术语表

术语 可以先这样理解
API 程序之间约定的交互接口
镜像 Image 应用及运行所需内容的分发模板
容器 Container 从镜像启动的运行实例
Cluster 一组受 Kubernetes 管理的资源
Node 为 Pod 提供运行资源的节点
Pod 一个或多个紧密相关容器的运行单位
Deployment 管理无状态应用副本和更新的控制器资源
ReplicaSet 维持一组 Pod 副本数的资源
Service 为一组后端提供稳定访问抽象
Namespace 资源的逻辑分组范围
Label 便于分组和筛选的键值标签
Selector 按条件选择对象的规则
ConfigMap 非敏感配置对象
Secret 承载需要谨慎处理的数据的对象
PVC 应用的持久存储申请
Ingress HTTP/HTTPS 入口路由规则资源
Controller 持续推动实际状态接近期望状态的程序
Context kubectl 当前使用的集群、身份与命名空间组合