问题标签 [knife]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - Mac OS X 工作站的刀引导 windows winrm 失败
从我的 Mac OS X 工作站运行命令knife bootstrap windows winrm ec2box.amazonaws.com -r 'role[web]' -x Administrator -P 'mypassword'
会产生以下输出。从 Windows 工作站运行它,该命令成功运行。为了让我的 Mac OS X 工作站正确地通过 WinRM 进行通信,我需要采取额外的步骤吗?
我在亚马逊的 Windows Server 2012 AMI 上使用它。它#39
在我的终端上到处打印,而不是 Stack Overflow 的产物。
ruby - 在 Chef 中读取用户特定的环境变量
我是 Chef 和 Ruby 的新手,并试图了解如何从特定的 Linux/Windows 用户读取环境变量并使用它来放置文件。
我想做的是tnsnames.ora
为客户端和数据库安装更新我们的 Oracle 文件。
这些文件可能位于 Windows 或C:\oracle
Linux之 类的目录中。C:\Program Files\oracle
/u01/app/oracle/product/11.2/network/admin
/u01/app/oracle/producdt/10.2/network/admin
如果不将环境变量读入配方并使用它,我不能 100% 确定我会知道确切的位置。
我正在阅读,#{ENV['HOME']}
但我不太清楚这是否是我想要使用的语法类型。
chef-infra - Chef 节点 - 检查配方是否会在其上运行,同时查看角色内部
我想知道一个特定的配方是否会在不同配方内部的节点上运行。我可以使用 node.recipe?(recipe_name) 方法,但是我的一些食谱是由角色和食谱管理的?似乎没有查看角色运行列表。
有没有一种简单的方法可以确定我的 recipie[redis] 是否将在当前节点上运行?
amazon-ec2 - 创建服务器时在knife ec2中设置Chef日志级别
我正在寻找使用knife ec2创建服务器时设置厨师客户端日志级别的正确方法。
我最初的想法是在我的 Knife.rb 文件中设置日志级别配置,如下所示:
这不会导致日志级别发生任何明显的变化。
我还尝试在刀 ec2 中打开 -VV 选项,但这只会导致刀 ec2 本身的详细输出。
当我登录到服务器后直接运行 chef-client 时,我可以使用以下命令毫无问题地获取调试信息:
这已经足够了,但我正在调查一个仅在初始服务器引导程序中出现的潜在问题。
chef-infra - 尝试上传食谱后,厨师刀因密钥错误而失败
我设置了一个厨师服务器,在将 admin.pem 和 validator.pem 文件从服务器复制到我的工作站后,然后使用刀配置在工作站上配置刀...,我创建了一个新用户,我可以验证来自 web ui,并且,我能够成功运行knife client list
和其他刀命令。然后我尝试上传食谱,通过
我得到这个错误:
错误:无法从 /etc/chef/client.pem 加载您的私钥
检查您的配置文件并确保您的私钥是可读的
并且所有后续的刀命令都将返回此错误。我唯一能做的就是重新运行“knife configure -i ....”
发生了什么事,我做错了什么?我不是先创建新节点或客户端,只是尝试上传食谱。那是我的问题吗?尽管如此,食谱上传失败似乎不应该导致刀配置完全混乱,是吗?
amazon-ec2 - 刀 ec2 引导程序失败
我正在使用厨师刀创建 ec2 实例。该过程一直很好,直到它向厨师服务器注册新创建的实例。
我正在使用我自己的厨师服务器。
当我执行 ec2 引导时,我得到以下信息:
我已经替换了上面输出中的一些信息,以便将其粘贴到 stackoverflow 上。
上面提到的错误getaddrinfo: Name or service not known
不可能是真的,因为 DNS 解析工作正常。另外,我查看/var/chef/cache/chef-stacktrace.out
了我的 ec2 实例,它说了同样的话getaddrinfo: Name or service not known
现在,
如果我在主厨服务器所在的实验室中引导本地虚拟机,它就可以正常工作。
以下是本地 VM 引导的输出:
问题:
我无法弄清楚为什么我的 ec2 实例引导失败getaddrinfo: Name or service not known
而本地 vm 引导工作正常。有什么明显的我忽略了吗?任何帮助/建议都会对我有很大帮助。
谢谢。
chef-infra - 使用knife ssh时如何跳过无法访问的节点
我正在尝试使用knife ssh
以下方式在多个节点上运行 shell 命令:
当我所有具有角色“web”的实例都启动时,它工作正常,但是当我只删除一个实例时,此命令会挂起并显示以下消息:
有没有办法告诉刀跳过无法到达的节点并继续那些已经启动的节点?
更新:默认情况下,刀应该跳过无法访问的节点,但这不会发生。可能的原因是 SSH 网关。调查。