常见问题排查

看懂错误原因,
再解决问题。

针对开发者经常搜索的 Helm、Kubernetes、YAML 和 JWT 报错,提供原因、修复示例与验证步骤。

开发问题排查

13 篇
CORS

No 'Access-Control-Allow-Origin' header is present

浏览器收到的响应没有授权当前 Origin;应分别检查 OPTIONS 与真实响应,而不是在所有地方盲目添加通配符。

DNS

DNS_PROBE_FINISHED_NXDOMAIN

Resolver 认为查询的名称不存在;应确认记录创建在真正的权威 Zone 中,并检查 NS 委派。

TLS

certificate has expired or is not yet valid

服务端实际返回的证书不在有效期内,或者验证机器时间不正确;应先检查线上入口,再决定是否替换文件。

JWT

JWT expired or exp claim validation failed

Token 的 exp 早于验证端当前时间;请确认秒与毫秒单位,并通过正常登录或刷新流程获取新 Token。

YAML

did not find expected key

当前行无法归属于正在解析的对象或数组;比较同级缩进并检查上一项是否完整。

YAML

mapping values are not allowed in this context

冒号在不应出现映射的位置被当作键值分隔符;请检查缩进,并为包含“冒号+空格”的文本加引号。

Kubernetes

field is immutable

更新修改了 Kubernetes 用作稳定身份的字段;请还原该字段,或规划受控替换。

Kubernetes

no matches for kind in version

API Server 无法把 apiVersion 与 kind 映射到资源;请使用受支持版本,或先安装对应 CRD。

Helm

has no deployed releases

upgrade 需要一个已部署修订;应安装 Release、使用 --install,或先恢复成功版本。

Helm

another operation (install/upgrade/rollback) is in progress

Helm 认为最新修订仍在进行。先查看 history,再在确认安全后回滚或处理失败修订。

Helm

YAML parse error converting YAML to JSON

模板已经输出文本,但生成结果不是有效 YAML;应查看报错行附近的最终渲染内容。

Helm

cannot overwrite table with non table

多个 values 来源用不同类型定义了同一个键,应在默认值和覆盖文件中保持结构一致。