OpenStack Flavors
Dans OpenStack, un Flavor définit la configuration matérielle virtuelle (processeur, mémoire, disque) d'une instance. C'est le modèle qui détermine la taille et les ressources allouées à une machine virtuelle .
📋 Paramètres principaux d'un Flavor¶
Voici les composants que vous pouvez configurer lors de la création d'un flavor :
- ID : Identifiant unique (entier ou UUID) du flavor .
- Name (Nom) : Nom du flavor. Historiquement au format
XX.SIZE_NAME(ex:m1.small), mais ce n'est plus obligatoire . - VCPUs : Nombre de processeurs virtuels alloués à l'instance .
- Memory MB (Mémoire RAM) : Quantité de mémoire vive en mégaoctets .
- Root Disk GB (Disque racine) : Espace disque pour la partition racine (
/) en gigaoctets. La valeur0est un cas spécial qui utilise la taille de l'image de base (à réserver aux instances démarrées depuis un volume) . - Ephemeral Disk GB (Disque éphémère) : Espace disque local supplémentaire, non persistant. Les données sont perdues à l'arrêt de l'instance et ne sont pas incluses dans les snapshots. Par défaut, la valeur est
0. - Swap (Swap Disk MB) : Espace d'échange en mégaoctets. Par défaut, la valeur est
0. - Is Public : Indique si le flavor est accessible à tous les projets (
Truepar défaut) ou privé à certains projets . - Extra Specs : Paires clé-valeur optionnelles pour des configurations avancées (voir section suivante) .
⚙️ Extra Specs (Métadonnées)¶
Les Extra Specs (ou métadonnées) sont des paires clé-valeur qui permettent d'affiner le comportement et l'emplacement des instances. Ils servent d'indices au planificateur (scheduler) pour choisir l'hôte de calcul approprié .
Voici quelques exemples de métadonnées courantes :
- Limitation CPU : Utilisez
quota:cpu_sharespour définir un partage proportionnel du temps CPU, ouquota:cpu_quotaetquota:cpu_periodpour plafonner la bande passante du vCPU . - Réglage disque : Des clés comme
quota:disk_read_iops_secouquota:disk_write_bytes_seclimitent les performances d'E/S des disques provisionnés par le service Compute (comme le disque éphémère) . - Secure Boot :
os:secure_boot=requiredpermet d'activer le démarrage sécurisé pour les instances utilisant ce flavor . - Watchdog :
hw:watchdog_actiondéfinit le comportement du chien de garde matériel .
Remarque : Les propriétés
quota:vif_*pour la bande passante réseau sont obsolètes. Utilisez plutôt les politiques de QoS (Quality of Service) du service Neutron .
📝 Flavors par défaut¶
Depuis la version Newton, OpenStack ne fournit plus de flavors par défaut. Vous devez les créer vous-même .
Cependant, les versions Mitaka et antérieures incluaient ces flavors par défaut à titre de référence :
| Flavor | vCPUs | Disque (GB) | RAM (MB) |
|---|---|---|---|
| m1.tiny | 1 | 1 | 512 |
| m1.small | 1 | 20 | 2048 |
| m1.medium | 2 | 40 | 4096 |
| m1.large | 4 | 80 | 8192 |
| m1.xlarge | 8 | 160 | 16384 |
🛠️ Gestion des Flavors¶
Vous pouvez gérer les flavors via l'interface Horizon ou la ligne de commande (CLI).
- Création :
openstack flavor create --ram <taille> --disk <taille> --vcpus <nombre> <nom>. - Modification : Il n'est pas possible de modifier les spécifications de base (RAM, vCPU, disque) d'un flavor existant. Pour les changer, vous devez supprimer le flavor et en créer un nouveau avec le même nom . Vous pouvez toutefois modifier ses Extra Specs avec
openstack flavor set <flavor> --property key=value. - Suppression :
openstack flavor delete <flavor>.
Si vous avez des questions sur un cas d'usage spécifique, n'hésitez pas à me demander.