用途:为 homelab 的 Kubernetes 环境提供运维知识,覆盖集群访问、kubectl 操作、Flux GitOps 状态查看,以及不熟悉服务的排查思路。
主要能力:资料列出三个可用集群 dev、integration、live,需使用对应的 kube context 访问。常用 kubectl 命令包括:列出命名空间内 Pod(kubectl get pods -n <ns>)、列出全部命名空间 Pod(kubectl get pods -A)、查看 Pod 详情与事件(kubectl describe pod <pod> -n <ns>)、查看最近日志(kubectl logs <pod> -n <ns> --tail=100)、查看前一容器实例日志(kubectl logs <pod> -n <ns> --previous)、按时间排序查看事件(kubectl get events -n <ns> --sort-by='.lastTimestamp')、查看 Pod 与节点资源占用(kubectl top pods -n <ns>、kubectl top nodes)、查看命名空间标签(kubectl get ns <ns> --show-labels),以及查阅资源 API 结构(kubectl explain <resource>)。
Flux 用法:包含状态查询与触发协调。状态查询示例为 flux --context <cluster> get all、get kustomizations、get helmreleases -A;触发协调示例为 flux --context <cluster> reconcile source git flux-system、reconcile kustomization <name>、reconcile helmrelease <name> -n <namespace>。状态解读:Ready: True 表示已协调且健康;Ready: False 表示协调失败,需查看 message/reason;Stalled: True 表示反复失败后停止重试,可通过 suspend/resume 重置;Suspended: True 表示被有意暂停,可用 flux resume <type> <name> 恢复;Reconciling 表示正在应用,需等待完成。
研究未知服务:资料建议生成一个 haiku 子代理研究文档,提示词关注常见故障模式、健康指标与配置陷阱,并给出起始文档地址。同时提供 Chart 来源与文档映射,如 charts.jetstack.io 对应 cert-manager.io/docs,charts.longhorn.io 对应 longhorn.io/docs,grafana.github.io 对应 grafana.com/docs,prometheus-community.github.io 对应 prometheus.io/docs。
限制与注意:资料强调检查 Helm release 状态应使用 kubectl get helmrelease -A,而非 helm list,因为 Flux 通过 CRD 管理 release。本文未提供安装方式、收费、价格、平台支持或效果保证等信息。