当使用 cookbook postgresql 时,如何在 Chef 运行期间多次序列化 postgresql.conf?

当使用 cookbook postgresql 时,如何在 Chef 运行期间多次序列化 postgresql.conf?

我正在创建一个 Chef 配方,它可以做几件事,其中包括将大量数据导入 Postgresql 数据库。

我正在使用超市“postgresql”食谱这使得我可以通过属性创建配置文件node['postgresql']['config']

我想在运行配方期间更新 postgresql.conf 中的配置,即在执行大导入之前设置适合大导入的值,然后在完成导入后更新这些值,以便更适合日常操作(具体来说fsyncfull_page_writes'离开' 在导入之前并把那些 '' 后)。

我创建了 ruby​​_block 资源,使我能够node.default['postgresql']['config']['fsync/full_page_write']在导入之前和之后通过通知进行更新,但这些更改并未序列化到 postgresql.conf,我猜是因为postgresql::server_conf已经在那个阶段运行了。

有没有什么方法可以向 postgresql cookbook 发出信号,表示我希望node['postgresql']['config']在运行期间多次序列化?

答案1

我自己找到了答案,这个要点(https://gist.github.com/mbokman/58b826258d05f1c7bec0) 展示了我如何做到的。

相关内容