Les bases des livres de recettes - AWS OpsWorks

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Les bases des livres de recettes

Important

Le AWS OpsWorks Stacks service a atteint sa fin de vie le 26 mai 2024 et a été désactivé tant pour les nouveaux clients que pour les clients existants. Nous recommandons vivement aux clients de migrer leurs charges de travail vers d'autres solutions dès que possible. Si vous avez des questions sur la migration, contactez l' AWS Support équipe sur AWS Re:Post ou via le AWS Support Premium.

Une pile AWS OpsWorks Stacks au niveau de la production nécessite généralement une certaine personnalisation, ce qui implique souvent la mise en œuvre d'un livre de recettes Chef personnalisé avec une ou plusieurs recettes, fichiers d'attributs ou fichiers modèles. Cette rubrique est un didacticiel d'introduction à la mise en œuvre de livres de recettes pour AWS OpsWorks Stacks.

Pour plus d'informations sur la façon dont AWS OpsWorks Stacks utilise les livres de recettes, y compris une brève introduction générale aux livres de recettes, voir. Livres de recettes et recettes Pour plus d'informations sur la mise en œuvre et le test des recettes Chef, consultez Infrastructure menée par les tests avec Chef, 2e édition.

Les exemples de ce didacticiel sont divisés en deux parties :

  • Principes de base des livre de recettes est un ensemble d'exemples de procédures destinés aux utilisateurs qui ne connaissent pas Chef ; les utilisateurs expérimentés de Chef peuvent ignorer cette section.

    Les exemples présentent les bases de la mise en œuvre des livres de recettes pour effectuer des tâches courantes, telles que l'installation de paquets ou la création de répertoires. Pour simplifier le processus, vous allez utiliser deux outils intéressants, Vagrant et Test Kitchen, afin d'exécuter la plupart des exemples localement sur une machine virtuelle. Avant de commencer Principes de base des livre de recettes, vous devez lire Vagrant et Test Kitchen afin d'apprendre à installer et à utiliser ces outils. Dans la mesure où Test Kitchen ne prend pas encore en charge Windows, les exemples sont tous destinés à Linux, avec des notes indiquant comment les adapter à Windows.

  • Implémentation de Cookbooks for Stacks AWS OpsWorksdécrit comment implémenter des recettes pour les AWS OpsWorks piles, y compris pour les piles Windows.

    Il inclut également des informations plus avancées, telles que la façon d'utiliser Berkshelf pour gérer des livres de cuisine externes. Les exemples sont destinés aux nouveaux utilisateurs de Chef, en grande partie comme les exemples de Principes de base des livre de recettes. Cependant, AWS OpsWorks Stacks fonctionne un peu différemment du serveur Chef. Nous recommandons donc aux utilisateurs expérimentés de Chef de lire au moins cette section.

Vagrant et Test Kitchen

Si vous utilisez des recettes pour les instances Linux, Vagrant et Test Kitchen sont des outils très utiles pour l'apprentissage, ainsi que le développement et les tests initiaux. Vous y trouverez de brèves descriptions de Vagrant et Test Kitchen, ainsi que des instructions d'installation et des procédures pas à pas qui vous permettront de configurer et de vous familiariser avec les bases de l'utilisation des outils. Bien que Vagrant prenne en charge Windows, ce n'est pas le cas de Test Kitchen, c'est pourquoi seuls des exemples avec Linux sont proposés pour ces outils.

Vagrant

Vagrant fournit un environnement uniforme pour l'exécution et le test du code sur une machine virtuelle. Il prend en charge une grande variété d'environnements, appelés boîtes Vagrant, chacun représentant un système d'exploitation configuré. Pour AWS OpsWorks Stacks, les environnements d'intérêt sont basés sur les distributions Ubuntu, Amazon ou Red Hat Enterprise Linux (RHEL). Les exemples utilisent donc principalement une boîte Vagrant nommée. opscode-ubuntu-12.04

Vagrant est disponible pour les systèmes Linux, Windows et Macintosh, c'est pourquoi vous pouvez utiliser votre poste de travail préféré pour implémenter et tester des recettes sur n'importe quel système d'exploitation pris en charge. Les exemples de ce chapitre ont été créés sur un système Ubuntu Linux, mais la traduction des procédures sur les systèmes Windows ou Macintosh est simple.

Vagrant est globalement une enveloppe pour un fournisseur de virtualisation. La plupart des exemples utilisent le VirtualBoxfournisseur. VirtualBox est gratuit et disponible pour les systèmes Linux, Windows et Macintosh. La procédure pas à pas de Vagrant fournit des instructions d'installation si vous ne les avez pas déjà VirtualBox sur votre système. Notez que vous pouvez exécuter des environnements basés sur Ubuntu, VirtualBox mais Amazon Linux n'est disponible que pour les instances Amazon EC2. Cependant, vous pouvez exécuter un système d'exploitation similaire tel que CentOS VirtualBox, ce qui est utile pour le développement initial et les tests.

Pour plus d'informations sur d'autres fournisseurs, consultez la documentation sur Vagrant. Le fournisseur de vagrant-aws plug-in vous permet notamment d'utiliser Vagrant avec des instances Amazon EC2. Ce fournisseur est particulièrement utile pour tester des recettes sur Amazon Linux, qui n'est disponible que sur les instances Amazon EC2. Le fournisseur vagrant-aws est gratuit, mais vous devez posséder un compte AWS et payer toutes les ressources AWS que vous utilisez.

À ce stade, vous devez parcourir la procédure pas à pas de mise en route de Vagrant, qui décrit l'installation de Vagrant sur votre poste de travail et vous enseigne les bases de son utilisation. Veuillez noter que les exemples de ce chapitre n'utilisent pas de référentiel Git ; vous pouvez donc ignorer cette partie de la procédure si vous le souhaitez.

Test Kitchen

Test Kitchen simplifie le processus d'exécution et de test de vos livres de recettes sur Vagrant. Sur le plan pratique, vous n'utilisez presque jamais Vagrant directement. Test Kitchen effectue les tâches les plus courantes, notamment :

  • Lancement d'une instance dans Vagrant.

  • Transfert de livres de recettes vers l'instance.

  • Exécution des recettes du livre de recettes sur l'instance.

  • Test de recettes d'un livre de recettes sur l'instance.

  • Utilisation de SSH pour se connecter à l'instance.

Au lieu d'installer Test Kitchen directement, nous recommandons d'installer Chef DK. En plus de Chef lui-même, ce package comprend Test Kitchen, Berkshelf et plusieurs autres outils utiles. ChefSpec

À ce stade, vous devez passer à la Procédure pas à pas de mise en route de Test Kitchen, qui vous enseigne les bases de l'utilisation de Test Kitchen pour exécuter et tester des recettes.

Note

Les exemples de ce chapitre utilisent Test Kitchen pour exécuter facilement des recettes. Si vous préférez, vous pouvez arrêter la procédure de mise en route à la fin de la section Vérification manuelle, qui couvre tout ce que vous avez besoin de connaître pour les exemples. Cependant, Test Kitchen est essentiellement une plateforme de test qui prend en charge les infrastructures de test, par exemple bash automated test system (BATS). Vous devrez terminer le reste de la procédure pas à pas à un moment donné afin d'apprendre à utiliser Test Kitchen pour tester vos recettes.