V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dalang
V2EX  ›  Puppet

Puppet有没有办法在Windows重启后,继续执行未执行完的操作?

  •  
  •   dalang · 2013-12-19 11:03:38 +08:00 · 7157 次点击
    这是一个创建于 3990 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我想在Windows Provision中使用Puppet来管理Postinstall。
    使用Puppet Master/Slave模式。
    Postinstall主要涉及杀毒软件的安装,病毒库升级,windows补丁安装等操作。一些东西的安装需要重启后生效,所以在整个postinstall的过程中需要多次重启。再比如windows补丁有些存在依赖相关,目前为保证补丁都能够被打上,打补丁操作重复3次,每次打完补丁后就进行一次重启。

    这样在Puppet Agent执行过程中,就不是所有的操作都是幂等的,那么有没有办法能保证重启后,Puppet是从上次未执行的操作开始执行?

    或者针对这类情况,一般是怎么处理的?
    5 条回复    1970-01-01 08:00:00 +08:00
    mengzhuo
        1
    mengzhuo  
       2013-12-19 11:36:33 +08:00
    tmux或者screen
    mengzhuo
        2
    mengzhuo  
       2013-12-19 11:37:18 +08:00
    = =|| 回错帖子了……LZ无视我吧
    ritksm
        3
    ritksm  
       2013-12-19 11:50:26 +08:00
    随意搜索了一下。。没仔细看不知道符合不符合需求 https://forge.puppetlabs.com/puppetlabs/reboot
    dalang
        4
    dalang  
    OP
       2013-12-19 13:52:59 +08:00
    @ritksm 其实我之前有适用过reboot,按照上面的说明reboot跟package type resource确实能较好的工作。
    但是我有部分resource是exec的,有些通过exec执行bat脚本安装一堆工具软件。目前试下来,用reboot似乎还是无法避免重复执行exec。可能我还得再dig一个
    ritksm
        5
    ritksm  
       2013-12-19 15:14:44 +08:00
    脚本内加判断?在本地搞个flag文件啥的标记一下第几次重启了。。而不是从puppet入手感觉
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3172 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:18 · PVG 20:18 · LAX 04:18 · JFK 07:18
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.