问题描述
目前,我对Salt并不那么熟悉。 我的经理要求我通过Salt进行修补自动化。 目前,正在寻找最佳的方法来做到这一点。 任何建议将不胜感激!
有什么要求:
- 通过自定义纹理指定目标小兵
- 确定操作系统RedHat或Windows
- 仅当操作系统为Windows时,才进行部署前重启
- 安装可用更新
- 部署后重新启动
第一点至少完成
部署前重新启动
{% elif grains['os_family'] == 'Windows' %}
cmd.run:
- name: shutdown -r -t 120 && shutdown -a && echo changed=no comment="Reboot is not scheduled" || echo changed=yes comment="Reboot is scheduled"
- stateful: true
{% endif %}
修补
{% if grains['os_family'] == 'RedHat' %}
include:
- pkg.update
{% elif grains['os_family'] == 'Windows' %}
include:
- win_wua.list install=True
{% else %}
init_fail_os.update:
test.fail_with_changes:
- name: "The OS family is not defined in os.update states"
{% endif %}
部署后重新启动
{% if grains['os_family'] == 'RedHat' %}
cmd.run:
- name: 'sleep 10s && reboot'
{% elif grains['os_family'] == 'Windows' %}
cmd.run:
- name: shutdown -r -t 120 && shutdown -a && echo changed=no comment="Reboot is not scheduled" || echo changed=yes comment="Reboot is scheduled"
- stateful: true
{% endif %}
我想对它们进行编排,但是不确定如何做。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)