草庐IT

chef-solo

全部标签

docker - Vagrant , docker , puppet , Chef

我什至不明白标题中服务之间的基本区别。这些服务只是提供软件来帮助您配置/组织/管理您的虚拟机,还是它们还提供物理基础设施供您的虚拟机运行?换句话说,它们只是开发人员与AWS、Rackspace和Azure之间的便捷接口(interface)吗? 最佳答案 不完全是。Chef/Puppet是“相同的”,它们是配置管理。虽然您可以使用它们来管理虚拟机或公共(public)/私有(private)云,但大多数人并不倾向于以这种方式使用它们。它们是配置管理。它们通常在启动虚拟机以使其处于所需状态后发挥作用。也就是说,虚拟机上需要什么软件,需

docker - Vagrant , docker , puppet , Chef

我什至不明白标题中服务之间的基本区别。这些服务只是提供软件来帮助您配置/组织/管理您的虚拟机,还是它们还提供物理基础设施供您的虚拟机运行?换句话说,它们只是开发人员与AWS、Rackspace和Azure之间的便捷接口(interface)吗? 最佳答案 不完全是。Chef/Puppet是“相同的”,它们是配置管理。虽然您可以使用它们来管理虚拟机或公共(public)/私有(private)云,但大多数人并不倾向于以这种方式使用它们。它们是配置管理。它们通常在启动虚拟机以使其处于所需状态后发挥作用。也就是说,虚拟机上需要什么软件,需

git - 与 Chef 一起检查 Git 存储库?

我有一个Git存储库,我想将其checkout到服务器上。是否有ChefRecipe可以做到这一点? 最佳答案 gitSCMresource可能是你要找的。简单的资源使用示例:git"/path/to/check/out/to"dorepository"git://github.com/opscode/chef.git"reference"master"action:syncend如果你想抓取一个特定的分支,另请参阅“revision”属性。 关于git-与Chef一起检查Git存储库?

linux - 如何判断 Linux 上是否安装了 Chef 客户端?

我需要一种编程方式(任何方式)来判断Linux上是否安装了Chef客户端。我能想到的唯一方法是查看/etc/chef是否存在,但这可能不是万无一失的。我也在考虑检查knife命令的输出,但我对Chef客户端的理解是knife不是强制性部分客户端安装。换句话说,我相信可以安装客户端,但不能安装knife。想法? 最佳答案 可以使用whichknife或者whichchef-client来判断(存在状态0:commandfound,否则1)。虽然knife在工作站上使用,但它应该随每个chef安装一起提供。但为了保存,请检查chef-c

java - 如何使用 chef 使用 execute 更新 java 的替代品?

我有语法错误,我不确定如何解决它们。在角色文件中,我定义了以下内容:default_attributes('jdk'=>{'version'=>'1.8.0_31'},'java'=>{'home'=>'/usr/lib/jvm/jdk1.8.0_31'},)下面尝试使用javahome,但是运行失败execute"update_alt_java"docommand"update-alternatives--install"/usr/bin/java""java""#{node['java']['home']}/bin/java"1"action:createsend出现以下错误Syn

linux - 在 chef-solo 部署 bash 脚本中检测主机操作系统发行版

部署chef-solo设置时,您需要在使用sudo或不使用sudo之间切换,例如:bashinstall.sh和sudobashinstall.sh取决于主机服务器上的发行版。如何实现自动化? 最佳答案 ohai已经填充了这些属性并且在您的Recipe中很容易获得例如,"platform":"centos","platform_version":"6.4","platform_family":"rhel",你可以引用这些作为ifnode[:platform_family].include?("rhel")...end要查看ohai设

docker - Docker 和 Chef 的新 Habitat 工具有什么区别?

Chef的新Habitat工具是否可以与Docker一起使用?如果是这样,Habitat试图解决什么问题,或者它只是试图替换Docker工具集中的工具(例如,DockerSwarm、DockerMachine、DockerCompose等)? 最佳答案 这绕过了StackOverflow对开放式问题的政策限制,但我还是会回答:Docker和Habitat并没有真正重叠。竞争的重点是构建发布工件。Docker有Dockerfiles和dockerbuild,Habitat有计划和Studio。两者的输出都可以是Docker镜像,它基本

mongodb - Chef solo 错误: Cookbook apt not found

Hy我正在尝试在AmazonEC2LinuxAMI上使用ChefSolo运行MongoDB配方。我已经安装了Omnibus,在.rb文件中设置了说明书路径,在.json文件中设置了运行列表。我已经将mongodbrecipezip的内容从github复制到了cookbook文件夹,然后运行了chef-solo命令。结果如下:致命:Chef::Exceptions::CookbookNotFound:找不到Recipe。如果您从另一本Recipe加载apt,请确保在元数据中配置依赖项我对Linux也很陌生,我在这里做错了什么? 最佳答案

ruby - 如何按角色查找 Chef 节点ip

我有一个问题。我正在尝试获取一个运行postgresql并且是复制主机的节点IP。所以我可以将IP植入repmgrcookbook,这样它就会自动将其设置到SSH配置文件中。我需要它,因为我没有在端口22上运行SSH,所以我需要使该过程自动化。这是configure.rb文件:templateFile.join(node[:repmgr][:pg_home],'.ssh/config')dosource'ssh_config.erb'mode0644ownernode[:repmgr][:system_user]groupnode[:repmgr][:system_user]varia

ruby - Chef 在错误的文件夹中寻找模板

这是我的设置cookbooks/supervisord/definitions/supervisord_group.erbtemplates/process_group.conf.erbmy_app/recipes/default.rb在cookbooks/supervisord/definitions/supervisord_group.erb我有这个:define:supervisord_group,:programs=>[],:enable=>truedoinclude_recipe"supervisord::install"ifparams[:enable]template"#