• 故障排查:kubectl报错ValidationError: unknown field \u00a0


    博客主页:https://tomcat.blog.csdn.net
    博主昵称:农民工老王
    主要领域:Java、Linux、K8S
    期待大家的关注💖点赞👍收藏⭐留言💬
    家乡

    故障详情

    最近在k8s集群上通过kubectl apply -f部署资源时,遇到以下报错。当时也很快解决了。现记录下故障和排查方法,以方便遇到同样报错的开发者。

    error: error validating “nfs.yaml”: error validating data: [ValidationError(ServiceAccount): unknown field “\u00a0\u00a0name” in io.k8s.api.core.v1.ServiceAccount, ValidationError(ServiceAccount): unknown field “\u00a0\u00a0namespace” in io.k8s.api.core.v1.ServiceAccount]; if you choose to ignore these errors, turn validation off with --validate=false

    请添加图片描述

    分析原因

    报错信息已经描述得很清楚,是因为name前的“\u00a0\u00a0”两个字符导致的。通过查询资料得知,\u00a0 在 utf-8编码中,表示不间断空格,主要用在office中,让一个单词在结尾处不会换行显示。在word中,可以通过 ctrlshiftspace 输入。

    我们在IDEA编辑器中打开nfs.yaml文件,然后查找空格,发现未匹配到name和所有表示缩进的空白字符。也验证了报错的提示信息。

    在这里插入图片描述

    用Sublime Text打开,更容易发现差异:
    在这里插入图片描述

    原来这个yaml文件中的内容是从一个word文件直接复制过来的,里面不小心就包含了一些\u00a0这一特殊空白字符。

    解决故障

    解决办法很简单,直接在编辑器里将\u00a0替换成普通空格就可以,IDEA,Sublime Text都可以很方便实现。
    在这里插入图片描述
    在这里插入图片描述
    替换后就可以顺利部署。

    在这里插入图片描述


    如需转载,请注明本文的出处:农民工老王的CSDN博客https://blog.csdn.net/monarch91 。

  • 相关阅读:
    1797_GNU pdf阅读器evince
    交叉编译工具链-Ubuntu 安装说明
    总结1008
    wordpress的lnmp环境一键安装和手工配置
    22 VueComponent 响应式处理
    1flask安装配置
    【数据结构】B : DS图应用--最短路径
    介绍Vue router的history模式以及如何配置history模式
    SVGO--使用/实例
    11 个 ES2022(ES13)中惊人的 JavaScript 新特性
  • 原文地址:https://blog.csdn.net/monarch91/article/details/125562104