Cert已经在哈希表异常中

时间:2015-06-24 06:27:32

标签: ruby chef x509certificate embedded-ruby

我正在使用厨师dk版本12,我已完成基本设置并上传了许多食谱,目前我在default.rb中使用remote_directory 我观察到的是,当目录中的文件/层次结构太多时,上传失败并出现以下异常: -

ERROR: SSL Validation failure connecting to host: xyz.com - SSL_write: cert already in hash table
ERROR: Could not establish a secure connection to the server.
Use `knife ssl check` to troubleshoot your SSL configuration.
If your Chef Server uses a self-signed certificate, you can use
`knife ssl fetch` to make knife trust the server's certificates. 
Original Exception: OpenSSL::SSL::SSLError: SSL_write: cert already in hash table 

如前所述,与服务器的连接不是问题,只有当文件太多/层次结构更多时才会发生。 你能告诉我能做些什么吗?我尝试在线搜索解决方案,但未能得到解决方案

我已经检查了问题here,但它没有解决我的问题 厨师为不与厨师合作的人使用嵌入式红宝石和openssl

关于tensibai的建议的一些更新, 自添加--concurrency 1选项后,例外情况发生了变化, 最初我收到了, INFO: HTTP Request Returned 403 Forbidden:ERROR: Failed to upload filepath\file (7a81e65b51f0d514ec645da49de6417d) to example.com:443/bookshelf/… 3088476d373416dfbaf187590b5d5687210a75&Expires=1435139052&Signature=SP/70MZP4C2U‌​dUd9%2B5Ct1jEV1EQ%3D : 403 "Forbidden" <?xml version="1.0" encoding="UTF-8"?><Error><Code>AccessDenied</Code><Message>Access Denied</Message>

然后昨天它已改为 INFO: HTTP Request Returned 413 Request Entity Too Large: error ERROR: Request Entity Too Large Response: JSON must be no more than 1000000 bytes.

我应该减少文件数量还是有其他选择?

Knife --version导致Chef:12.3.0

2 个答案:

答案 0 :(得分:1)

  

我应该减少文件数量还是有其他选择?

通常情况下,食谱中的文件不会太大和太多,如果你有很多文件可以分辨它,那么你应该改变分发文件的方式。

一个选项可能是制作tarball,但这会更难管理已删除的文件。

如果你在内部厨师服务器上的另一个选择是遵循建议here并更改nginx的client_max_body_size 2M;值,但我无法保证它能够正常工作。

答案 1 :(得分:0)

我遇到了同样的错误,我在厨师服务器上运行了chef-server-ctl reconfigure,然后再次尝试上传食谱,一切都恢复正常了