草庐IT

chef-solo

全部标签

windows - Chef Powershell 从文件运行

使用Chef的powershell_script提供程序,我如何引用存储在Chef服务器上的文件而不是在同一文件中定义代码?基本上我如何从Chef客户端调用位于服务器上的.ps1? 最佳答案 您可以在powershell_script中直接调用未签名的powershell脚本,只要yourexecutionpolicyallowsit,这是Chef默认执行的操作。powershell_script"runsomescript"docode"c:/something/script.ps1"end如果您也希望chef部署脚本,您可以使用

windows - Chef : How do I check to see if a service is installed?

在Recipe中我想检查是否安装了服务,如果没有通知安装它所需的3个资源。我尝试了服务资源,它在安装时正确识别服务,但如果未安装服务则抛出异常。我不确定在这里使用什么操作。:nothing只是跳过资源,因此它会被执行,但任何其他操作在尝试对不存在的服务执行操作时都会出错。如何检测服务是否已安装并根据该信息采取行动?如果相关的话,我在Windows上运行。 最佳答案 看一下windows服务是如何定义的https://github.com/opscode/chef/blob/master/lib/chef/provider/servi

ruby - 用chef创建windows用户,并将用户添加到本地Administrators组

用户资源的Chef文档:http://docs.getchef.com/resource_user.html这样做有效:user"TestUser"dopassword"p@ssw0rd"end但是当我添加一个gid时它失败了:user"TestUser"dopassword"p@ssw0rd"gid"Administrators"end我也尝试过传递.\Administrator,但得到相同的结果:[2014-08-08T14:00:11-07:00]FATAL:ArgumentError:user[TestUser](test::usersline11)hadanerror:Arg

ruby - 在 chef lwrp 中安装、要求和使用 ruby​​ 库

我正在编写一个LWRP以使用APIkey为redis数据库播种以允许进行身份验证。我的麻烦是使用ruby​​的redis库。我四处搜索并在网上找到了一些示例,但没有一个对我有用。我在AWSOpsWorks上运行它,所以它使用的是chef-solo我已经尝试在我的运行列表中包含一个安装redisgem(https://github.com/brianbianco/redisio/blob/master/recipes/redis_gem.rb)的方法我也试过在Recipe中安装它们gem。r=gem_package"redis"doaction:installendr.run_actio

redis - 如何使用 Chef 运行 redis-cli 命令?

这是我今天的做法(Recipe中的代码片段):execute"redis-cli-command"docommand"echo'MYCOMMAND'|redis-cli"user"root"action:runend但不知何故这确实让我完全满意,我想知道是否有更好/更好的方法。 最佳答案 echo"setkv"|redis-cli--pipe 关于redis-如何使用Chef运行redis-cli命令?,我们在StackOverflow上找到一个类似的问题:

redis - chef-solo 安装redis最后挂了

chef-solo在安装redis时卡在最后,就好像chef在等待某个事件发生一样。这是我不得不用ctrl+c杀死它时的输出。[2013-05-14T15:55:27+00:00]错误:运行异常处理程序[2013-05-14T15:55:27+00:00]错误:异常处理程序完成Chef客户端失败。更新了8个资源[2013-05-14T15:55:27+00:00]致命:Stacktrace转储到/home/ubuntu/cache/chef-stacktrace.out[2013-05-14T15:55:27+00:00]致命:Chef::Exceptions::MultipleFai

mysql命令位置DESC但如果位置="chef"则放在第一位

问题:mysqlorderpositionDESCbutputfirstifposition="chef"我想降序排列,但先放一些东西。它的语法如何? 最佳答案 ORDERBYCASEWHENposition="chef"THEN0ELSE1END,positionDESC添加更多WHEN条件可以让您优先考虑一些位置ORDERBYCASEWHENposition="chef"THEN0--firstWHENposition="dogsbody"THEN99--lastELSE1END,positionDESC

mysql - Chef mysql opscode-cookbooks 不工作 : "could not find recipe ruby for cookbook mysql"

我打算使用https://github.com/opscode-cookbooks/mysql但是当我运行vagrantprovision时找不到菜谱mysql的reciperuby​​,它会像这样返回。[2014-04-23T10:13:06+00:00]ERROR:Runningexceptionhandlers[2014-04-23T10:13:06+00:00]ERROR:Exceptionhandlerscomplete[2014-04-23T10:13:06+00:00]FATAL:Stacktracedumpedto/var/chef/cache/chef-stacktr

ruby - 如何打印或调试 Chef 属性

我创建了一个带有属性的ChefRecipe,然后尝试将代码引导到节点并传递额外的属性和/或覆盖默认值。是否可以打印属性树以查看加载了哪些属性,哪些属性被覆盖了? 最佳答案 要从融合的Chef中获取整个属性树,而不是通过ChefServer中的Knife获取整个属性树,这在单独的环境中是无用的,请以有用的形式查看node.to_hash.更多信息在“Chef::Node”中。要获得pretty-print日志,您可以使用Chef的JSON库的pretty-print:output="#{Chef::JSONCompat.to_json

python - 你将如何使用 chef 安装 python 模块?

我们使用默认安装了Python的EngineYard。但是当我们启用SSL时,我们从我们的logentriesChefRecipe中收到以下错误消息。“警告:“ssl”模块不存在。使用不可靠的解决方法,无法验证主机身份。如果可能,请安装“ssl”模块或更新版本的Python(2.6)。”我正在寻找一种使用ChefRecipe安装SSL模块的方法,但我只是没有足够的经验。有人能指出我正确的方向吗?资源:LogentriesChefRecipe:https://github.com/logentries/le_chefLogentriesEY文档:https://logentries.co