Chef 安装错误 - 在资源上执行操作“运行”时出错

Chef 安装错误 - 在资源上执行操作“运行”时出错

我正在尝试在 ubuntu 12.04.5 64 位上安装 chef(chef-server_11.0.4-1.ubuntu.12.04)。

安装后,当我运行“chef-server-ctl reconfigure”时出现以下错误。

让我知道如何安装它。

[2014-12-20T14:16:10+05:30] ERROR: Running exception handlers
[2014-12-20T14:16:10+05:30] ERROR: Exception handlers complete
Chef Client failed. 2 resources updated
[2014-12-20T14:16:10+05:30] FATAL: Stacktrace dumped to /opt/chef-server/embedded/cookbooks/cache/chef-stacktrace.out
[2014-12-20T14:16:10+05:30] FATAL: Mixlib::ShellOut::ShellCommandFailed: execute[/opt/chef-server/embedded/bin/chpst -u chef_server -U chef_server /opt/chef-server/embedded/bin/rabbitmqctl wait /var/opt/chef-server/rabbitmq/db/[email protected]] (chef-server::rabbitmq line 80) had an error: Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '2'
---- Begin output of /opt/chef-server/embedded/bin/chpst -u chef_server -U chef_server /opt/chef-server/embedded/bin/rabbitmqctl wait /var/opt/chef-server/rabbitmq/db/[email protected] ----
STDOUT: Waiting for rabbit@localhost ...
pid is 6031 ...
STDERR: Error: process_not_running
---- End output of /opt/chef-server/embedded/bin/chpst -u chef_server -U chef_server /opt/chef-server/embedded/bin/rabbitmqctl wait /var/opt/chef-server/rabbitmq/db/[email protected] ----
Ran /opt/chef-server/embedded/bin/chpst -u chef_server -U chef_server /opt/chef-server/embedded/bin/rabbitmqctl wait /var/opt/chef-server/rabbitmq/db/[email protected] returned 2

重新启动 Rabbitmq Server 后更新错误

> [2014-12-23T09:55:15+05:30] ERROR: Running exception handlers
> [2014-12-23T09:55:15+05:30] ERROR: Exception handlers complete Chef
> Client failed. 8 resources updated [2014-12-23T09:55:15+05:30] FATAL:
> Stacktrace dumped to
> /opt/chef-server/embedded/cookbooks/cache/chef-stacktrace.out
> [2014-12-23T09:55:15+05:30] FATAL:
> Mixlib::ShellOut::ShellCommandFailed: execute[verify-system-status]
> (chef-server::bootstrap line 21) had an error:
> Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with
> [0], but received '7'
> ---- Begin output of curl -sf http://localhost:8000/_status ---- STDOUT: STDERR:
> ---- End output of curl -sf http://localhost:8000/_status ---- Ran curl -sf http://localhost:8000/_status returned 7

答案1

在 Ubuntu 上安装 chef 时存在一个已知问题。在重新配置期间,它会尝试启动并连接到 rabbitmq,但是 rabbitmq 服务器已在运行,因此启动失败。

可能发生的另一件事是 /etc/hosts 文件中没有 localhost 条目。

最有可能的是已经在运行的 rabbitmq,在这种情况下请尝试一下:

/etc/init.d/rabbitmq-server stop && chef-server-ctl reconfigure

如果这不起作用,请检查以确保 /etc/hosts 中存在以下内容:

127.0.0.1 localhost

答案2

nginx 可能没有启动。这些输出是什么:

chef-server-ctl status lsof -i:8000 chef-server-ctl tail

我不记得 Ubuntu 是否自带 lsof,所以你可能需要使用apt-get install lsof -y

答案3

我为这个问题尝试了很多次。我在谷歌上搜索了很多次。最后我找到了一个解决方案。

RabbitMQ 服务在5672端口上运行。但此端口已被其他服务使用。因此我5672使用以下命令检查端口上是否有任何服务正在运行:

netstat -nltp | grep 5672

我使用以下命令终止了端口 5672 的服务:

sudo kill `sudo lsof -t -i:5672`

然后我再次运行它sudo chef-server-ctl reconfigure并且它按预期工作。

相关内容