Chef infra 错误:Mixlib::ShellOut::CommandTimeout:windows\u批处理

我有一个配方需要很长时间才能执行(10小时),我得到了这个错误 错误:Mixlib::ShellOut::CommandTimeout:windows\u批处理 如您所见,它位于windows计算机上 食谱是 windows_batch "some_name" do code <<-EOH #copy code that takes several hours EOH timeout = 180000 end windows\u批处理“某些名称”执行 代

Chef infra 如何在提供流浪者盒子后运行厨师食谱

我正在使用Vagrant+Berkself+Chef Solo在我的开发机器上镜像我的生产AWS OpsWorks盒子的行为 我可以很好地把流浪者盒子装起来,但是现在,在它被供应之后,我希望能够运行一个不同于供应期间使用的食谱的厨师食谱。我想这样做是因为我试图模仿OpsWorks的行为:他们让我只需按下一个按钮就可以运行deployrecipe。我想能够使用流浪者或厨师独奏在我的流浪者盒运行相同的食谱 我想我可以通过在配置过程中添加一个配方来解决这个问题,该配方为我想要运行的不同按需配方构建不同

Chef infra 我应该使用include_recipe还是将配方添加到run_列表?

试图找出一个大型项目的最佳方法。使用include_recipe在配方中添加配方,而不是将配方添加到run_列表,何时才合适?有好的经验法则吗?在我看来,任何配方都应该能够在空机器上独立运行。所以,如果某个配方A依赖于在它之前运行的配方B,我总是使用include_配方 例如:2本食谱,tomcat和java。Tomcat需要java 当一些用户想要安装tomcat时,他可能不知道他实际上需要其他一些食谱来安装它。他运行tomcat配方,要么失败,出现一些完全没有帮助的错误消息,如“找不到jav

Chef infra 无法在chef-11.10.0 gem的任何存储库中找到ohai(~>;6.0)gem

我正在尝试将chef安装为gem,但由于一些防火墙问题,需要下载.gem文件,然后在我的系统中本地构建gem。对于chef gem,需要预先安装ohai geim。 但是在rubygems.org网站上找不到ohai的版本 厨师长需要ohai(~>6.0) 虽然ohai安装的版本是0.6.0,但两者似乎并不相同。如果您只想下载: 宝石: 下载: 如果需要源代码,请执行以下操作: GitHub: GitHub 6-stable: 只需使用omnibus安装程序?我需要chef gem 6.0

Chef infra 如何查找节点上安装的软件包版本?

我正在修改Apache cookbook,使其与2.4 Apache一起工作。Opscode cookbook当前失败,因为它正在生成包含LockFile关键字的conf文件,该关键字从Apache 2.4关键字列表中排除 我想制定一个通用解决方案,并根据软件版本填充conf文件。为此,我必须找出已安装软件的版本。同样的问题困扰了我一段时间,但我一直在设法避免它。既然我一遍又一遍地谈到这个问题,我想问: 如果cookbook没有指定安装的软件包/软件的版本,即安装最新的可用软件包/软件,如何查找

Chef infra 是否可以在Suse Enterprise Linux 11 SP3上安装开源Chef服务器?

据我所知,对开源Chef服务器的要求是“企业Linux(如Red Hat Enterprise Linux,CentOS)”或“Ubuntu” 但是看看这里和这里,Suse似乎正在为Chef提供软件包,在我看来,这似乎包括Chef Server——尽管目前只有包含Chef 10的软件包是稳定的 是否有人在Suse上安装了Chef Server?这是Omnibus Chef Server软件包不支持的,因此不建议这样做。您可以构建自己的软件包或尝试使用发行版软件包,但您不会从SO/IRC/etc中

Chef infra Chef ServerSpec主机资源不工作

我正在尝试编写一个针对已部署实例运行的ServerSpec测试。以下是相关测试: require 'spec_helper' describe service('nginx') do it { should be_enabled } it { should be_running } end describe port(80) do it { should be_listening } end describe port(8085) do it { should be_lis

Chef infra 如何仅获取';刀搜索';命令

当我们运行刀搜索命令时,它会列出找到的项目数。我不需要项目的数量,而是只需要结果。如何得到它。 例如,我想为下面的命令获取一些返回代码或nil值 $ knife search node "name:MyLinux AND role:java" 0 items found 您可以为此使用ruby的exit方法 示例(即使你试图用很少的细节/背景来理解你想要完成的事情): 如果未找到任何节点,则返回0;如果找到任意数量的节点,则返回1 如果您希望对节点执行某些操作(例如向run_列表添加配方):

Chef infra 使用chef zero搜索与使用chefserver不一样

我在厨师食谱中使用搜索时遇到问题: 当我的烹饪书使用chefserver运行时,下一次搜索成功:search:node,%Q{nginx_vhosts{name}:} 当我的食谱使用chef zero with kitchen运行时,它没有成功,它什么也找不到。 我已在.kitchen.yml文件中正确配置了节点路径。 我可以使用search:node、%Q{nginx:vhosts}之类的搜索找到一个解决方法,并在一些逻辑之后添加一些内容以符合我的目的 所以我的问题是:为什么语法搜索:node

Chef infra include_配方不适用于测试厨房

我有两本食谱“用户”和“nginx”。第一个cookbook为系统创建用户和文件夹,第二个cookbook为创建的目录配置安装nginx 在kitchen.yml文件中,我添加了“users:default”来运行列表: --- driver: name: vagrant provisioner: name: chef_solo platforms: - name: ubuntu-14.04 suites: - name: default run_list:

Chef infra 基于依赖关系的厨师烹饪书的执行

我有两本食谱: 食谱A和食谱B CookbookB定义了一个属性(例如“include_xyz”) 如果CookbookA已运行,则应将其设置为“true”,否则应将其设置为“false”。 CookbookB/attributes/default.rb中的“include_xyz”定义应该是什么样子?啊,明白了 default['include_xyz']=“{node.recipe?('CookbookA')}” 由于在执行任何配方代码之前,以及在解析任何include_recipe

Chef infra 如何在自定义位置保存client.pem

我正在尝试使用以下https://docs.chef.io/install_bootstrap.html#bash-用户数据这会自动将client.pem文件保存在/etc/chef。如何在其他位置强制保存?尝试将客户机密钥隐式设置为自定义位置。chef client检测到客户端密钥文件不存在,并注册节点,将生成的密钥保存到该文件中 相关代码: 默认文件名client.pem指定于: 希望这有帮助

Chef infra 文件和元数据

理解berks文件中的“元数据”关键字。 参考文件: metadata关键字使Berkshellf处理本地烹饪书元数据。这确保了cookbook的依赖关系是一致的 由伯克希尔解决。使用metadata关键字需要 Berksfile可以放在烹饪书的根目录中,紧挨着metadata.rb 无法获取它的意思,因为文件应该放在cookbook的根目录中。我是否应该创建一个名为Berkshelf的文件,并将其放置在将“metadata.rb”添加到cookbook(所有cookbooks)并通过artif

Chef infra 是否可以强制在shef'上加载运行列表;s(chef shell)客户端模式

当调试厨师食谱中的错误时,我通常喜欢登录到有问题的机器,键入“shef-z”。如果之前有一次成功的跑步,那么注册的跑步列表会自动加载所有相关属性和食谱,这样我就可以直接跳进去尝试那些有问题的行了 问题是,如果chef客户端在第一次运行时失败,则运行列表为空,shef甚至会从缓存中删除(急需的)食谱,并说“此客户端不再需要它的食谱”。有没有办法强迫shef让我使用我的跑步列表 官方维基 “运行列表将以与普通chef客户端相同的方式设置 跑。” 但是尝试“-j”似乎没有帮助 我还试着运行单独模式(“

Chef infra 菜谱如何获得服务器标签的完整列表?

菜谱如何获得服务器标签的完整列表 或 配方如何检查某个标签是否设置/存在 顺便说一句:标签?对我不起作用你可以通过node.tags或node[:tags]获取配方中某个节点的所有标签。因此,要检查是否存在特定标签,您需要: node[:tags].include? 'mytag' 要获得所有节点上所有标记的完整列表,必须使用搜索 search( :node, '*:*' ).collect(:tags).flatten.uniq 但是标记了吗mytag“实际上应该可以工作。显示您的代码。使

Chef infra 默认运行列表和'_默认值';chef中的环境运行列表?

对于如何在chef中使用环境运行列表,我有点困惑。 如您所见,下面是role.json。在env_run_列表中,您有默认值,然后我们已经有了默认的run_列表。有什么区别?在运行环境run_list之前,是否每次都会运行缺省值 { "name": "webserver", "default_attributes": { }, "json_class": "Chef::Role", "env_run_lists": { "_default": [ ],

Chef infra 为什么chef在运行Vagrant时找不到模板文件?

我正在运行Vagrant 1.4.2来运行由Chef提供的Ubuntu13.10设备。由于某些原因,找不到模板文件,运行失败,出现以下错误: [2014-01-07T17:25:28+00:00] ERROR: template[/etc/init/verifier-tornado.conf] (transmit::default line 48) had an error: Chef::Exceptions::FileNotFound: Cookbook 'transmit' (0.1.0)

Chef infra 使用Chef删除目录中的所有文件

正在尝试删除非空文件夹: directory "C:\tempdirectory" do action :delete end 。。。在厨师长方面,我收到: Errno::ENOTEMPTY Directory not empty 有没有快速删除目录中所有文件的方法 或者一个参数或标志,允许我删除非空目录 如果调用正确,设置recursive true属性将强制删除非空目录 不描述此行为,但他们提供了以下使用示例: directory "/tmp/something"

Chef infra 每次运行Chef客户端时,Chef创建/服务

我有一个菜谱,可以在运行chef client时创建/服务并装载它。但是,即使已经创建了chef,chef仍将装载/服务并将其添加到fstab。我以为厨师会知道不要这样做 #mkdir /service directory node['storm-prep']['service']['dir'] do owner "root" group "root" mode 00755 action :create recursive true end #Create /service

Chef infra 配置新云服务器后,Chef客户端引导失败

我正在尝试使用Opscode提供的新vCAir插件在VMware的vCloud Air服务中提供新服务器。我的厨师服务器和工作站都在vCloud Air服务中运行。服务器设置并引导后,它会尝试从www.opscode.com引导Chef客户端,但无法解析,因为服务器的resolv.conf中没有定义任何名称服务器。My knife.rb文件将chef_server_url属性设置为我的chef server的IP地址,例如https://1.2.3.4但新服务器继续尝试从opscode.com下

Chef infra chef recipe更新属性文件中的值

我有一个包含以下内容的log.properties文件 LogFilePathKnown=true LogFileSizeBytes=10000000 LogFileCount=1 LogFileAppend=true 我想更新LogFileAppend=false。我如何用厨师的食谱做到这一点。任何帮助都会很好。您必须使用食谱模板。要做到这一点,您必须从您的cookbook根目录在templates/default/中创建一个erb文件。您可以根据需要和愿望以不同的方式组织模板文件。查看详细

Chef infra 在运行中获取目录列表

我使用Chef来管理Ubuntu服务器。我正在为服务器上的每个用户添加一个控制台工具包,其中大多数是在第一次运行Chef时创建的。第一次运行Chef时,会创建用户,但这段代码不会将符号链接添加到工具箱中,也不会创建正确的.bashrc文件。我认为这是因为rubyDir.open('/home')是在创建用户之前在运行开始时编译的,因为在下一次运行时正确添加了文件 当这个配方实际运行时,我如何获得目录列表以反映系统的当前状态?我认为我需要考虑的可能是ruby_块,但我不确定如何在这里应用它 # L

Chef infra 如何确定目录中的任何文件是否已更改

Chef是否有办法确定它是否更改了给定目录中的任何文件?如果conf.d目录中的任何设置被更新,我想重新启动服务器进程 我确信在每次chef客户端运行时都可以将md5sums列表写入一个文件,并将当前迭代与以前的迭代进行比较。但这是一段相当多的代码,可以解决一个常见的场景。有更好的方法吗?您可以从软件包中使用inotifywait实用程序Chef提供了一个名为的概念 这允许您定义一个资源中的更改触发另一个资源的执行。上述在配置文件更改后重新启动服务可能是最常见的用例 template”/etc/

Chef infra 如何在给定环境中删除cookbook版本约束?

我们在两个不同的环境中使用Chef Server ver 11—开发和登台。暂存环境中的cookbook版本仅限于特定版本,因此环境下的所有节点都不受我的更改的影响 登台环境 myookbook=0.6.2 现在,我在dev环境(没有启用版本限制)中验证了对给定节点的cookbook更改 如何在上面定义的登台环境中删除版本约束?。我只看到通过管理控制台更新约束的选项。用于上载修改后的环境文件(您应该在VCS中跟踪该文件,而不是在chef服务器中修改它)。通常,您不会删除约束,一旦在dev中进

Chef infra Chef无法获取httpd

我正在学习厨师使用OpsWorks,目前我正在尝试创建一个食谱,将安装2包在一个实例中。我把我的食谱储存在github上。。在这里,我有一个类似这样的食谱-webserver.rb # Install apache and start the service httpd_service 'site' do mpm 'prefork' action [:create, :start] end # Add the site configuration httpd_config 'site

Chef infra 厨师-使用远程文件资源从Nexus下载工件

我正在使用Chef从nexus下载一个war文件到一个文件夹中 remote_file '/home/Test/AAA.war' do source 'https://IP.com:8082/ URL Of the Repo/AAA.war' owner 'root' group 'root' mode '0755' action :create end 但是,如果我运行此配方,则会出现未经授权的访问错误 是否需要为nexu

Chef infra 是否可以从厨师配方中设置数据包值?

是否可以从厨师配方中设置数据包值?我需要从一个特定节点收集一些信息,然后与另一个节点共享。我想在烹饪书中做,而不是用刀子手动操作。TL;博士 从技术上讲,你可以做到,但不能。不应动态修改。这将使系统状态几乎无法推理 相反,可以在运行时使用来收集有关本地节点的信息,或者使用来查询远程节点上的ohai或其他数据收集活动 不要这样做 本用例在中特别说明。文档中说不可以这样做,并解释了原因 不建议从配方中创建和编辑数据包或数据包项目的内容。更新数据包或数据包项目的推荐方法是使用刀和刀数据包子命令。如果必

Chef infra 厨师长和产品版本-针对不同产品版本的资源调配环境

我是厨师的新手,目前正在想办法。我们目前正在Windows环境中使用Chef Solo。我们每3个月发布一次产品。Chef在我们的组织中用于设置生产构建环境、开发人员机器等。这些环境的设置包括安装一系列开发人员工具,如Visual Studio、第三方软件等。此环境设置所需的工具/软件列表可以在不同版本中不断更改。例如:如果产品版本1.0要求安装Visual Studio 2015,则产品版本2.0可能需要Visual Studio 2015更新1,依此类推 更准确地说,对于特定的产品版本,所有

Chef infra 厨师长:ohai不提供node[';etc';]

我有一个要求,只有在特定用户存在的情况下才能执行特定的操作。通过研究以下问题,我得出以下结论: if node['etc']['passwd']['random'] 这是个好方法 当我在厨房测试它时,它实际上起了作用,但当推到生产阶段时,它在所有服务器上都出现了错误: NoMethodError: undefined method `[]' for nil:NilClass 当使用bash中的ohai时,我确实看到了etc:{…} 这里到底发生了什么?最后,在评论中的人的帮助下,我发现Oha

Chef infra Inspec测试多个实体

我正在为我的厨师食谱编写inspec测试,其中有5个文件需要测试它们的模式。它们都应具有相同的模式0755 describe file('/dev') do its('mode') { should cmp '00755' } end 这是我用的sytax。但这只测试1个文件(/dev)。是否可以使用单个测试块测试多个文件?它并不完全是“单个测试块”,但您可以迭代文件列表: %w(/dev /tmp).each do |path| describe file(path) its(

Chef infra 如何检索默认属性并将其用作执行资源的一部分?

我想取默认属性的值 [node][forwarder][username] 并将其作为参数传递给执行资源。比如说 execute 'set-up-boot-start' do command "/opt/splunkforwarder/bin/splunk enable boot-start -user <username attribute> --accept-license" user "root" end 但是我得到一个错误,说在我的Docker实例中没有这样的用

Chef infra 当cookbook具有依赖项时,Chef工作流在验证阶段失败

我正在使用Chef Automatic的工作流部分将烹饪书发送到我的Chef服务器。我已经通过管道在厨师服务器上成功上传了2本烹饪书 在Chef服务器上: apache的版本为0.2.3 另一个测试版本为0.1.1 我想更改apache以依赖另一个测试,因此我更新了apache的元数据,并将版本升级到0.2.4 apache的元数据文件有依赖于“另一个测试” 而另一个测试没有相关性 apache的Berksfile是 source :chef_server source 'https://sup

Chef infra Chef windows_软件包无法进行静默安装;询问用户输入

我正在使用Chef windows_软件包在windows中安装名为Oxygen的软件。我希望它能在无需任何用户输入的情况下进行静默安装(采用所有默认设置),但它会启动install4j向导并要求用户输入“请选择您的语言” 这是厨师的食谱 windows_package 'Notepad++ Installer 64-bit x64' do source 'http://mirror.oxygenxml.com/InstData/Editor/Windows64/VM/oxygen-64bi

Chef infra 如何在使用chef安装mtputty时创建桌面图标?

我一直在尝试使用CHEF在Windows 10上安装MTPuTTY.exe文件。根据从stackoverflow获得的其他参考资料,我能够理解安装程序的类型以及与安装程序关联的命令行开关。详情如下: 应用程序:MTPuTTY.exe(1.6 Beta版) 安装程序类型:inno 命令行参数/用法:/VERYSILENT/suppressMsgBox/NORESTART/SP- 当我在系统上手动运行静默安装时,它会创建桌面图标,但是当通过chef客户端运行时,相同的命令不会创建桌面图标。我甚至使用

Chef infra 在Chef中使用自定义LWRP

我正在尝试编写一个用于部署flask应用程序的自定义LWRP 我广泛引用了以下食谱: 我的食谱中有以下内容 application "packaginator" do path "/my/apps/packaginator" owner "root" group "root" repository "https://github.com/coderanger/packaginator.git" revision "master" migrate false pack

Chef infra &引用;刀节点编辑";失败

我在年学习了《厨师入门教程》 及 我尝试将ntp cookbook添加到节点的运行列表中 为了这个,我试着跑 knife node edit localhost 其中localhost是主机名,但它无法理解“localhost”。 但是, knife bootstrap localhost 命令不理解本地主机 我做错了什么 日志如下: (chef-repo\u default\u 1380728124是VirtualBox中虚拟机的名称) $刀编辑节点yannis启动器 错误:节点:没有

Chef infra 无需使用应用程序烹饪书即可定制烹饪书

我们已经可以覆盖角色或节点对象中的Cookbook属性。食谱呢?我们是否可以使用烹饪书中提供的资源(LWRP),而不必使用烹饪书包装 例如,我想用一些插件安装Jenkins。显示有一个可以使用的属性 node['jenkins']['server']['plugins'] 但是,它仅允许插件名称和版本。 烹饪书中也有一句话似乎是我想要的。例如: jenkins_plugin 'custom_plugin' do action :install version '0.3' url '

Chef infra Chef-从脚本(不使用编辑器)以非交互方式编辑属性或数据包的任何最佳实践

我想存储一个构建版本号,以后可以在配方中使用它来解析“源”行中msi的路径。此版本特定于某个环境。我还不确定是使用环境属性还是数据包,但无论哪种方式,我都希望能够从脚本中更新属性或数据包项(我有一个调用各种AWS和刀子函数的主powershell脚本) 但是,默认情况下,基本的“刀子环境编辑…”或“刀子数据包编辑…”会调用编辑器手动编辑脚本无法执行的定义 我一直在寻找解决方案,并遇到了以下建议,但是否有任何公认的“最佳实践”或替代方案 使用“刀子环境显示…”将环境或数据包定义转储为json文件

Chef infra 如何在社区食谱的帮助下测试最终的厨师服务器配置?

我看到大多数社区食谱都有测试。当我读到一些文章时,简单地说,这些测试可以被描述为单元测试(烹饪书是否做到了它所说的?)和集成测试(它在操作系统上工作吗?) 我使用Vagrant和Chef社区食谱建立了一个LAMP虚拟环境。现在我想测试一下 首先,我想在我的配置系统上使用Kitchen CI运行所有社区的集成测试。我认为这是创建者编写这些集成测试的原因之一,这样管理员就可以将所有测试放在一起并测试他们的系统。然而,经过一次小规模的研究,我发现烹饪书的测试方式有所不同,因此在我的系统上一次运行所有的

Chef infra Nagios:配置文件中的错误-第一行(空值)

我正在运行Nagios 3.5.1,我收到一个错误,说我的配置文件中有错误 当我运行nagios-v/etc/nagios3/conf.d/hosts.cfg时,我得到了这个错误 正在读取配置数据。。。配置文件中出现错误 “/etc/nagios3/conf.d/hosts.cfg”-第5行(空值) 第5行是第一个与内容类似的行。第1-4行是注释。 当我删除1-4时,错误仍然移动到第一行。注释掉第一个主机只会将相同的错误降低 myhosts.cfg并不复杂 define host { u

Chef infra 得到一个;未初始化的常量Chef::Provider::AwsS3File::RightAws“;使用aws cookbook时出错

我正在尝试使用cookbook从S3下载文件 我得到以下错误: ERROR: aws_s3_file[demo.py] (demo_s3_file::default line 163) had an error: NameError: uninitialized constant Chef::Provider::AwsS3File::RightAws 在Google上找不到有关此错误的任何信息,在您可以使用烹饪书提供的任何LWRP资源之前,您必须将默认配方包括在运行列表中 这是必需的,因为您需

Chef infra 如何更改厨师节点FQDN?

我创建了一个chef节点,然后在下面更改了它的名称。但现在我的FQDN仍然设置为原始名称。我正在使用cookbook,但是如果我尝试在节点上设置节点['set_fqdn']属性,它不会更新主机名吗?如何更新我的主机名/fqdn?试着改用食谱。它的可移植性显著提高,支持将FQDN设置为主机名,并在编译时执行正确的操作,以便设置主机名并尽早重新加载ohai属性。尝试使用烹饪书。它的可移植性显著提高,支持将FQDNs设置为主机名,并在编译时执行正确的操作,以便设置主机名并尽早重新加载ohai属性

Chef infra 在Chef提供程序LWRP中使用目录资源

我正在尝试使用Chef LWRP下的目录资源,但无法访问资源块内的属性,是否有办法做到这一点。 或者我完全错了,需要不同的方法来实现这一点 my cookbook/providers/default.rb use_inline_resources action :setup do directory node["#{@new_resource.name}"] do action :create not_if {node["#{@new_resource.name}"].in

Chef infra 厨师长-从3000台服务器将详细信息收集到一个文件中

我对厨师很陌生,现在我正试着写几本烹饪书。我的目标是写一本厨师烹饪书,它将从3000台服务器上获得前10个高消耗流程。我有烹饪书,但这里的问题是,我必须将所有3000台服务器的详细信息收集到一个文件中,并将其作为电子邮件发送 我该怎么做 请让我知道,如果你需要任何更多的细节 谢谢你的帮助,这不是厨师的职责。Cookbooks仅在一个节点上运行。最好寻找监控系统。这不是chef的职责。Cookbooks仅在一个节点上运行。最好寻找监控系统

Chef infra Acme cookbook未按预期工作

我正在创建一本食谱,为nginx创建自签名证书,并希望使用certbot食谱覆盖letsencrypt证书的自签名证书: # Create self signed certificate acme_selfsigned 'timber.com' do crt '/etc/letsencrypt/live/timber.com/cert.pem' chain '/etc/letsencrypt/live/timber.com/chain.pem' key '/etc

Chef infra 从生成的列表中删除Chef中的包

我试图在chef运行期间生成一个包列表并将其删除 我尝试使用ruby块设置run\u state变量。变量最终为空。我还尝试在基于的包中添加延迟求值,但它导致编译错误。我也考虑过将列表放在一个文件中,但文档说不支持在包中使用文件名 有没有一种合理的方法可以从converge time变量中删除包列表?这样做如何: ruby_block "somehow get the list of packages to remove" do block do node.run_state['re

Chef infra 是否可以使用某个食谱中的自定义资源在您自己的食谱中创建自定义资源?

我有一本烹饪书,比如说我的烹饪书的名字是check,我正试图通过在以下目录结构中创建一个自定义资源:check/resources/myresource.rb。在这个myresource.rb文件中,我需要使用另一本烹饪书line中的自定义资源。如何使用myresource.rb中linecookbook中的资源?如果您想在食谱中使用它,您可以完全按照相同的方式使用 取决于定义了其他自定义资源的cookbook: #metadata.rb 取决于“行”、“~>X.Y”#添加此行,将X和Y替换为l

Chef infra 在另一本食谱中重复使用一本食谱的输出

假设我有两本食谱,A和B,它们都是在AWS EC2实例上执行的运行列表的一部分。第一个cookbook A执行一些代码并生成一个值并将其存储在node.run_state['pass']变量中。我需要cookbook B中的这个值,所以我可以直接在cookbook B中重用这个值,因为它是在同一个节点上执行的。我无法在kitchen中测试该场景,因为cookbook A在kitchen中由于某些依赖性而失败。我需要直接在EC2中尝试,但需要在尝试之前获得理解。厨师新手,请帮助理解。是的,您可以从

  1    2   3   4   5   6  ... 下一页 最后一页 共 23 页