【问题标题】:error validating data: [ValidationError(Deployment): unknown field "\u00a0 name" during `kubectl apply -f myfile.yaml`验证数据时出错:[ValidationError(Deployment): unknown field "\u00a0 name" during `kubectl apply -f myfile.yaml`
【发布时间】:2020-06-25 20:22:41
【问题描述】:

我在部署期间遇到了这个问题:

# kubectl apply -f myfile.yaml
error: error validating "myfile.yaml": error validating data: [ValidationError(Deployment): unknown field "\u00a0 name" in io.k8s.api.apps.v1.Deployment, ValidationError(Deployment): unknown field "\u00a0 replicas" in io.k8s.api.apps.v1.Deployment, ValidationError(Deployment): unknown field "\u00a0 \u00a0 app" in io.k8s.api.apps.v1.Deployment, ValidationError(Deployment): unknown field "\u00a0 \u00a0 \u00a0 - name" in io.k8s.api.apps.v1.Deployment, ValidationError(Deployment): unknown field "\u00a0 \u00a0 \u00a0 app" in io.k8s.api.apps.v1.Deployment, ValidationError(Deployment): unknown field "

尝试使用 yamllint 验证它也无济于事:

# yamllint myfile.yaml
myfile.yaml
  1:1       warning  missing document start "---"  (document-start)

【问题讨论】:

    标签: validation kubectl


    【解决方案1】:

    实际的部署文件无关紧要,因为我实际上找到了解决方案并粘贴在这里以供参考。

    原来问题出在 unicode 空格上,使用 vi 检查文件时无法发现这些空格,但使用 yamllint 检查文件时应该发现恕我直言。无论如何,按照bash - Remove all Unicode Spaces and replace with Normal Space 中的描述转换文件可以缓解这个问题。

    # perl -CSDA -plE 's/\s/ /g' myfile.yaml > myfile2.yaml
    # kubectl apply -f myfile2.yaml
    deployment.apps/xxx created
    

    希望对某人有所帮助。

    【讨论】:

      【解决方案2】:

      您的 yaml 文件中似乎有一些不可见的特殊字符。 我强烈推荐使用 vi/vim 编辑器的 :set list 命令。 发现特殊字符非常有用,尤其是在您使用 kubernetes 清单 yaml 文件时。

      【讨论】:

      • 我在 vi 中尝试了 :set list 命令来发现问题,但看起来在这种情况下它不起作用。提供文件以供参考:github.com/rbogusze/oracleinfrastructure/tree/master/scripto/… 其中myfile.yaml 是具有不可见unicode 空格的文件,myfile2.yaml 是清理后的版本。
      • 第 26 行出现语法错误。在 configMap 卷之前缺少额外的空格:- name: html-volume configMap: name: mydog-html
      猜你喜欢
      • 2021-02-04
      • 2019-12-11
      • 1970-01-01
      • 2022-12-27
      • 2021-12-05
      • 2018-12-21
      • 1970-01-01
      • 1970-01-01
      • 2019-11-18
      相关资源
      最近更新 更多