我正在使用 Chef 配置我的服务器。对于 git,我使用社区食谱,并在 Amazon Linux 中安装版本 1.8.3.1。但是安装后,我在运行 git 命令(如 git ls-remote 或 git clone)时没有得到任何输出(它也不会克隆项目)。我在 Google 上搜索,但无功而返。
答案1
2014-04-16@LuisDUrraca 提供了更多信息:
dmesg 中的错误invalid opcode
是 AWS Xen 虚拟机管理程序的产物。这可能意味着虚拟机管理程序不支持 I/O 请求中的操作,或者内存不足。检查您的 RAM 和偷时间。
我最近听到有人抱怨 puppet 也存在同样的问题。我敢打赌,问题更可能出在其他操作系统组件上,而不是 Chef 本身。
您是否尝试过使用 运行
git clone
?--verbose
您还应该检查是否可以连接到远程主机,否则 (ping
,curl
,ssh
)?您是否验证过之前是否安装了 git?非常旧的 git 安装不应该安装,但可能会破坏社区食谱代码逻辑。您是否检查过输出以
git --version
查看是否已安装1.8.3.1现在。您还可以验证Chef Entreprise 日志或安装的包管理器日志。这组服务器是否全部受到影响?您是否尝试在虚拟机或开发环境中重现该问题?在虚拟机中,您可以尝试手动删除并重新安装 git,看看是否能解决问题。如果能,而且很可能能,那么您只需复制一份食谱即可在您的服务器上执行此操作。
如果您确定那
yum
是故障点,yum clean && yum check-update
则可能是起点(即通过集群 SSH)。