Ansible win_updates失败/无响应(Windows Update)

时间:2019-06-25 11:44:38

标签: windows ansible ansible-2.x windows-update

我写了一部包含一些任务的剧本,在多台服务器上运行Windows Update。要更新这些主机,我使用与Windows Update API一起使用的ansible模块。
剧本和任务如下:

代码/剧本

- hosts: 
    - '{{ target }}'
  strategy: free
  gather_facts: no

  vars:
    playbook_name: A.windows-update

  roles:
  - { role: "A.windows-update" }

任务是:

- (Some other tasks like create a directory...)
- name: Reboot before updates
  win_reboot:
    reboot_timeout: 7200

- name: install windows updates (1)
      win_updates:
        category_names:
          - Application
          - Connectors
          - CriticalUpdates
          - DefinitionUpdates
          - DeveloperKits
          - FeaturePacks
          - Guidance
          - SecurityUpdates
          - ServicePacks
          - Tools
          - UpdateRollups
          - Updates
        reboot: yes
        reboot_timeout: 7200
        log_path: C:\temp\windows_updates1.txt
      register: update_status1

问题和日志:

我在2台主机(Windows Server 2008 R2和2016)上测试了剧本,并且运行良好。 当我用它来更新大约30台Windows Server(其中大多数是2016年)时,它在50%的主机上失败了。他们中的一些人遇到超时,而其他人则在大约4h或5h内没有任何响应。然后我不得不停止剧本,因为这是一个富有成效的环境... 当我检查日志log_path: C:\temp\windows_updates1.txt时,发现一些奇怪的结果:

2019-06-22 02:00:34Z Adding update 8324-a692149402a8 - SQL Server 2014 Service Pack 3
2019-06-22 02:00:34Z FATAL: A reboot is required before more updates can be installed

即使在更新过程开始之前重新启动了系统,并且在更新过程中设置了reboot: yes,仍然发生了重新启动错误。

在另一个系统上(也是2016年),我在windows_updates1.txt中看到以下输出:

2019-06-21 22:53:36Z Found 3 updates
2019-06-21 22:53:36Z Installing updates…
2019-06-21 22:53:36Z Adding update 39c97e25-662a-45b7-aa3e-ce3f6c1d7978 --> SQL
(文件结束,不再有日志)

有时此错误消息显示为ansible:

[WARNING]: FATAL ERROR DURING FILE TRANSFER: The pipe is being closed. (extended fault data: {u'fault_subcode': 'w:InternalError', u 'fault_code': 's:Receiver', u'wsmanfault_code': '232', 'transport_message': u'Bad HTTP response returned from server. Code 500', 'http_status_code': 500})

问题

所以我不知道为什么可以。.
1)...即使允许重新启动,也需要重新启动时更新失败
2)...“添加更新”后,机器停止了,并且大约4小时没有任何进展。此SQL更新大约花费了30分钟(手动)。
3)当我使用strategy: free时,是否不能同时在所有主机上启动更新?因为在Windows中,更新日志在2h的范围内有几个不同的“开始”时间。

谢谢您关于如何使用ansible更新我的所有服务器的任何提示和想法。

0 个答案:

没有答案