Cas d'utilisation : provisionnement d'une empreinte d'application avec des articles de catalogue privé

En tant qu'organisation, je veux provisionner ou redimensionner une empreinte d'application dans plusieurs environnements, notamment le développement, les tests, la préparation et la production via Fleet Application Management. Chaque environnement nécessite des configurations spécifiques basées sur le dimensionnement, l'allocation et les niveaux des ressources, telles que le niveau Web, le niveau application, le niveau base de données. Les ressources doivent être nommées et étiquetées de manière appropriée pour faciliter leur identification et leur gestion.

Effectuez les étapes suivantes pour utiliser Fleet Application Management afin de provisionner une empreinte d'application dans plusieurs environnements. Vous pouvez extrapoler les étapes suivantes pour répondre à vos besoins :

Vous pouvez appliquer le même cas d'utilisation pour gérer l'infrastructure sur un parc actif existant en vue du redimensionnement ou de la réallocation des ressources.

1. Définir des environnements

Créez des types d'environnement dans Fleet Application Management pour chaque phase d'implémentation ou utilisez les types d'environnement définis par Oracle. Par exemple :

  • Développement : tailles de ressource plus faibles pour les tests initiaux.
  • Test : ressources de taille moyenne pour les tests fonctionnels et d'intégration.
  • Production : ressources hautes performances pour les opérations en direct.

2. Créer des articles de catalogue privé

Créez des articles de catalogue privé pour chaque niveau dans Fleet Application Management.

  1. Créez un article de catalogue de configuration pour un Terraform.
    • Développez un package Terraform tel que recommandé par Terraform, avec tous les fichiers nécessaires au provisionnement. Le package peut être fourni de l'une des manières suivantes :
      • Fichier ZIP
      • Référentiel GitHub

      Pour plus d'informations sur le développement d'un package Terraform, reportez-vous à Fournisseur Terraform.

    • Créez un élément de catalogue Terraform à partir du package Terraform. Pour connaître les étapes de création d'un article de catalogue, reportez-vous à Création d'un article de catalogue privé.
  2. Créez un article de catalogue de configuration pour différents types d'environnement.
    • Incluez des configurations propres à l'environnement dans un fichier JSON (conf.json).
    • Téléchargez le fichier conf.json vers un bucket Object Storage.
    • Créez un élément de catalogue à partir du fichier conf.json. Pour connaître les étapes de création d'un article de catalogue, reportez-vous à Création d'articles de catalogue privés.
Etendez les étapes mentionnées pour chaque niveau (Web, application, base de données).

Affectation et dimensionnement des ressources

Définissez la taille et l'allocation des ressources pour chaque niveau :

  • Niveau Web : instances de calcul avec une CPU et une mémoire moyennes.
    • Développement : 1 instance moyenne.
    • Test : 2 instances volumineuses pour des performances améliorées.
    • Production : 4 instances à des fins d'évolutivité, avec redimensionnement automatique en fonction de l'utilisation de l'UC.
  • Niveau application : instances de calcul avec un nombre élevé d'UC et de mémoire.
    • Développement : 2 instances Compute de taille moyenne avec 4 Go de RAM et deux vCPUs chacune.
    • Test : 4 instances volumineuses avec 8 Go de RAM et quatre instances vCPUs pour gérer une charge accrue.
    • Production : 8 instances (deux fois l'environnement de test) pour la haute disponibilité, le redimensionnement automatique étant activé.
  • Niveau de base de données : ressources de base de données optimisées pour le stockage et les performances.
    • Développement : petite instance de base de données avec deux vCPUs et 15 Go de RAM.
    • Test : instance moyenne avec quatre vCPUs et 30 Go de RAM.
    • Production : instance hautes performances avec huit vCPUs, 64 Go de RAM et une capacité d'E/S élevée.
    Pour le stockage, allouez :
    • 100 Go de développement
    • 250 Go de test
    • 500 Go en production, avec options de sauvegarde et de récupération

Utilisez des variables Terraform (variables.tf) pour fournir toutes les définitions de variable et conf.json pour affecter dynamiquement les valeurs de variable.

3. Provisionner des ressources

  1. Créez une tâche de guide d'exécution dans Fleet Application Management pour accéder à l'élément de catalogue privé.
    Veillez à sélectionner l'opération de cycle de vie Provisionnement et le type d'action Exécuter un terraform.
  2. Créez un guide d'exploitation pour provisionner les ressources.
    Fournissez des informations de base telles que le nom du guide d'exploitation, l'opération de cycle de vie (provisionnement) et le système d'exploitation requis (Linux).

    Ajoutez des groupes de ressources parallèles ou non simultanés en fonction des exécutions de tâche requises.

  3. Utilisez la gestion des applications de parc pour créer un parc pour chaque environnement.
  4. Associez le parc aux runbooks et aux types d'environnement appropriés.
  5. Exécutez les guides d'exécution pour provisionner dynamiquement les ressources en fonction du type d'environnement.
  6. Répétez les étapes précédentes pour chaque matrice.
  7. Vérifiez tous les déploiements de ressources pour chaque niveau.

4. Exemple de configuration

  • Fichier Terraform(main.tf) : définit les instances Compute avec des formes et des configurations réseau spécifiques. Voir l'exemple main.tf.
  • Fichier de variables (variables.tf) : inclut des variables telles que instance_compartment_id, subnet_id et display_name. Voir l'exemple variables.tf.
  • Fichier de configuration(conf.json) : indique les valeurs des variables, telles que l'OCID de compartiment et l'ID de sous-réseau. Voir l'exemple conf.json.

Pour obtenir d'autres exemples de configuration, reportez-vous à Fournisseur Oracle Cloud Infrastructure.