You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Traefik2.4.9报错uses a non-existent resolver: inwx求助

Traefik证书解析器不存在问题排查与解决方案

问题描述

遇到证书解析器无法找到的问题,查阅了所有相关主题内容仍未获得解决方案。

环境信息

  • kubernetes v1.20.6
  • traefik: 2.4.9

配置说明

通过helm chart安装Traefik,使用的values.yaml配置如下:

image:
  name: traefik

globalArguments: # tried with "globalArguments" and "additionalArguments"
  - "--api.insecure=true"
  - "--accesslog=false"
  - "--log.level=DEBUG"
  - "--certificatesresolvers.inwx.acme.email=*****@example.com"
  - "--certificatesresolvers.inwx.acme.caServer=https://acme-staging-v02.api.letsencrypt.org/directory"
  - "--certificatesresolvers.inwx.acme.dnschallenge=true"
  - "--certificatesresolvers.inwx.acme.dnschallenge.provider=inwx"
  - "--certificatesresolvers.inwx.acme.storage=/data/acme.json"

ingressRoute:
  dashboard:
    enabled: true
    insecure: true
  api:
    insecure: true

persistence:
  enabled: true
  accessMode: ReadWriteOnce
  size: 128Mi
  path: /data
  annotations: {}

env:
  - name: INWX_USERNAME
    valueFrom:
      secretKeyRef:
        name: inwx-dns
        key: INWX_USERNAME
  - name: INWX_PASSWORD
    valueFrom:
      secretKeyRef:
        name: inwx-dns
        key: INWX_PASSWORD

rbac:
  enabled: true
  namespaced: false

ports:
  traefik:
    port: 9000
    expose: true

错误信息

指定路径下生成了空的acme.json文件,但Traefik打印如下错误:

the router flweber-whoami-ingress-flweber-test-foo-example-de-flweber-whoami@kubernetes uses a non-existent resolver: inwx

Ingress定义

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: flweber-whoami-ingress
  namespace: flweber-test
  annotations:
    kubernetes.io/ingress.class: traefik
    traefik.ingress.kubernetes.io/router.entrypoints: websecure
    traefik.ingress.kubernetes.io/router.tls: "true"
    traefik.ingress.kubernetes.io/router.tls.certresolver: "inwx"
    traefik.ingress.kubernetes.io/router.middlewares: flweber-test-flweber-stripprefix@kubernetescrd
spec:
  rules:
    - host: foo.example.de
      http:
        paths:
          - path: /flweber-whoami
            pathType: Prefix
            backend:
              service:
                name: flweber-whoami
                port:
                  number: 80

修复方案

这是Traefik 2.4.x版本搭配对应Helm Chart的常见配置问题,按以下步骤操作即可解决:

  1. 修正启动参数配置项:Traefik 2.4.9对应的官方Helm Chart中,全局启动参数配置项已经从globalArguments更改为additionalArguments,原globalArguments参数在该版本不会被注入到Pod启动参数中,导致证书解析器配置未生效。将values.yaml中的globalArguments字段重命名为additionalArguments即可。
  2. 补充websecure端口配置:当前values.yaml中未显式声明websecure(默认443)端口的暴露配置,需要补充端口配置确保TLS入口正常启用,示例如下:
ports:
  traefik:
    port: 9000
    expose: true
  web:
    port: 80
    expose: true
  websecure:
    port: 443
    expose: true
    tls:
      enabled: true
  1. 验证acme.json权限:确认PersistentVolume挂载后,/data/acme.json文件的权限为600,权限不符合的话Traefik会拒绝读取写入该文件,也会间接导致解析器加载失败。
  2. 生效配置:修改values.yaml后执行helm upgrade更新Traefik发布,删除原有Traefik Pod让新配置生效,之后即可看到inwx解析器已经正常加载。

内容的提问来源于stack exchange,提问作者Florian Weber

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 10:06:03