问题标签 [databags]
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.
attributes - 厨师属性与数据包
我是 Chef 的新手,在阅读了文档后,我仍然无法理解何时使用属性以及何时使用数据包。
什么样的数据应该存储为属性,什么样的数据应该存储在数据包中?
谢谢
encryption - 引导节点时出现 Chef Cookbook 编译错误
我正在使用厨师来引导一个节点。我创建了加密数据包并将节点上的密钥复制为 /etc/chef/encrypted_data_bag_secret。
当我尝试引导节点时,出现以下错误:
这是堆栈跟踪:
任何帮助或指示?
chef-infra - Chef - 数据包查询
查询数据包设置节点属性时,是否可以做如下操作?
我有一系列与我的本地节点 ['fqdn'] 属性匹配的数据包项。
是否可以将此属性动态插入到数据包查询字符串中,下面的示例不起作用,还有其他想法吗?
ruby - EncryptedDataBagItem.load 产生“无法将 nil 转换为字符串”
我正在按照本文中描述的方法为新服务器创建 DNS 记录,因为 Chef 对其进行了配置。我为我的 AWS 凭证创建了一个加密数据包项:
但是,当我运行厨师客户端时,这条线......
产生此错误:
我已尝试搜索错误,但虽然我可以看到其他人遇到此问题的证据,但尚不清楚他们的问题是什么或如何解决。这是怎么回事,我该如何解决?
chef-infra - 厨师刀引导管理员用户
出于我不会深入的原因,我有一些厨师食谱需要编辑数据包的内容。因此,我相信节点用户配置文件需要是“admin: true”。因此,当我引导一个节点(刀引导)时,第一次通过失败并出现 http 403 错误(无法编辑数据包的内容),我必须进入并手动将该用户设置为管理员。
有没有办法在默认情况下使用刀引导命令来做到这一点?我想我可以事先创建用户,但我宁愿让厨师为我做所有的引导。
注意:我使用的是 chef 10 和开源的 chef server
chef-infra - 如何批量编辑 data_bag
我有一个包含 40 多个项目的 data_bag,需要为其中的大多数项目添加某些参数。
有没有办法编辑,例如用刀,所有 data_bag 项目?到目前为止,我所能看到的只是在我的编辑器中打开每个项目。
chef-infra - 厨师:只为某些角色创建用户?
我想设置一个用户(称为“部署者”),但仅限于某些角色。
我正在使用Opscode 用户食谱。我从“基础”(所有其他食谱中包含)包装器食谱中调用它。因此,我的data_bags/users
目录中的用户正在我的所有 Chef 节点上创建。
考虑到这一点,我的“部署者”用户似乎不属于data_bags/users/deployer.json
. (这将为所有节点创建它。)
我正在思考和探索找到一种或多种干净的方法来做到这一点。我的用例可能并不罕见,所以我希望找到一条与 Chef 一起“简单”的路径来做我需要的事情。我目前的想法和想法包括:
我还没有找到从我的“用户”数据包中读取的显式代码。找到这样的代码后,也许我可以调整它以根据属性进行过滤,以便排除某些用户,除非特定角色正在“运行”?
我可能会创建一个单独的数据包,可能是“foo-users”,其中“foo”是角色。然后我可以使用Opscode 用户手册在需要时准确地使用那个特定的数据包。
ruby - 厨师 Json 值到 ERB 文件
如何从 Chef 模板中的 ERB 文件访问数据包 JSON 文件中的值。
我有一个名为chef-repo/data_bags/test.json
包含此数据的数据包文件:
在chef-repo/cookcooks/test/templates/default.erb
我看到的范围内,它<% @test.name %>
被访问并准确地显示了值。
我想了解@test
在 Chef 中为实例变量分配数据包值的位置。
chef-infra - 我的 Chef 数据包项目在哪里?
我试图使用以下命令从 chef-repo 目录中创建一个 Chef 数据包:
我得到了回应:
但我无法找到数据包用户及其数据包项。它不在 data_bags 文件夹或我能看到的任何其他地方。如果我做一个
它将向我显示数据包项目名称。所以它必须保存在某个地方。文档告诉我数据包应该在文件夹chef-repo -> data_bags -> users中。但我的 data_bags 文件夹似乎是空的。那么我刚刚创建的数据包在哪里呢?
chef-infra - 文件中的刀数据包 - 显示更改内容
将数据包上传到 Chef 客户端时,是否可以看到发生了什么变化,或者本地文件和服务器之间有什么区别?