Packer: La copie WinRM des livres de cuisine de chef est trop lente

Créé le 2 mars 2018  ·  3Commentaires  ·  Source: hashicorp/packer

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.

Réf : https://github.com/hashicorp/packer/issues/2648

communicatowinrm enhancement

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 :

 "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`}}",
      }
    }

Tous les 3 commentaires

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 !

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

sourav82 picture sourav82  ·  3Commentaires

Nikoos picture Nikoos  ·  3Commentaires

s4mur4i picture s4mur4i  ·  3Commentaires

mwhooker picture mwhooker  ·  3Commentaires

wduncanfraser picture wduncanfraser  ·  3Commentaires