Comme vous le savez très probablement, si vous installez votre SQL Server sur une machine virtuelle et que vous ne réalisez aucune configuration spécifique ; ce dernier va utiliser l’ensemble des ressources disponibles sur la machine virtuelle en termes de vCPU et de RAM.
Mais si vous mutualisez votre machine virtuelle pour SQL Server et d’autres composants, il peut être pertinent de procéder à quelques réglages rapides pour limiter les ressources qui pourront être utilisées l’instance de base de données.
Pour ce faire, vous devrez disposer de SQL Management Studio et vous connecter à votre instance.
Effectuez un clic-droit sur le noeud principal correspondant à votre serveur SQL et choisissez Properties.
Puis dans la nouvelle fenêtre qui s’ouvre, nous allons pouvoir paramétrer l’utilisation des ressources pour la RAM et (v)CPU de votre SQL Server.
Dans la section Memory, vous pouvez ainsi choisir d’attribuer un volume maximum de mémoire au serveur SQL. Dans mon cas, la VM dispose de 8 Go de RAM, j’autorise l’utilisation jusqu’à 5 Go de RAM (5 x 1024 = 5120 Mo) soit pour l’instance SQL.
Dans la section Processors, vous allez pouvoir également pouvoir limiter le nombre de (v)CPU qui seront utilisés par l’instance SQL. Dans mon cas, ma VM dispose de 2 vCPU. J’ai toutefois opté pour une limitation à 1 vCPU afin de permettre aux autres outils sur le serveur d’avoir accès aux ressources CPU. Pour ce faire, vous devez décocher l’option Automatically set processor affinity mask for all processors puis dans le section juste en dessous sélectionner le nombre de processeur(s) à attribuer à SQL.
Validez les changements et redémarrer à minima le service MSSQLSERVER (ou bien l’ensemble de la machine virtuelle).
Bonjour,
Peut-on limiter le nombre de vCPU pour se conformer à la licence ?
Exemple : la machine fait 1 CPU de 8 coeurs et nous avons une licende de 2×2 coeurs.
Pourrions-nous donc limiter le SQLServer à 4 coeurs sur les 8, afin d’être en ordre de licences ?
Merci d’avances pour votre réponse,
Denis
Non tu ne peux pas faire ce type de configuration depuis cette section. Tu dois résoudre le problème directement au niveau du serveur. Si c’est une VM, tu peux facilement limiter le nombre de ressources que tu vas allouer à la VM qui héberge le SQL Server en choisissant 1, 2 ou 3 vCPU. Si tu es dans le cas d’un serveur physique, il faut regarder une autre solution… mais ça serait un peu surprenant – même si je comprend ta problématique de licence. D’un point de vue logique, ça serait aberrant, j’achète un serveur avec 8 CPU, je l’installe et je ne veux en utiliser que 4. N’hésite pas à me dire si tu trouve quelque-chose. Bonne chance.