
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
Linkerd Certificate Expiration Check Docker镜像是一个轻量级工具,专门用于监控Linkerd服务网格环境中的证书有效期状态。该镜像通过定期扫描Linkerd控制平面(如identity服务)及数据平面(如代理注入的Pod)使用的TLS证书,识别即将过期或已过期的证书,并输出明确的状态信息及告警提示。其核心价值在于帮助运维团队提前发现证书过期风险,确保及时更新证书,保障服务网格通信的连续性和安全性。
linkerd_cert_expiry_seconds)等方式提供告警信息linkerd)及数据平面命名空间(如default、prod等)kubeconfig文件或使用集群内Service Account)linkerd check无异常)bashdocker run -d \ --name linkerd-cert-check \ -v $HOME/.kube/config:/root/.kube/config:ro \ # 挂载本地kubeconfig(只读) -e CHECK_INTERVAL=3600 \ # 检查间隔:1小时(单位:秒) -e NAMESPACE="linkerd,default,prod" \ # 检查的命名空间(多个用逗号分隔) -e ALERT_THRESHOLD=14 \ # 过期阈值:剩余14天触发告警 -e LOG_LEVEL=debug \ # 日志级别:debug(可选info/warn/error) -p 9090:9090 \ # 暴露Prometheus指标端口 your-registry/linkerd-cert-expiry-check:latest
yamlversion: '3' services: linkerd-cert-check: image: your-registry/linkerd-cert-expiry-check:latest container_name: linkerd-cert-check volumes: - $HOME/.kube/config:/root/.kube/config:ro environment: - CHECK_INTERVAL=86400 # 检查间隔:24小时(默认值) - NAMESPACE=linkerd # 仅检查Linkerd控制平面命名空间(默认值) - ALERT_THRESHOLD=30 # 过期阈值:30天(默认值) - KUBECONFIG_PATH=/root/.kube/config # kubeconfig文件路径(默认值) - PROMETHEUS_PORT=9090 # Prometheus指标端口(默认值) ports: - "9090:9090" restart: unless-stopped
| 参数名 | 描述 | 默认值 | 示例值 |
|---|---|---|---|
CHECK_INTERVAL | 证书检查间隔(单位:秒) | 86400(24h) | 3600(1h) |
NAMESPACE | 要检查的Kubernetes命名空间(多个用逗号分隔,*表示所有命名空间) | linkerd | linkerd,prod,default |
ALERT_THRESHOLD | 证书过期告警阈值(单位:天,剩余天数≤此值时触发告警) | 30 | 14 |
KUBECONFIG_PATH | 容器内kubeconfig文件路径(需通过挂载提供) | /root/.kube/config | /etc/kube/config |
LOG_LEVEL | 日志输出级别(可选:debug/info/warn/error) | info | debug |
PROMETHEUS_PORT | Prometheus指标暴露端口(设为0禁用指标暴露) | 9090 | 9100 |
日志输出
容器日志将直接输出证书检查结果,例如:
logINFO[2023-10-01T08:00:00Z] 开始证书检查,命名空间:linkerd,prod INFO[2023-10-01T08:00:02Z] 发现即将过期证书:linkerd-identity-issuer (命名空间:linkerd),剩余有效期:25天 WARN[2023-10-01T08:00:02Z] 证书已过期:linkerd-proxy-injector (命名空间:linkerd),过期时间:2023-09-28T12:00:00Z INFO[2023-10-01T08:00:02Z] 检查完成,共发现1个过期证书,1个即将过期证书
Prometheus指标
通过http://<容器IP>:<PROMETHEUS_PORT>/metrics可访问Prometheus指标,关键指标包括:
linkerd_cert_expiry_seconds{namespace="<ns>", cert_name="<name>"}:证书剩余有效期(秒),过期证书值为负linkerd_cert_check_success{namespace="<ns>"}:检查是否成功(1=成功,0=失败)get、list权限(针对secrets资源),建议通过RBAC为Service Account绑定最小权限(如仅允许访问linkerd及目标数据平面命名空间的secrets)secrets中(如linkerd-identity-issuer、linkerd-proxy-injector-tls等),镜像默认扫描此类secret的tls.crt字段,若自定义证书存储路径需通过环境变量CERT_SECRET_LABELS配置linkerd-cert-expiry-check:2.14)您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。
来自真实用户的反馈,见证轩辕镜像的优质服务