【问题标题】:chef refresh automatic attribute without a chef-client run无需厨师客户端运行的厨师刷新自动属性
【发布时间】:2017-03-11 04:05:17
【问题描述】:

我想刷新节点上的自动属性,例如.filesystem 属性来获取节点上的磁盘空间等。如果不在节点上运行sudo chef-client,我该如何做到这一点? chef-client -o ... 似乎不起作用。

对于上下文,我在我的主厨服务器上设置了节点以及角色和运行列表。运行 chef-client 会运行相应的运行列表,在某些情况下我不想这样做(例如,我有一个运行列表来安装和运行 docker 映像,我只想偶尔这样做)。

【问题讨论】:

    标签: chef-infra chef-recipe devops


    【解决方案1】:

    这不是 Chef 直接支持的。无需大量工作即可获得的最接近的方法是仅包含代码 node.save 的配方,然后您可以通过 -o 模式运行该配方。请记住,这将不仅仅改变 Ohai 数据,因为通常来自运行列表扩展中的食谱的所有属性都不会出现,这就是 -o 首先禁用节点保存的原因。更一般地说,您可以构建一个运行 Ohai 并仅更新自动关卡属性的工具,但 Chef 本身不存在这样的脚本。

    【讨论】: