Oracle
 sql >> Base de données >  >> RDS >> Oracle

Redondance N+1 et consolidation des serveurs

Dans un article de blog précédent, j'ai parlé de la conception de vos implémentations RAC avec la redondance N+1. Cela garantit que la perte d'un nœud ne submergera pas les nœuds restants en cas de défaillance d'un nœud. Aujourd'hui, je vais discuter de l'impact de la consolidation des serveurs, en particulier des cœurs de processeur, et de ses impacts potentiels N+1.

L'un des principaux systèmes sur lesquels je travaille aujourd'hui est un cluster Oracle RAC à quatre nœuds. Chaque nœud a 4 cœurs. J'ai une licence pour les 16 cœurs (4 cœurs/nœud * 4 nœuds =16 cœurs au total) dans mon environnement. J'ai conçu ce système avec une redondance N+1. Si je perds un nœud et que je perds 4 cœurs, je suis toujours bon car ma charge de travail ne nécessite que 12 cœurs pour maintenir des niveaux de performances normaux et acceptables.

Lorsque ce système a été initialement conçu, les serveurs à 4 cœurs étaient monnaie courante. L'environnement d'aujourd'hui est différent et il devient de plus en plus difficile de trouver des serveurs à 4 cœurs. Ils existent toujours, mais les fournisseurs de matériel poussent les systèmes avec un plus grand nombre de cœurs.

Lors d'une conversation récente avec mon administrateur système, il souhaitait commander des systèmes à 6 cœurs pour remplacer nos serveurs vieux de 3 ans. Eh bien, nous ne pouvons pas simplement faire cela. Ma licence Oracle est pour 16 cœurs. Je pourrais déployer trois systèmes à 6 cœurs, mais j'aurais alors un total de 18 cœurs dans le cluster et j'aurais besoin de 2 cœurs supplémentaires de licences Oracle. Si je déployais deux systèmes à 6 cœurs, j'aurais un total de 12 cœurs et 4 cœurs de licences inutilisées.

J'ai également informé le SysAdmin de notre conception N+1. L'impact du passage à des systèmes à 6 cœurs peut avoir des impacts majeurs sur la conception N+1. N'oubliez pas que j'ai dit plus tôt que nos demandes de charge de travail nécessitent 12 cœurs pour maintenir des niveaux opérationnels normaux. Si nous déployons des machines à 6 cœurs, alors deux d'entre elles répondent à nos exigences et un autre nœud, le "+1", serait nécessaire pour nous assurer que nous pouvons perdre un nœud sans impact majeur sur les performances. Nous aurions besoin de déployer trois machines à 6 cœurs pour maintenir notre objectif de conception N+1 intact. Mais cela signifie que nous devons augmenter le nombre de nos licences, comme je l'ai dit plus tôt.

À ce stade, mon administrateur système a pensé qu'il avait une bonne idée ... nous pourrions acheter deux serveurs à 8 cœurs. Cela fait toujours 16 cœurs au total et exactement ce pour quoi nous sommes autorisés aujourd'hui. Pas d'augmentation des frais de licence. Mais si nous perdons un nœud, nous descendons à 8 cœurs au total en fonctionnement, ce qui est moins que ce dont j'ai besoin. Cela soulève un très bon point…

À l'heure actuelle, il n'y a pas de réponse facile. Nous pouvons toujours acheter des serveurs à 4 cœurs, c'est pourquoi nous remplacerons les actuels par l'année prochaine. Mais il viendra un jour où les serveurs à 4 cœurs seront introuvables. Nous devrons avoir un plan en place d'ici là, en gardant à l'esprit nos objectifs de conception N+1.

Si seulement je pouvais partitionner en dur nos serveurs Linux et laisser les cœurs inactifs tout en respectant nos accords de licence Oracle.