有没有办法使用chef-client的-o
命令来覆盖运行列表但仍然保持使用现有的节点属性?
如mentioned here当您使用 chef-client -o ...
覆盖运行列表时,节点属性将不再应用。
最佳答案
我认为这个评论并不完全正确。覆盖运行列表应该不会直接影响节点上设置的属性,并且运行列表上事物的属性会正常发生。如果您询问是否有一种方法可以从所有主要运行列表条目及其依赖项加载属性,但仅运行配方的特定子集,我不知道对此的通用解决方案。对于特定情况,您可以制作一个虚拟 Recipe ,该 Recipe 依赖于具有单个空白 Recipe 的主运行列表中的所有内容,并将其作为覆盖运行列表的第一项。但您无法动态地执行此操作,因此您需要一本这样的虚拟 Recipe 来应对出现这种情况的每种情况。
关于chef-infra - 覆盖 Chef 运行列表但继续使用节点属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34866192/