J'ai vu beaucoup de problèmes concernant la même chose. Mais en comparant la vitesse à laquelle Test Kitchen (https://github.com/test-kitchen/winrm-transport) copie les fichiers sur une machine Windows pour la même liste d'exécution, cela semble être un problème qui pourrait être résolu. Dans mon cas, la copie de l'emballeur prend près d'une heure alors que la cuisine de test le fait en moins de 5 minutes. Cela me semble être une mauvaise mise en œuvre. J'aimerais aider de toutes les manières possibles. Cela ralentit considérablement la construction de nos fenêtres et tester de petites modifications fait perdre trop d'heures d'ingénierie.
J'ai remarqué que Packer "se bloquerait" lors de l'étape de l'approvisionnement chef-solo qui copie les livres de cuisine. On dirait presque qu'il copie un fichier toutes les 3 secondes. Je me suis connecté à l'instance EC2 pendant cette opération et j'ai vérifié que le nombre de fichiers augmentait effectivement aussi lentement.
Aperçu des sorties de journal pertinentes :
https://gist.github.com/JCapriotti/4ecfe4a1e20fcbd879161086b0815861
Nous dépendons malheureusement d'environ 13 livres de cuisine, ce qui ajoute environ 45 minutes à notre construction. Juste pour copier des fichiers !
Quiconque cherche à accélérer ses versions WinRM Windows peut contourner ce problème en utilisant un approvisionneur de fichiers pour copier tous les livres de cuisine dans un fichier zip avant que l'approvisionneur chef-solo ne s'exécute et en spécifiant le remote_cookbook_paths
. Quelque chose comme ça a considérablement accéléré mes temps de construction :
"provisioners": [
{
"type": "file",
"source": "berks-cookbooks.zip",
"destination": "c:\\temp\\"
},
{
"type": "powershell",
"inline": [
"Expand-Archive -LiteralPath c:\\temp\\berks-cookbooks.zip -DestinationPath C:\\temp"
]
},
{
"type": "chef-solo",
"version": "15.3.14",
"chef_license": "accept",
"guest_os_type": "windows",
"remote_cookbook_paths": [
"c:/temp/berks-cookbooks"
],
"run_list": "{{user `ami_run_list`}}",
}
}
C'est OK si vous supprimez la priorité de winRM, mais cela devrait être un bug de performances plutôt qu'une amélioration. Les temps de cuisson sont intolérables même pour une liste de livres de cuisine de taille moyenne. Le nôtre fait moins de 3 Mo, mais le téléchargement prend 25 minutes !
Commentaire le plus utile
Quiconque cherche à accélérer ses versions WinRM Windows peut contourner ce problème en utilisant un approvisionneur de fichiers pour copier tous les livres de cuisine dans un fichier zip avant que l'approvisionneur chef-solo ne s'exécute et en spécifiant le
remote_cookbook_paths
. Quelque chose comme ça a considérablement accéléré mes temps de construction :