问题标签 [chef-infra]
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.
capistrano - Chef-solo 与 Capistrano 的集成
厨师独奏的capistrano-chef gem有替代品吗?大多数情况下,为了避免两次定义服务器信息。
amazon-ec2 - 刀 - 错误:必须将 FQDN 或 ip 传递给引导程序
我正在使用knife-ec2 gem 创建一个EC2 服务器。我使用以下命令创建了一个服务器:
我在命令行中看到了这个信息:
实例在终止状态下创建。指挥有什么问题?问题出在哪里?我不知道在此命令中在哪里提供 FQDN 或 ip。
ubuntu - Chef 和 Knife 引导 ec2 - OpenSSL::PKey::RSAError: private key required.: no start line
我是一个新手,试图引导和 ec2 实例,但对厨师没有任何作用。
- 我正在使用厨师服务器
- 我的开发机器的用户名是ubuntu。我想保持它与 ec2 的 ubuntu 相同的名称。
我试过这个命令。
我得到了以下输出
然后我尝试了以下。
我得到了以下输出
我注意到 ec2 实例上的/etc/chef/client.pem是我运行刀命令的开发计算机上的 pem。
那么,我该怎么办?是节点名冲突吗?
chef-infra - 在厨师食谱中,如何根据角色分配 erb 模板
我是厨师新手,我对以下内容有疑问。
我有两台服务器都使用 nginx。唯一的区别是配置文件不同。我正在为 nginx 配置文件使用 erb 模板。
我想我需要一本在模板目录中包含两个 erb 文件的食谱。
因此,假设我有两个角色 server1 和 server2,并且在两者的运行列表中都是 nginx。
当使用角色 1 使用 server1 的配置文件时,我该如何设置?server2 也是如此。
关于这个主题的任何教程?
ruby-on-rails - 从 Rake 运行厨师刀
我有一个 Rails Web 应用程序,它允许用户使用多台服务器运行自动化任务。我连接了一个 rake 任务,使其每 5 分钟运行一次(无论何时 gem),并检查需要执行的作业并使用适当的选项启动服务器。
我的麻烦在于实际运行厨师的刀命令。我目前这样做:
这让我成功了一半。它毫无问题地切换到适当的 gemset(系统),但是在执行刀时,我得到以下信息:
我没有在系统 gems 中安装捆绑程序......所以我很困惑。我的 Web 应用程序需要 multi-json-1.1.0。我安装的 chef 似乎需要 multi_json 1.0.3,所以 gem 要求似乎有混淆。
该命令从 bash 运行没问题...它仅在刀部分的耙子中失败
有什么想法吗?
编辑:使用 mpapis 建议我使用了 RVM gem,并且在 IRB 中一切正常。我执行以下操作
但是,当在 rails 控制台或 rake 中运行相同的代码时,我遇到了问题。Rails 控制台基本上忽略了我的 RVM.use!并且耙子爆炸了...这与捆绑器干扰有关吗?
解决方案:mpapis 构建了一个惊人的 gem https://github.com/mpapis/rvm-with,它允许您在特定的 ruby 版本中执行代码。
chef-infra - 如何通过 chef-solo 创建用户帐户?
问题
- 如何通过 chef-solo 创建用户帐户?
- 为什么“用户”配方需要 client.pem?
环境
- 红宝石是
ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]
- 厨师独奏是
Chef: 0.10.8
- “用户”配方版本位于 2012 年 3 月 27 日(提交:f6e1d421f3513c92a0cfbf89c77f750e402ba545)。
- 仅食谱
{"run_list":["recipe[users::sysadmins]"]}
描述
我将通过 chef-solo 使用配方“ users ”创建用户帐户。但是发生了错误,如下所示。
日志
chef-infra - 使用 Chef 安装 Debian 软件包的惯用方法是什么?
下面是我安装 vcider 的代码。我正在学习厨师,但没有看到安装 dpkg 的任何东西。我想在脚本中使用版本。下面的代码有效。
即使使用上面的代码,我也可以用#{version} 替换 2.0.1b 吗?属性文件 -> 默认[:vcider][:version] 2.0.1b
python - Chef、ec2、knife 的最佳实践以及在发生故障转移时减少启动和 ami 的时间
我正在将我的所有服务器置于厨师的控制之下,以便使用厨师服务器进行 scm。它工作得很好....我喜欢它。我想我开始了解禅,但我仍然需要更好的理解。
之前,我在 ec2 上构建了 ami,我一直在重建 ami,但至少它们启动速度很快。
我认为,对于厨师来说,总是从一个准系统实例开始,然后用刀来建立你的 ami。
启动一个ami大约需要20分钟,安装chef大约需要5-6分钟。
我遇到的问题是我在负载平衡下运行 4 个服务器,两个 redis,主从服务器和两个 nginx 服务器。
在远程机器上,我有 python 脚本,它们总是检查 aa redis 主服务器或从服务器是否关闭,如果 nginx 服务器是否健康,则检查负载均衡器。
现在,在主厨下,如果服务器出现故障,我必须额外等待 15 分钟以上,而在预先构建的 ami 下,时间长度是启动新实例的时间。
我的问题如下:
1)是否有python api与刀交互?在 python 中,我使用 boto 来启动一个 ami。现在,我将不得不使用popen来执行刀。我的代码取决于知道 ami 何时启动并运行以继续进一步处理。
2)最好的做法是在预先安装了厨师客户端的地方拥有一个 ami?这将减少大约 6 分钟。
3)最后,我还缺少什么?任何建议都会很棒。
mysql - 流浪厨师食谱校验和计算
我正在运行一个失败的 mysql 配方。当我在停止后做 vagrant up 时,它声称 grants.sql 模板的校验和已更改,导致它在不应该重新运行时重新运行。
任何想法如何完成这些校验和以及如何解决这个问题?
chef-infra - 厨师客户不断重新安装食谱
我是厨师的新鲜肉。我正在使用 chef 来管理一个 ec2 实例,并且似乎正在工作。当我登录该框时,我运行以下命令,以便查看发生了什么。
我注意到我对 pytimer 的安装不断被重新安装。我如何修改配方以确保它只安装一次,除非配方发生变化?