我目前正在使用Chef的测试厨房来测试我的配置,然后再将它们应用到我的托管节点。
我已经指定了Ubuntu 14.04 + 16.04,以及Debian 7.11 + 8.8作为要测试的平台。我能够在Ubuntu 14.04 + 16.04实例以及Debian 8.8实例上汇聚我的配置。当试图收敛Debian 7.11实例时,我收到以下错误消息:
kitchen converge jenkins-complete-install-debian-711
-----> Starting Kitchen (v1.16.0)
-----> Converging <jenkins-complete-install-debian-711>...
Preparing files for transfer
Preparing dna.json
Resolving cookbook dependencies with Berkshelf 5.6.4...
Removing non-cookbook files before transfer
Preparing validation.pem
Preparing client.rb
-----> Chef Omnibus installation detected (install only if missing)
Transferring files to <jenkins-complete-install-debian-711>
/opt/chef/embedded/bin/ruby: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by /opt/chef/embedded/lib/libruby.so.2.4)
>>>>>> ------Exception-------
>>>>>> Class: Kitchen::ActionFailed
>>>>>> Message: 1 actions failed.
>>>>>> Converge failed on instance <jenkins-complete-install-debian-711>. Please see .kitchen/logs/jenkins-complete-install-debian-711.log for more details
>>>>>> ----------------------
>>>>>> Please see .kitchen/logs/kitchen.log for more details
>>>>>> Also try running `kitchen diagnose --all` for configuration
似乎:
/opt/chef/embedded/bin/ruby: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by /opt/chef/embedded/lib/libruby.so.2.4)
是罪魁祸首,但我不确定导致此错误的原因。看起来根据bento project on github支持Debian 7.11,所以我想象我需要修改一些东西以使其工作。有没有人使用Debian 7.11测试厨房有经验?
答案 0 :(得分:0)
正如任何可能遇到此问题的人的后续行动一样,我找到了答案。根据{{3}},此问题的解决方法似乎是清除~/.kitchen/cache
目录。
一旦我清除了所有文件的这个目录,我就可以在Debian 7.11以及Debian 8.8上收集我的运行列表。
答案 1 :(得分:0)
与 kitchen dokken 面临同样的错误问题。通过移除现有的厨师容器修复:
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
391bb1e8fb3b chef/chef:12 "true" 12 hours ago Created chef-12
$ docker rm chef-12
之后,问题消失了