Pendant le développement itératif de vos modèles de cloud ou lorsque vous disposez d'un modèle final, vous pouvez mettre à la disposition des consommateurs les modèles dans le catalogue Service Broker en libre-service. Pour améliorer l'expérience utilisateur, vous pouvez créer un formulaire de demande personnalisé. Le formulaire personnalisé est plus puissant que les options d'entrée de modèle simples.
Par quoi commencer
- Vérifiez que vous avez l'infrastructure qui prend en charge votre modèle. Sinon, commencez par Didacticiel : configuration et test de l'infrastructure et des déploiements vSphere dans Cloud Assembly, puis continuez avec les autres didacticiels.
- Vérifiez que vous avez marqué certains pools de ressources comme
env:dev
etenv:prod
. Pour plus d'informations, reportez-vous à la section Didacticiel : utilisation de balises dans Cloud Assembly pour gérer des ressources vSphere. - Assurez-vous que vous avez un modèle de cloud déployable, semblable à celui ci-dessous. Ce didacticiel commence par le modèle suivant.
formatVersion: 1 inputs: installedOS: type: string title: Operating System description: Select the operating system. enum: - centos - ubuntu placement: type: string enum: - 'env:dev' - 'env:prod' default: 'env:dev' title: Select Placement for Deployment description: Target Environment resources: Cloud_vSphere_Disk_1: type: Cloud.vSphere.Disk properties: capacityGb: 1 Cloud_vSphere_Machine_1: type: Cloud.vSphere.Machine properties: image: '${input.installedOS}' installedOS: '${input.installedOS}' flavor: small constraints: - tag: '${input.placement}' tags: - key: db value: mysql networks: - network: '${resource.Cloud_NSX_Network_1.id}' tags: - key: db value: mysql attachedDisks: - source: '${resource.Cloud_vSphere_Disk_1.id}' Cloud_NSX_Network_1: type: Cloud.NSX.Network properties: networkType: existing tags: - key: NGINX value: web
Étape 1 : ajouter des entrées au modèle de cloud
Outre l'entrée de type de système d'exploitation existante, cette procédure met à jour l'entrée de positionnement et ajoute une entrée de taille. Lorsque vous personnalisez le formulaire de demande Service Broker, ces champs sont les trois champs du formulaire de demande qui sont personnalisés.
- Dans Cloud Assembly, sélectionnez , puis créez ou ouvrez le modèle fourni ci-dessus.
L'exemple de modèle est utilisé pour expliquer les différentes options et inclut des exemples de valeurs. Adaptez-le à votre environnement .
- Ajoutez la variable de taille et définissez les tailles dans la section Entrées.
- Dans la section Cloud_vSphere_Machine_1, ajoutez une variable à la propriété
flavor
.flavor: '${input.size}'
- Dans la section Entrées, ajoutez une taille de nom d'entrée d'utilisateur afin que l'utilisateur puisse sélectionner la taille du déploiement. Il s'agit parfois de la taille que vous avez définie pour les zones de cloud.
size: type: string title: Deployment size description: Select the the deployment t-shirt size. enum: - small - medium - large
- Dans la section Cloud_vSphere_Machine_1, ajoutez une variable à la propriété
- Mettez à jour les entrées de positionnement avec un terme descriptif plutôt que des chaînes de balise.
Ces balises de contrainte correspondront aux balises de capacité que vous avez ajoutées dans Didacticiel : utilisation de balises dans Cloud Assembly pour gérer des ressources vSphere.
- Dans la section Entrées, ajoutez une entrée d'utilisateur nommée positionnement afin que l'utilisateur puisse sélectionner développement ou production comme positionnement du déploiement.
Cet exemple utilise l'attribut
oneOf
, qui vous permet de présenter une étiquette en langage naturel tout en envoyant les chaînes dont le processus de déploiement a besoin. Par exemple, les balisesenv:dev
etenv:prod
.placement: type: string oneOf: - title: Development const: 'env:dev' - title: Production const: 'env:prod' default: 'env:dev' title: Select Deployment Placement description: Target Environment
- Dans la section Entrées, ajoutez une entrée d'utilisateur nommée positionnement afin que l'utilisateur puisse sélectionner développement ou production comme positionnement du déploiement.
- Examinez le code YAML complet pour vous assurer qu'il ressemble à l'exemple suivant.
formatVersion: 1 inputs: installedOS: type: string title: Operating system description: Select the operating system. enum: - centos - ubuntu placement: type: string oneOf: - title: Development const: 'env:dev' - title: Production const: 'env:prod' default: 'env:dev' title: Select Deployment Placement description: Target Environment size: type: string title: Deployment size description: Select the the deployment t-shirt size. enum: - small - medium - large resources: Cloud_vSphere_Disk_1: type: Cloud.vSphere.Disk properties: capacityGb: 1 Cloud_vSphere_Machine_1: type: Cloud.vSphere.Machine properties: image: '${input.installedOS}' installedOS: '${input.installedOS}' flavor: '${input.size}' constraints: - tag: '${input.placement}' tags: - key: db value: mysql networks: - network: '${resource.Cloud_NSX_Network_1.id}' tags: - key: db value: mysql attachedDisks: - source: '${resource.Cloud_vSphere_Disk_1.id}' Cloud_NSX_Network_1: type: Cloud.NSX.Network properties: networkType: existing tags: - key: NGINX value: web
- Cliquez sur Déployer, vérifiez que la deuxième page de la demande ressemble à l'exemple suivant, puis vérifiez que le déploiement se trouve dans le développement sélectionné du pool de ressources de production après le déploiement.
Étape 2 : gérer la version et publier le modèle de cloud
Lorsque vous avez un modèle déployable, vous pouvez désormais le mettre à disposition dans le catalogue Service Broker pour d'autres utilisations à déployer. Pour que le modèle de cloud puisse être découvert afin de pouvoir l'ajouter au catalogue, vous devez le publier. Dans cette procédure, nous allons en gérer la version pour capturer un snapshot du modèle, puis publier le modèle.
- Sélectionnez , puis ouvrez le modèle dans le canevas de conception.
- Cliquez sur Version et entrez une description.
- Cochez la case Publier et cliquez sur Créer.
La publication du modèle de cloud ne l'ajoute pas automatiquement à Service Broker. Sa publication le rend détectable afin de pouvoir l'ajouter au catalogue.
Étape 3 : ajouter le modèle de cloud au catalogue Service Broker
Vous pouvez utiliser le catalogue Service Broker pour fournir des modèles de cloud à d'autres consommateurs de votre organisation dans lesquels ils n'ont pas besoin de savoir comment créer un modèle. Le catalogue leur permet de déployer le modèle.
Avant de pouvoir ajouter le modèle en tant qu'élément de catalogue, vous devez l'importer dans Service Broker. Vous pouvez uniquement importer des modèles de cloud publiés.
- Pour ouvrir Service Broker à partir de Cloud Assembly, cliquez sur le menu des applications dans le coin supérieur droit.
- Cliquez sur Service Broker.
- Importez le modèle de cloud.
- Dans Service Broker, sélectionnez .
- Cliquez sur Nouveau, puis sélectionnez VMware Cloud Templates.
- Entrez un Nom.
Dans ce didacticiel, entrez Cloud Assembly DevProject.
- Pour Projet, sélectionnez le projet Projet de développement que vous avez créé dans Cloud Assembly.
- Cliquez sur Valider.
Le système doit indiquer qu'il a trouvé au moins un élément.
- Une fois validé, cliquez sur Créer et importer.
Cloud Assembly DevProject est ajouté à la liste en tant que source de contenu.
- Rendez le modèle de cloud disponible dans le catalogue.
- Sélectionnez .
- Cliquez sur Nouvelle stratégie, puis sur Stratégie de partage de contenu.
- Entrez un Nom.
Pour ce didacticiel, entrez DevProject Policy.
- Dans la liste Portée, sélectionnez Projet de développement.
- Dans la section Partage de contenu, cliquez sur Ajouter des éléments.
- Dans la boîte de dialogue Partager des éléments, sélectionnez
Cloud Assembly DevProject
et cliquez sur Enregistrer. - Dans la section Utilisateurs, sélectionnez les utilisateurs et les groupes du projet que vous souhaitez voir dans le catalogue.
- Cliquez sur Créer.
- Pour vérifier que le modèle de développement a été ajouté au catalogue, cliquez sur Catalogue.
- Cliquez sur Demander sur la fiche du modèle de développement.
Notez que les entrées que vous avez vues sur le modèle de cloud sont fournies ici. L'étape suivante consiste à personnaliser le formulaire de demande.
Étape 4 : créer un formulaire personnalisé pour le modèle
L'objectif de ce formulaire personnalisé est de fournir un formulaire dans lequel l'utilisateur sélectionne le système d'exploitation et le positionnement en fonction des balises env:dev ou env:prod. Ensuite, l'option env:dev permet à l'utilisateur de sélectionner petite ou moyenne. La taille grande n'est pas disponible. Cependant, si l'utilisateur sélectionne env:prod, il n'y a pas d'option pour sélectionner grande. La taille est masquée à l'utilisateur, mais est incluse dans la demande.
- Pour créer un formulaire personnalisé dans Service Broker, sélectionnez .
- Cliquez sur les trois points verticaux à gauche de l'entrée Modèle de développement, puis cliquez sur Personnaliser le formulaire.
- Personnalisez l'option d'entrée.
- Dans le canevas, cliquez sur les champs dans le canevas et configurez les propriétés comme spécifié dans le tableau suivant.
Nom de champ du canevas Apparence Valeurs Contraintes Système d'exploitation Étiquette et type
- Étiquette = Système d'exploitation
Options de valeur
- Options de valeur = Constante
- Source de la valeur =
centos|CentOS,ubuntu|Ubuntu
Cet exemple utilise les options de valeur pour personnaliser tous les noms de système d'exploitation en minuscules avec le nom du système d'exploitation préféré.
Sélectionner le positionnement du déploiement Options de valeur
- Options de valeur = Constante
- Source de la valeur =
env:dev|Development,env:prod|Production
Taille du déploiement Visibilité
- Source de la valeur = Valeur conditionnelle
- Définir la valeur = Oui si Sélectionner le positionnement du déploiement est égal à env:dev
Valeur par défaut
- Source de la valeur = Valeur conditionnelle
- Définir la valeur = grande si Sélectionner un déploiement est égal à env:prod
Options de valeur
- Options de valeur = Constante
- Source de la valeur =
small|Small,medium|Medium
Notez que la source de la valeur n'inclut pas grande. Grande est exclue, car elle est uniquement disponible pour la production et est dans ce cas la valeur requise. La valeur grande est incluse dans la demande de déploiement sans action de l'utilisateur.
- Pour activer le formulaire dans le catalogue, cliquez sur Activer.
- Cliquez sur Enregistrer.
- Dans le canevas, cliquez sur les champs dans le canevas et configurez les propriétés comme spécifié dans le tableau suivant.
- Pour garantir les résultats corrects en envoyant au moins une demande de développement de petite taille et de production, testez le formulaire dans le catalogue.
Utilisez les exemples suivants pour vérifier les résultats.
- Testez le formulaire de demande de petite taille en fournissant un nom, Petit test dans cet exemple, et en sélectionnant CentOS, Développement et Petit pour les options.
- Pour vérifier le déploiement Développement-Petit, sélectionnez , puis cliquez sur le déploiement Petit test.
- Dans l'onglet Topologie, cliquez sur Cloud_vSphere_Machine, puis localisez la section Propriétés personnalisées dans le volet de droite.
Quelques valeurs à vérifier incluent cpuCount=2 et flavor=small.
- Testez le formulaire de demande de production en entrant un nom, Grand test dans cet exemple, puis sélectionnez CentOS et Production pour les options.
Rappelez-vous que vous avez configuré le formulaire pour qu'il ne s'affiche pas et ne demande pas à l'utilisateur de sélectionner la taille.
- Pour vérifier le déploiement Production, sélectionnez , puis cliquez sur le déploiement Grand test.
- Dans l'onglet Topologie, cliquez sur Cloud_vSphere_Machine, puis localisez la section Propriétés personnalisées dans le volet de droite.
Quelques valeurs à examiner incluent cpuCount = 8 et flavor = large.
- Testez le formulaire de demande de petite taille en fournissant un nom, Petit test dans cet exemple, et en sélectionnant CentOS, Développement et Petit pour les options.
Étape 5 : contrôlez les versions du modèle de cloud dans le catalogue
Dans la plupart des cas, vous souhaitez rendre uniquement les derniers modèles de cloud disponibles dans le catalogue Service Broker. La procédure suivante prend en charge le développement itératif, lorsque vous publiez une version d'un modèle et l'ajoutez au catalogue, mais vous avez désormais amélioré le modèle et vous souhaitez remplacer la version actuelle par la version la plus récente.
À l'étape 2, vous avez contrôlé la version d'un modèle et vous l'avez publié. Vous êtes donc familiarisé avec le processus. À l'étape 3, vous avez ajouté ce modèle au catalogue. La procédure associe les deux étapes au fur et à mesure que vous effectuez un développement itératif et mettez à jour le catalogue avec la dernière version.
Vous avez la possibilité de rendre plusieurs versions disponibles dans le catalogue.
- Dans Cloud Assembly, contrôlez la version du modèle que vous souhaitez désormais rendre disponible dans le catalogue.
- Sélectionnez , puis ouvrez le modèle dans le canevas de conception.
- Cliquez sur Historique des versions.
- Localisez la version à ajouter au catalogue, puis cliquez sur Version.
- Entrez une Description, cochez la case Publier, puis cliquez sur Créer.
À ce stade, vous avez la possibilité de conserver l'ancienne version dans le catalogue. Si vous souhaitez conserver plusieurs versions, ignorez l'étape suivante dans laquelle vous annulez la publication d'une version.
- Pour conserver une seule version du modèle disponible dans le catalogue, examinez l'historique des versions et cliquez sur Annuler la publication pour chaque version que vous ne voulez pas conserver dans le catalogue.
- Pour mettre à jour le catalogue Service Broker avec la dernière version et remplacer toute version antérieure, vous devez collecter la nouvelle version.
- Dans Service Broker, sélectionnez .
- Cliquez sur la source de contenu Cloud Assembly DevProject utilisée dans ce didacticiel.
- Cliquez sur Valider.
Vous devez voir un message indiquant qu'un élément est trouvé.
- Cliquez sur Enregistrer et importer.
- Vérifiez que le catalogue affiche les versions nécessaires ou aucune version.
- Dans Service Broker, cliquez sur Catalogue.
- Localisez l'élément du catalogue et cliquez sur Demander.
- En haut du formulaire de demande, cliquez sur Version et vérifiez la ou les versions.
La capture d'écran suivante montre 8 versions.