Un pool de ressources est une abstraction logique pour une gestion flexible des ressources. Les pools de ressources peuvent être regroupés en hiérarchies et utilisés pour partitionner hiérarchiquement les ressources CPU et mémoire disponibles.

Chaque hôte autonome et chaque cluster DRS possèdent un pool de ressources racine (invisible) regroupant les ressources de cet hôte ou cluster. Le pool de ressources racine n'est pas affiché car les ressources de l'hôte (ou du cluster) et le pool de ressources racine sont toujours identiques.

Les utilisateurs peuvent créer des pools de ressources enfants du pool de ressources racine ou de tout autre pool de ressources enfant créé par un utilisateur. Chaque pool de ressources enfant possède une partie des ressources du parent et peut également posséder une hiérarchie de pools de ressources enfants représentant à leur tour de plus petites unités de capacité de calcul.

Un pool de ressources peut contenir des pools de ressources enfants, des machines virtuelles ou les deux. Vous pouvez créer une hiérarchie de ressources partagées Les pools de ressources d'un niveau plus élevé sont appelés pools de ressources parents. Les pools de ressources et machines virtuelles situés au même niveau sont appelés germains. Le cluster lui-même représente le pool de ressources racine. Si vous ne créez pas de pools de ressources enfants, il n'existe que les pools de ressources racines.

Dans l'exemple suivant, RP-QA est le pool de ressources parent de RP-QA-UI. RP-Marketing et RP-QA sont germains. Les trois machines virtuelles situées immédiatement sous RP-Marketing sont également germaines.

Figure 1. Parents, enfants et germains dans la hiérarchie de pool de ressources

Ce schéma illustre la hiérarchie d'un pool de ressources.

Pour chaque pool de ressources, spécifiez une réservation, une limite et des partages ; indiquez également si la réservation doit être extensible. Les ressources du pool de ressources sont ensuite disponibles pour les pools de ressources enfants et machines virtuelles.

Note : Dans ce chapitre, « Mémoire » désigne la RAM physique.

Utilité des pools de ressources

Les pools de ressources permettent de déléguer le contrôle des ressources d'un hôte (ou d'un cluster), mais les avantages sont flagrants quand vous utilisez des pools de ressources pour compartimenter toutes les ressources d'un cluster. Vous pouvez créer plusieurs pools de ressources en tant qu'enfants directs de l'hôte ou du cluster, puis les configurer. Vous pouvez ensuite déléguer le contrôle sur les pools de ressources à d'autres personnes ou organisations.

L'utilisation des pools de ressources peut vous apporter les bénéfices suivants.

  • Organisation hiérarchique flexible : Ajoutez, supprimez ou réorganisez les pools de ressources ou modifiez les allocations de ressources selon vos besoins.
  • Isolation entre les pools, partage au sein des pools : Les administrateurs supérieurs peuvent rendre un pool de ressources disponible pour un administrateur de niveau service. Les modifications d'allocation internes à un pool de ressources d'un service n'affectent pas négativement les autres pools de ressources sans lien.
  • Contrôle d'accès et délégation : Lorsqu'un administrateur de niveau supérieur rend un pool de ressources disponible pour un administrateur de niveau service, cet administrateur peut ensuite créer et gérer des machines virtuelles dans les limites des ressources auxquelles le pool de ressources a droit selon les paramètres partages, réservation et limite actuels. La délégation est généralement réalisée en conjonction avec les paramètres d'autorisations.
  • Séparation des ressources du matériel : Si vous utilisez des clusters pouvant utiliser DRS, les ressources de tous les hôtes sont toujours attribuées au cluster. Cela signifie que les administrateurs peuvent gérer les ressources indépendamment des hôtes réels contribuant aux ressources. Si vous remplacez trois hôtes 2 Go par deux hôtes 3 Go, il n'est pas nécessaire de modifier vos allocations de ressources.

    Cette séparation permet aux administrateurs de se concentrer plus sur le cumul de capacité de calcul et moins sur les hôtes individuels.

  • Gestion d'ensembles de machines virtuelles exécutant un service multi-niveau : groupes de machines virtuelles pour un service multi-niveau au sein d'un pool de ressources. Vous n'avez pas besoin de définir des ressources sur chaque machine virtuelle. Au lieu de cela, vous pouvez gérer l'allocation globale des ressources pour l'ensemble des machines virtuelles en modifiant des paramètres de leur pool de ressources.

Par exemple, supposons qu'un hôte dispose d'un certain nombre de machines virtuelles. Le service Marketing utilise trois des machines virtuelles et le service Assurance de la qualité utilise deux machines virtuelles. Le service Assurance de la qualité nécessite de plus grandes quantités de CPU et de mémoire ; l'administrateur crée donc un pool de ressources pour chaque groupe. L'administrateur définit l'option Partages CPU sur Élevée pour le pool du service Assurance de la qualité et sur Normal pour le pool du service Marketing afin que les utilisateurs du service Assurance de la qualité puissent exécuter des tests automatisés. Le second pool de ressources, possédant moins de ressources CPU et mémoire, est suffisant pour la charge plus légère du personnel du service Marketing. Lorsque le service Assurance de la qualité n'utilise pas complètement son allocation, le service Marketing peut utiliser les ressources disponibles.

Les nombres de la figure qui suit indiquent les allocations effectives des pools de ressources.

Figure 2. Allocation de ressources aux pools de ressources

Le schéma illustre un scénario dans lequel des ressources sont allouées aux pools de ressources.

Créer un pool de ressources

Vous pouvez créer un pool de ressources enfant à partir de tout hôte ESXi, pool de ressources ou cluster DRS.

Note : Si un hôte a été ajouté à un cluster, vous ne pouvez pas créer de pools de ressources enfants de cet hôte. Vous pouvez créer des pools de ressources enfants du cluster si le cluster peut prendre en charge DRS.
Lors de la création d'un pool de ressources enfant, vous devez fournir des informations d'attribut pour le pool de ressources. Le système utilise le contrôle d'admission pour garantir que vous ne pouvez pas allouer de ressources non disponibles. Si vous souhaitez que vos partages soient mis à l'échelle dynamiquement lors de l'ajout ou de la suppression de machines virtuelles, vous pouvez sélectionner des partages évolutifs.
Note : Les partages sont mis à l'échelle au niveau parent. Tous les pools de ressources descendants créés à partir d'un parent avec des partages évolutifs ont des partages évolutifs par défaut.

Conditions préalables

vSphere Client est connecté au système vCenter Server.

Procédure

  1. Dans vSphere Client, sélectionnez un objet parent pour le pool de ressources (un hôte, un autre pool de ressources ou un cluster DRS).
  2. Cliquez avec le bouton droit sur l'objet et sélectionnez Nouveau pool de ressources.
  3. Tapez un nom pour identifier le pool de ressources.
  4. Cochez la case si vous souhaitez activer les partages évolutifs.
  5. Indiquez comment allouer des ressources CPU et de mémoire.

    Les ressources de CPU de votre pool de ressources sont les ressources physiques garanties que l'hôte réserve à un pool de ressources. Normalement, vous acceptez la valeur par défaut et laissez l'hôte traiter l'allocation des ressources.

    Option Description
    Parts Définissez les parts du pool de ressources par rapport aux ressources totales du parent. Les pools de ressources frères partagent des ressources selon leurs valeurs de part relatives limitées par la réservation et la limite.
    • Sélectionnez Faible, Normal ou Haut pour définir des valeurs de part dans un rapport 1/2/4.
    • Sélectionnez Personnalisé pour donner à chaque machine virtuelle un nombre spécifique de parts, qui exprime un poids proportionnel.
    Réservation Spécifiez une allocation de CPU ou de mémoire garantie pour ce pool de ressources. La valeur par défaut est 0.

    Une réservation supérieure à zéro est soustraite des ressources non réservées du parent (hôte ou pool de ressources). Les ressources sont considérées comme réservées, que des machines virtuelles soient ou non associées au pool de ressources.

    Réservation extensible Si vous cochez la case (elle l'est par défaut), des réservations extensibles sont prises en compte au cours du contrôle d'admission.

    Si vous mettez sous tension une machine virtuelle dans le pool de ressources et que les réservations combinées des machines virtuelles sont supérieures à la réservation du pool de ressources, le pool de ressources peut utiliser les ressources de son parent ou de ses ancêtres.

    Limite Spécifiez la limite maximale d'allocation CPU ou de mémoire du pool de ressources. Généralement, vous pouvez accepter la valeur par défaut (Illimité).

    Pour spécifier une limite, décochez la case Illimité.

  6. Cliquez sur OK.

Résultats

Vous pouvez ajouter des machines virtuelles au pool de ressources après l'avoir créé. Les partages d'une machine virtuelle sont fonction des autres machines virtuelles (ou pools de ressources) ayant le même pool de ressources parent.

Exemple : Création de pools de ressources

Supposons que vous possédiez un hôte fournissant 6 Ghz de CPU et 3 Go de mémoire à partager entre vos services marketing et assurance de la qualité. Vous souhaitez également partager les ressources de manière inégale et donner une plus haute priorité à l'un des services (assurance de la qualité). Pour cela, créez un pool de ressources pour chaque service, puis de donner les priorités d'allocation des ressources à l'aide de l'attribut Partages.

Cet exemple illustre la manière de créer un pool de ressources avec l'hôte ESXi en tant que ressource parente.

  1. Dans la boîte de dialogue Nouveau pool de ressources, saisissez un nom pour le pool de ressources du service Assurance Qualité (RP-QA, par exemple).
  2. Définissez Partages sur Élevée pour les ressources CPU et mémoire de RP-QA.
  3. Créez un second pool de ressources appelé RP-Marketing.

    Laissez Partages sur Normal pour le CPU et la mémoire.

  4. Cliquez sur OK.

S'il existe une contention des ressources, RP-QA reçoit 4 GHz et 2 Go de mémoire et RP-Marketing 2 GHz et 1 Go de mémoire. Sinon, ils peuvent recevoir plus que cette allocation. Ces ressources sont ensuite disponibles pour les machines virtuelles dans leurs pools de ressources respectifs.

Modifier un pool de ressources

Après avoir créé le pool de ressources, vous pouvez modifier ses paramètres de ressources de CPU et de mémoire.

Procédure

  1. Accédez au pool de ressources dans vSphere Client.
  2. Sélectionnez Modifier les paramètres des ressources dans le menu déroulant Actions.
  3. (Facultatif) Vous pouvez modifier tous les attributs du pool de ressources sélectionné comme décrit dans Créer un pool de ressources.
    • Cochez la case si vous souhaitez activer les partages évolutifs.
      Note : Les partages sont mis à l'échelle au niveau parent. Tous les pools de ressources descendants créés à partir d'un parent avec des partages évolutifs ont des partages évolutifs par défaut.
    • Sous CPU, sélectionnez les paramètres de ressources de CPU.
    • Sous Mémoire, sélectionnez les paramètres de ressources de mémoire.
  4. Cliquez sur OK pour enregistrer vos modifications.

Ajouter une machine virtuelle à un pool de ressources

Lorsque vous créez une machine virtuelle, vous pouvez déterminer un emplacement de pool de ressources pendant le processus de création. Vous pouvez également ajouter une machine virtuelle existante à un pool de ressources.

Lorsque vous déplacez une machine virtuelle vers un nouveau pool de ressources :
  • La réservation et la limite de la machine virtuelle ne sont pas modifiées.
  • Si les partages de la machine virtuelles sont élevés, moyens ou faibles, %Shares effectue un ajustement afin de refléter le nombre de partages utilisés dans le nouveau pool de ressources.
  • Si des partages personnalisés sont affectés à la machine virtuelle, la valeur de partage est conservée.
    Note : Les allocations de partage se rapportant à un pool de ressources, il peut s'avérer nécessaire de modifier manuellement les partages d'une machine virtuelle lorsque vous la déplacez dans un pool de ressources de façon à ce que les partages de la machine virtuelle soient cohérents avec les valeurs relatives du nouveau pool de ressources. Un avertissement s'affiche si une machine virtuelle reçoit un pourcentage très élevé (ou très faible) des partages totaux.
  • Sous Surveiller, les informations affichées dans l'onglet Réservations de ressources, concernant les ressources CPU et mémoire réservées et non réservées du pool de ressources, sont modifiées afin de refléter les réservations associées à la machine virtuelle (le cas échéant).
    Note : Si une machine virtuelle a été mise hors tension ou suspendue, elle peut être déplacée sans que les ressources disponibles globales (notamment les ressources CPU et mémoire réservées et non réservées) du pool de ressources ne soient affectées.

Procédure

  1. Accédez à la machine virtuelle dans vSphere Client.
    1. Pour trouver une machine virtuelle, sélectionnez un centre de données, un dossier, un cluster, un pool de ressources ou un hôte.
    2. Cliquez sur l'onglet VM.
  2. Cliquez avec le bouton droit de la souris sur la machine virtuelle puis cliquez sur Migrer.
    • Vous pouvez déplacer la machine virtuelle vers un autre hôte.
    • Vous pouvez déplacer le stockage de la machine virtuelle vers une autre banque de données.
    • Vous pouvez déplacer la machine virtuelle vers un autre hôte et son stockage vers une autre banque de données.
  3. Sélectionnez un pool de ressources sur lequel la machine virtuelle doit être exécutée.
  4. Passez vos sélections en revue et cliquez sur Terminer.

Résultats

Si une machine virtuelle est mise sous tension et que le pool de ressources de destination ne dispose pas de l'allocation CPU ou de mémoire suffisante pour garantir la réservation de la machine virtuelle, le déplacement échoue, car le contrôle d'admission ne l'autorise pas. Une boîte de dialogue d'erreur affiche les ressources disponibles et demandées afin que vous puissiez déterminer si un ajustement peut résoudre le problème.

Supprimer une machine virtuelle d'un pool de ressources

Vous pouvez supprimer une machine virtuelle d'un pool de ressources en déplaçant la machine virtuelle vers un autre pool de ressources ou en la supprimant.

Lorsque vous supprimez une machine virtuelle d'un pool de ressources, le nombre total de partages associés au pool de ressources diminue ; chaque partage restant représente alors plus de ressources. Par exemple, supposons que vous possédez un pool auquel 6 Ghz sont attribués, contenant trois machines virtuelles et dont les partages sont définis sur Normal. Si l'on suppose que les machines virtuelles sont dédiées au CPU, chacune d'elles obtient une allocation égale de 2 Ghz. Si l'une des machines virtuelles est déplacée vers un pool de ressources différent, les deux machines virtuelles restantes reçoivent chacune une allocation égale de 3 Ghz.

Procédure

  1. Accédez au pool de ressources dans vSphere Client.
  2. Choisissez l'une des méthodes suivantes pour supprimer la machine virtuelle d'un pool de ressources.
    • Cliquez avec le bouton droit de la souris sur la machine virtuelle, puis sélectionnez Déplacer vers… pour déplacer la machine virtuelle vers un autre pool de ressources.

      Il n'est pas nécessaire de mettre hors tension la machine virtuelle avant de la transférer.

    • Cliquez avec le bouton droit sur la machine virtuelle et sélectionnez Supprimer du disque.

      Vous devez mettre la machine virtuelle hors tension pour pouvoir la supprimer complètement.

Supprimer un pool de ressources

Vous pouvez supprimer un pool de ressources de l'inventaire.

Procédure

  1. Dans vSphere Client, cliquez avec le bouton droit sur le pool de ressources et sélectionnez Supprimer.
    Une boîte de dialogue de confirmation apparaît.
  2. Cliquez sur Oui pour supprimer le pool de ressources.

Contrôle d'admission de pool de ressources

Lorsque vous mettez une machine virtuelle sous tension dans un pool de ressources ou que vous tentez de créer un pool de ressources enfant, le système effectue un contrôle d'admission supplémentaire afin de s'assurer que les restrictions du pool de ressources ne sont pas violées.

Avant de mettre une machine virtuelle sous tension ou de créer un pool de ressources, vérifiez que vous disposez de suffisamment de ressources dans l'onglet Allocation des ressources de vSphere Client. La valeur Réservation disponible du CPU et la mémoire indique les ressources non réservées.

La manière dont les ressources de CPU et de mémoire sont calculées et la mise en place des actions dépendent du Type de réservation.

Tableau 1. Types de réservation
Type de réservation Description
Fixe Le système vérifie si le pool de ressources sélectionné possède suffisamment de ressources non réservées. Si tel est le cas, l'action peut être effectuée. Si tel n'est pas le cas, un message s'affiche et l'action ne peut pas être effectuée.
Extensible

(par défaut)

Le système examine les ressources disponibles dans le pool de ressources sélectionné et dans ses pools de ressources parents directs. Si l'option Réservation extensible du pool de ressources parent est également sélectionnée, le pool de ressources peut emprunter des ressources à son pool de ressources parent. L'emprunt de ressources est effectué récursivement depuis les ancêtres du pool de ressources actuel, tant que l'option Réservation extensible est sélectionnée. Lorsque cette option est sélectionnée en permanence, vous disposez d'une plus grande flexibilité mais la protection est inférieure. Le propriétaire d'un pool de ressources enfant peut réserver plus de ressources que vous ne l'anticipez.

Le système ne vous permet pas de violer les paramètres Réservation ou Limite préconfigurés. Chaque fois que vous reconfigurez un pool de ressources ou que vous mettre une machine virtuelle sous tension, le système valide tous les paramètres afin que toutes les garanties de niveau de service soient toujours respectées.

Réservations extensibles, exemple 1

Cet exemple vous explique le fonctionnement d'un pool de ressources avec des réservations extensibles.

Supposons qu'un administrateur gère le pool P et définit deux pools de ressources enfants (S1 et S2) pour deux utilisateurs (ou groupes) différents.

L'administrateur sait que les utilisateurs souhaitent appliquer des réservations sur des machines virtuelles, mais ne sait pas la quantité de chaque utilisateur doit réserver. La création de réservations extensibles S1 et S2 permet à l'administrateur de partager et transmettre la réservation commune du pool P de manière plus flexible.

Sans réservations extensibles, l'administrateur doit allouer explicitement une quantité spécifique à S1 et S2. De telles allocations spécifiques peuvent ne pas être flexibles, en particulier dans les hiérarchies profondes de pool de ressources, et peuvent compliquer la définition de réservations dans la hiérarchie de pool de ressources.

Les réservations extensibles peuvent entraîner une perte d'isolation stricte. S1 peut commencer à utiliser la totalité de la réservation du pool P, si bien qu'aucune mémoire ou CPU n'est directement disponible pour S2.

Réservations extensibles, exemple 2

Cet exemple explique le fonctionnement d'un pool de ressources avec des réservations extensibles.

Supposons le scénario suivant (illustré dans la figure).

  • Le pool parent RP-MOM possède une réservation de 6 Ghz et une machine virtuelle en cours d'exécution, VM-M1, réservant 1 GHz.
  • Vous pouvez créer un pool de ressources enfant, RP-KID, avec une réservation de 2 Ghz et l'option Réservation extensible sélectionnée.
  • Ajoutez deux machines virtuelles, VM-K1 et VM-K2, avec des réservations de 2 Ghz chacune au pool de ressources enfant et tentez de les mettre sous tension.
  • VM-K1 peut réserver des ressources directement depuis RP-KID (possédant 2 Ghz).
  • Aucune ressource locale n'est disponible pour VM-K2, la machine virtuelle emprunte donc les ressources du pool de ressources parent, RP-MOM. RP-MOM possède 6 Ghz moins 1 Ghz (réservé par la machine virtuelle), moins 2 Ghz (réservés par RP-KID), ce qui laisse 3 Ghz non réservés. Avec les 3 Ghz disponibles, vous pouvez mettre sous tension la machine virtuelle 2 Ghz.
    Figure 3. Contrôle d'admission avec pools de ressources extensibles : Mise sous tension réussie

    Il s'agit du contrôle d'admission avec les pools de ressources extensibles et une mise sous tension réussie de machine virtuelle.

Envisagez maintenant un autre scénario avec VM-M1 et VM-M2.

  • Mettez sous tension deux machines virtuelles dans RP-MOM avec une réservation totale de 3 Ghz.
  • Vous pouvez toujours mettre sous tension VM-K1 dans RP-KID car 2 Ghz sont disponibles localement.
  • Lorsque vous tentez de mettre VM-K2 sous tension, RP-KID ne possède pas de capacité CPU non réservée ; il consulte donc son parent. RP-MOM possède uniquement 1 Ghz de capacité non réservée disponible (5 GHz de RP-MOM sont déjà utilisés, 3 Ghz réservés par les machines virtuelles locales et 2 Ghz réservés par RP-KID). Par conséquent, vous ne pouvez pas mettre VM-K2 sous tension, car cette machine virtuelle requiert une réservation de 2 Ghz.
    Figure 4. Contrôle d'admission avec pools de ressources extensibles : Mise sous tension empêchée

    Il s'agit du contrôle d'admission avec les pools de ressources extensibles et une mise sous tension de machine virtuelle empêchée.