【问题标题】:Request Entity Too Large Error while bootstrapping a new node from a Chef workstation从 Chef 工作站引导新节点时请求实体太大错误
【发布时间】:2016-04-18 08:53:35
【问题描述】:

我尝试使用此链接来设置 Chef 服务器、工作站和节点。从工作站引导新节点以在该节点上安装客户端时,出现以下错误:

Chef Client failed. 0 resources updated in 14 seconds
[2016-04-18T08:46:31+00:00] FATAL: Stacktrace dumped to /var/chef/cache/chef-stacktrace.out
[2016-04-18T08:46:31+00:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2016-04-18T08:46:31+00:00] ERROR: 413 "Request Entity Too Large"
[2016-04-18T08:46:31+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

这是我的引导命令:

knife bootstrap server_name -x username -P password --sudo --use-sudo-password

我在节点上的 /etc/chef/client.rb 文件中添加了 Ohai::Config[:disabled_plugins] = ["passwd"] 并从工作站重新运行命令,但得到了相同的错误。 有人可以帮我解决这个问题吗?

提前致谢。

【问题讨论】:

  • 听起来你的节点对象太大了,挖掘它的一种方法是添加一个配方(最好在最后一个配方的末尾):require 'pp'; pp node 以获取标准输出上的节点对象找出哪个属性很大。 (或者您可能在服务器端有问题,但很难猜测您使用的是托管还是私人厨师服务器等)
  • 嗨,你能说得更具体点吗?添加什么以及在哪里添加?

标签: chef-infra bootstrapping


【解决方案1】:

knife bootstrap 命令在您每次运行时都会覆盖整个 client.rb 配置。您要么必须制作一个包含该 sn-p 的新引导模板(如果您打算在大量机器上执行此操作),要么让它失败,编辑配置,然后在机器上运行 sudo chef-client 以让它注册。

【讨论】:

  • 嗨,你能告诉我如何制作一个新的引导模板以及在哪里添加它吗?
  • 语法不清楚,请你帮我看看 template.erb 的内容应该是什么?
【解决方案2】:

如果您使用的是 Che-12.8.1 或更高版本,您可以使用 Knife bootstrap client.d 功能:

您应该能够使用以下行创建一个名为 .chef/bootstrap/client.d/disabled_plugins.rb 的文件:

Ohai::Config[:disabled_plugins] = ["passwd"]

如果您在运行期间使用 chef-client 食谱来管理您的 chef-client 配置,您需要观察您的运行,以确保它们没有发生争吵并且该食谱没有帮助删除该文件并重新运行 ohai 并为您的节点大小添加气球(我没有玩过这个,所以不知道任何一种方式)。

【讨论】:

    猜你喜欢
    • 2012-07-12
    • 1970-01-01
    • 2017-05-20
    • 2013-11-23
    • 2016-11-24
    • 1970-01-01
    • 2016-08-05
    • 2016-02-10
    • 2016-02-01
    相关资源
    最近更新 更多