2016-08-25 8 views
0

У меня есть скрипт PowerShell, который выполняет много манипуляций с памятью в памяти. Он используется в процессе настройки, который я автоматизирую с помощью Ansible Playbooks. Когда сценарий запускается вручную на сервере, он успешно завершается, и исправляются правильные изменения. Тем не менее, когда я запускаю тот же скрипт через Ansible, файл OutOfMemoryException вызывается PowerShell.OutOfMemory с Ansible PowerShell Automation

Я попытался увеличение выделенной памяти PowerShell в далеко за пределами ожидаемого размера с использованием,

Set-Item vsman:localhost\Shell\MaxMemoryPerShellMB [memsize] 

Это привело к той же ошибке. Однако, если я запускаю сценарий на сервере один раз перед запуском playbook, он работает, пока я не перезагружу компьютер.

Для Ansible мое удаленное соединение настроено с использованием WinRM.

+1

эй, я нашел это [ссылка] (http://jeffwouters.nl/index.php/2014/03/out-of-memory-exception-in-powershell/), возможно, вы нашли то же самое: D Но последнее предложение очень важно - _Last: перезапустите службу winrm ... и вы закончили _ - перезапустили ли вы службу? –

+0

@ Eldo.Ob эта страница, похоже, поможет! До сих пор я выполнил только один тест (для завершения сценария требуется некоторое время), но ему это удалось. Для тех, кто заинтересован, я установил этот вопрос с: 'Set-Item vsman: локальный \ Shell \ MaxMemoryPerShellMB [Memsize]' 'Чистая остановка winrm' ' чистый старт winrm' – ScottWe

+0

хорошо скажите мне, если это определенно работает. :) –

ответ

1

Если вы используете PS3, вы пробовали this hotfix, как предложено в Ansible Windows docs?

+0

Это похоже на ту же проблему, но машины в моей тестовой среде не поддерживают патч. Если кто-то еще найдет этот пост, это, вероятно, стоит попробовать в первую очередь. Однако я не могу это проверить. Если это не поможет, исправление Eldo.Ob в комментариях должно быть разрешено. – ScottWe

 Смежные вопросы

  • Нет связанных вопросов^_^