Chef infra 我已经安装了chef dk并开始使用Berkshellf,但berks上载失败

Chef infra 我已经安装了chef dk并开始使用Berkshellf,但berks上载失败,chef-infra,berkshelf,chefdk,Chef Infra,Berkshelf,Chefdk,我已经安装了chef client12.0.3,除此之外,我还安装了chef dk版本0.3.5,但chef dk为什么要安装chef client版本chef:11.18.0.rc.1 无法将烹饪书上载到chef服务器 berks工具架列表正在工作,但berks上载失败 错误: E, [2015-01-08T04:58:36.707534 #22533] ERROR -- : Ridley::Errors::ClientError: SSL_connect returned=1 errno=0

我已经安装了chef client
12.0.3
,除此之外,我还安装了chef dk版本
0.3.5
,但chef dk为什么要安装chef client版本
chef:11.18.0.rc.1

  • 无法将烹饪书上载到chef服务器
  • berks工具架列表正在工作,但berks上载失败
  • 错误:

    E, [2015-01-08T04:58:36.707534 #22533] ERROR -- : Ridley::Errors::ClientError: SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed
    E, [2015-01-08T04:58:36.708931 #22533] ERROR -- : /opt/chefdk/embedded/lib/ruby/gems/2.1.0/gems/celluloid-0.16.0/lib/celluloid/responses.rb:29:in `value'
    /opt/chefdk/embedded/lib/ruby/gems/2.1.0/gems/celluloid-0.16.0/lib/celluloid/calls.rb:92:in `value'
    /opt/chefdk/embedded/lib/ruby/gems/2.1.0/gems/celluloid-0.16.0/lib/celluloid/proxies/sync_proxy.rb:33:in `method_missing'
    /opt/chefdk/embedded/lib/ruby/gems/2.1.0/gems/celluloid-0.16.0/lib/celluloid/proxies/cell_proxy.rb:17:in `_send_
    
        There was an error connecting to the Chef Server
    

    它无法通过SSL验证过程。跟着我去修刀。对于Berkshell,您可以在
    config.json
    中禁用SSL验证,或者您可以将
    $SSL\u CERT\u文件设置为下载的服务器证书。

    因为我非常喜欢修复错误,而不是修复症状。这里是确保SSL连接与验证一起工作的方法(比coderanger one更详细一些):

    1) 获取服务器证书并将其添加到chef dk的cacert.pem文件中

    openssl s_客户端-showcerts-connect:443/dev/null | openssl x509-outform PEM>/opt/chefdk/embedded/ssl/certs/cacert.PEM

    2) 为ssl LIB设置环境变量:

    export SSL\u CERT\u FILE=/opt/chefdk/embedded/SSL/certs/cacert.pem


    重试您的上载,它应该可以工作。

    这是一个与伯克斯相关的问题。
    您可以取消berks配置文件中的ssl验证选项:

    echo '{"ssl": { "verify": false }}' > ~/.berkshelf/config.json
    

    您还可以在命令行上禁用ssl检查:

    berks upload --no-ssl-verify
    

    Ignore是在~/.berkself/config.json(或HOME%/.berkself/config.json)
    {“ssl”:{“verify”:false}}
    中设置的,谢谢分享。为我做了这项工作