почему анализатор инвентаря мой JSON так медленно

Этот подход к использованию new-object должен работать:

$cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate `
      -ArgumentList @(,$bytes)

Фокус в том, что PowerShell ожидает массив аргументов конструктора. Когда есть только один аргумент, и это массив, он может запутать алгоритм разрешения перегрузки PowerShell. Вышеприведенный код помогает, поместив массив байтов в массив только с одним элементом.

0
задан barbsan 26 February 2019 в 13:49
поделиться

1 ответ

Вам необходимо создать раздел _meta в вашем JSON:

https://docs.ansible.com/ansible/latest/dev_guide/developing_inventory.html#tuning-the-external -inventory-script

Система сценариев инвентаризации, описанная выше, работает для всех версий Ansible, но вызов --host для каждого хоста может быть довольно неэффективным, особенно если он включает вызовы API для удаленная подсистема.

Чтобы избежать этой неэффективности, если скрипт инвентаризации возвращает элемент верхнего уровня, называемый «_meta», можно вернуть все переменные хоста за одно выполнение скрипта. Когда этот метаэлемент содержит значение для «hostvars», сценарий инвентаризации не будет вызываться с --host для каждого хоста. Это приводит к значительному увеличению производительности для большого количества хостов.

0
ответ дан sebthebert 26 February 2019 в 13:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: