Guide de planification du déploiement de Sun Java Enterprise System 2005Q4

Stratégies de disponibilité

Les stratégies de disponibilité possibles pour les déploiements Java Enterprise System sont les suivantes :

Les sections ci-après décrivent des exemples de solutions de disponibilité fournissant divers niveaux d'équilibrage de charge, de basculement et de réplication des services.

Système à serveur unique

Toutes les ressources de traitement d'un service sont placées sur un seul serveur. Si ce dernier tombe en panne, le service ne peut plus fonctionner.

Figure 5–2 Système à serveur unique

Serveur unique avec 10 CPU répondant aux exigences de performances.

Sun fournit des serveurs haut de gamme permettant de bénéficier des avantages suivants :

Un serveur haut de gamme coûte généralement plus cher qu'un système multiserveur comparable. Toutefois, il se révèle plus économique en termes d'administration, de contrôle et d'hébergement. Les systèmes multiserveurs offrent une plus grande souplesse en termes d'équilibrage de charge, de basculement et de suppression de points de panne uniques.

Systèmes à redondance horizontale

Les serveurs redondants parallèles offrant des fonctions d'équilibrage de charge et de basculement, ils permettent d'améliorer la disponibilité de plusieurs façons. Le schéma ci-dessous montre deux serveurs répliqués constituant un système à basculement N+1. Dans ce type de système, un serveur supplémentaire est destiné à assumer 100 % de la charge en cas de panne de l'autre serveur.

Figure 5–3 Système à basculement N+1 avec deux serveurs

Deux serveurs répliqués dotés chacun de 10 CPU afin de répondre aux exigences de performances (10 CPU).

La puissance de traitement de chaque serveur dans des Systèmes à redondance horizontale (voir ci-dessus) est identique. Un serveur peut à lui seul satisfaire les exigences de performances. L'autre serveur offre exactement les mêmes performances lorsqu'il est utilisé en tant que serveur de rechange.

Dans ce type de conception, 100% des performances sont assurées en cas de basculement. En revanche, les investissements matériels élevés sans amélioration des performances (puisque l'un des serveurs est utilisé en cas de basculement uniquement) représentent un inconvénient majeur.

Le schéma suivant illustre un système mettant en œuvre l'équilibrage de charge et le basculement, et répartissant les performances entre deux serveurs.

Figure 5–4 Équilibrage de charge et basculement entre deux serveurs

Deux serveurs dotés chacun de six CPU afin de répondre aux exigences de performances (10 CPU).

Dans le système représenté à la section Systèmes à redondance horizontale, si un serveur tombe en panne, tous les services restent disponibles, mais pas à 100 %. En effet, le second serveur comporte six CPU qui permettent de prendre en charge 60 % de la charge totale (10 CPU).

Cette conception offre l'avantage d'autoriser une capacité latente (deux CPU) lorsque les deux serveurs sont disponibles.

Le schéma ci-dessous illustre une répartition des performances et de l'équilibrage de charge entre plusieurs serveurs.

Figure 5–5 Répartition de la charge entre n serveurs

Cinq serveurs dotés chacun de deux CPU afin de répondre aux exigences de performances (10 CPU).

La conception illustrée à la section Systèmes à redondance horizontale comportant cinq serveurs, si l'un d'eux tombe en panne, les autres fournissent un total de huit CPU, soit 80 % des exigences de performances (10 CPU). Si vous ajoutez un serveur doté de deux CPU, vous obtenez une conception N+1. En cas de panne de l'un des serveurs, 100 % des performances sont maintenues grâce aux autres serveurs.

Cette solution offre les avantages suivants :

Toutefois, plus le nombre de serveurs augmente, plus les coûts d'administration et de maintenance sont élevés, sans compter les frais d'hébergement des serveurs dans un centre de données. De plus, il arrive un moment où l'ajout de serveurs finit par entraîner plus d'inconvénients que d'avantages.

Logiciel Sun Cluster

Dans les situations exigeant un degré élevé de disponibilité (quatre ou cinq neuf), vous pouvez envisager d'intégrer le logiciel Sun Cluster dans votre conception de déploiement. Un cluster associe des serveurs redondants à des ressources de stockage et d'autres ressources réseau. Les serveurs d'un cluster sont en communication permanente les uns avec les autres. En cas de mise hors ligne d'un serveur, les autres dispositifs du cluster l'isolent et font basculer les applications ou les données du nœud en panne vers un autre nœud. Le basculement s'effectue rapidement sans que les utilisateurs du système aient à subir une longue interruption des services.

Sun Cluster exige du matériel supplémentaire spécialisé et des connaissances particulières en matière de configuration, d'administration et de maintenance.