Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chef infra chef client override runlist不会更新服务器上的属性_Chef Infra - Fatal编程技术网

Chef infra chef client override runlist不会更新服务器上的属性

Chef infra chef client override runlist不会更新服务器上的属性,chef-infra,Chef Infra,我有一本有属性的食谱。我从这个食谱中添加了一个菜谱来运行一个节点的列表。我在该节点上运行chef client,并在chef服务器上查看属性及其值。 后来我修改了食谱属性,上传了食谱,使用-o选项运行了特定的食谱。我在chef服务器上看不到属性的更新值 我在某处读到-o选项不更新chef服务器。所以,我们不应该经常使用-o选项,而应该将其仅用于开发目的 如果cookbook总是通过-o选项运行,则无法查看服务器上节点属性上的属性和配方(我认为这是不好的?) 谢谢 Amod存在-o选项,允许che

我有一本有属性的食谱。我从这个食谱中添加了一个菜谱来运行一个节点的列表。我在该节点上运行
chef client
,并在chef服务器上查看属性及其值。 后来我修改了食谱属性,上传了食谱,使用
-o
选项运行了特定的食谱。我在chef服务器上看不到属性的更新值

我在某处读到-o选项不更新chef服务器。所以,我们不应该经常使用-o选项,而应该将其仅用于开发目的

如果cookbook总是通过-o选项运行,则无法查看服务器上节点属性上的属性和配方(我认为这是不好的?)

谢谢
Amod

存在
-o
选项,允许chef使用与通常完全不同的运行列表运行,因此不会将其保存到chef服务器

如果您需要使用
-o
定期运行,那么您可能做错了。 使您的配方幂等或更改它,以便在不修改节点运行列表的情况下使用某个标志(节点属性或数据包项)为运行启用配方


如果没有用例,就很难给出正确的建议来解决这个问题。

虽然我同意你可能做错了的观点,但如果你需要覆盖运行列表,实现它的一种方法是:

(a) 创建/etc/chef/alternative.json,将下面的内容填入您的备选运行列表:

{“运行列表”:[]}

b) 确保在/etc/chef/first-boot.json中有节点的“真实”运行列表

c) 定期运行下面的命令以刷新统计信息

chef客户端-j/etc/chef/empty.json

d) 如果确实要聚合节点,请使用:

chef客户端-j/etc/chef/first-boot.json


非常感谢。谢谢你的回答。但我正在寻找一个详细的答案,解释为什么它不起作用。从服务器上看,我不知道是否有人用-o运行了一个菜谱(虽然它确实会影响节点,但它不会通知服务器。偷偷摸摸?)。我理解-o不保存数据。但问题是,为什么设计成这样。这对我来说是误导,所以这可能是一个糟糕的设计。我并不试图解决任何特定的用例。再次感谢。厨师客户选项的文档是。-o背后的想法是运行一个特定的配方,可能是在完全运行之前修复chef client conf,或者只是运行omnibus updater配方,或者任何在完全运行列表运行中无法处理的一次性修改。
-o
的整个要点是允许对运行列表进行一次性重写。因此,假设您不想保存数据。为什么不呢?嗯,您“通常”运行一组配方,所有这些配方都将数据保存在节点上。如果允许您的“一次性”运行列表生成
节点。save
,则所有正常节点数据都将丢失。
-o
的目的是为您提供一种避免这种情况的方法。这样,您就可以运行一次性操作(如修复bug),而不会损坏节点数据。