IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

Solutions haute disponibilité


Sujet :

Administration système

  1. #1
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut Solutions haute disponibilité
    Bonjour,

    Pour une application web Java EE + 3 bases de données PostgresSql, nous avons actuellement:

    - 1 VM Apache
    - 1 VM Apache Tomcat
    - 1 VM PGSQL base 1
    - 1 VM PGSQL base 2
    - 1 VM PGSQL base 3

    Toute les VMs tourne sous Debian

    Si un service tombe, toute l'application tombe, dans le futur proche il faut que cette application tourne 24h/24h 7/7 365j/365j, bref il faut une solution de haut disponibilité à 99.999%.

    Je n'y connais pas encore grand chose dans le domaine, j'ai plusieurs questions:

    - Afin de réduire le nombre de VM, peut-on mettre Apache et Apache Tomcat sur le même serveur? Et aussi mettre les 3 bases SQL sur la même VM? Mais après niveau performances?
    - Quelles solutions pour avoir une haute disponibilité? Un cluster? Un load balancing?

    Comme je vois la chose, l'idéal serait d'avoir deux serveurs apache + tomcat et deux serveurs SQL, qu'ils se répartissent les charges entres les deux, et si un tombe (ou est en maintenance), il bascule auto sur l'autre serveur dispo et sans aucune coupure, c'est possible ça?

    Merci d'avance

  2. #2
    Invité
    Invité(e)
    Par défaut
    Salut,

    Est-ce que tes VM tounent toutes sur le même hardware physique? Si ce dernier tombe? Comment pourras-tu assurer une haute disponibilité?

  3. #3
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    Citation Envoyé par nesswaw Voir le message
    Bonjour,

    Pour une application web Java EE + 3 bases de données PostgresSql, nous avons actuellement:

    - 1 VM Apache
    - 1 VM Apache Tomcat
    - 1 VM PGSQL base 1
    - 1 VM PGSQL base 2
    - 1 VM PGSQL base 3

    Toute les VMs tourne sous Debian

    Si un service tombe, toute l'application tombe, dans le futur proche il faut que cette application tourne 24h/24h 7/7 365j/365j, bref il faut une solution de haut disponibilité à 99.999%.

    Je n'y connais pas encore grand chose dans le domaine, j'ai plusieurs questions:

    - Afin de réduire le nombre de VM, peut-on mettre Apache et Apache Tomcat sur le même serveur? Et aussi mettre les 3 bases SQL sur la même VM? Mais après niveau performances?
    - Quelles solutions pour avoir une haute disponibilité? Un cluster? Un load balancing?

    Comme je vois la chose, l'idéal serait d'avoir deux serveurs apache + tomcat et deux serveurs SQL, qu'ils se répartissent les charges entres les deux, et si un tombe (ou est en maintenance), il bascule auto sur l'autre serveur dispo et sans aucune coupure, c'est possible ça?

    Merci d'avance
    cas typique que je monte avec ce genre de besoin
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    [hote_A]----heartbeat-----[hote_B]
          |   \          /     |
          |     \      /       |
       [baie de disque avec les VM]
    les VM doivent avoir 2 nics
    1 pour son accès légitime.
    1 pour son propre heartbeat.

    coté bases de données enfin, il faut bien sur que ce soit des bases répliquées 2 à 2
    exemple

    base PSQL 3 de la VM3a sur host_A doit être en réplication avec PSQL de la VM3b sur host_B

    et même perso je ferais un raid 1 de la baie sur une seconde et tous les réseau physiques de HOSTA et HOSTB en bounding

    ==========================================
    Je n'y connais pas encore grand chose dans le domaine, j'ai plusieurs questions:

    - Afin de réduire le nombre de VM, peut-on mettre Apache et Apache Tomcat sur le même serveur?
    oui ça complexifie un peu l'installation mais c'est raisonnable
    Et aussi mettre les 3 bases SQL sur la même VM? Mais après niveau performances?
    selon le volume de données et le degré d'urgence des accès... oui pour du web local intranet, non dans tous les autres cas je dirais....
    - Quelles solutions pour avoir une haute disponibilité? Un cluster? Un load balancing?
    un cluster pour ça...aucun interet...
    du load balancing pour les carte réseau du serveur hote oui si tu as le matériel necessaire fais le, juste un bounding.
    dans ton cas de haute disponibilité le plus important et le heartbeat avec un second serveur identique et des liens croisés vers une baie de disque (partitions des VM ; 1 par partition) bien sur chaque disque doit au minimum être en raid 1 hardware)
    Comme je vois la chose, l'idéal serait d'avoir deux serveurs apache + tomcat et deux serveurs SQL, qu'ils se répartissent les charges entres les deux, et si un tombe (ou est en maintenance), il bascule auto sur l'autre serveur dispo et sans aucune coupure, c'est possible ça?
    c'est justement ça la haute-disponibilité avec une tolérance de panne de 50%
    après tu peux ajouter des couches comme la baie externe + les raids disques etc...etc...
    redonder les réseaux etc...etc.... et aller jusqu'à de la tolérance aux panne de 80 à 90% sur la structure globale. mais plus tu vises haut plus ca coute cher à l'achat mais aussi et surtout en supervision, support, et temps pris sur le boulot de l'admin.... mais bon ça c'est un autre débat....

  4. #4
    Membre habitué
    Profil pro
    Informaticien
    Inscrit en
    Juillet 2007
    Messages
    344
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Juillet 2007
    Messages : 344
    Points : 127
    Points
    127
    Par défaut
    Bonjour,

    @Mygale1978: Je m'occupe pas trop de ça, mais je crois que oui, nous avons 4 ESX qui se partagent les VM, si un EXS tombe, les VM sont automatiquement migrer à chaud sur un autre ESX, on peut avoir 2 ESX max en panne je crois.

    @frp31:

    Merci pour la réponse complète, mais je n'ai pas tout compris

    Citation Envoyé par frp31 Voir le message
    cas typique que je monte avec ce genre de besoin
    les VM doivent avoir 2 nics
    1 pour son accès légitime.
    1 pour son propre heartbeat.
    C'est quoi un heartbeat?

    Citation Envoyé par frp31 Voir le message
    coté bases de données enfin, il faut bien sur que ce soit des bases répliquées 2 à 2
    exemple

    base PSQL 3 de la VM3a sur host_A doit être en réplication avec PSQL de la VM3b sur host_B

    et même perso je ferais un raid 1 de la baie sur une seconde et tous les réseau physiques de HOSTA et HOSTB en bounding
    Pour faire de la réplication, comment cela se passe? C'est inclut dans PGSQL? Il faut un programme à coter?

    En bounding? Qu'est-ce que c'est?


    Citation Envoyé par frp31 Voir le message
    selon le volume de données et le degré d'urgence des accès... oui pour du web local intranet, non dans tous les autres cas je dirais....
    C'est pour une app interne à l'entreprise

    Citation Envoyé par frp31 Voir le message
    un cluster pour ça...aucun interet...
    du load balancing pour les carte réseau du serveur hote oui si tu as le matériel necessaire fais le, juste un bounding.
    dans ton cas de haute disponibilité le plus important et le heartbeat avec un second serveur identique et des liens croisés vers une baie de disque (partitions des VM ; 1 par partition) bien sur chaque disque doit au minimum être en raid 1 hardware)
    Pour faire du load balancing, il faut un serveur frontal qui répartie les charges? Si ce serveur tombe, que ce passe-t-il?


    Citation Envoyé par frp31 Voir le message
    c'est justement ça la haute-disponibilité avec une tolérance de panne de 50%
    après tu peux ajouter des couches comme la baie externe + les raids disques etc...etc...
    redonder les réseaux etc...etc.... et aller jusqu'à de la tolérance aux panne de 80 à 90% sur la structure globale. mais plus tu vises haut plus ca coute cher à l'achat mais aussi et surtout en supervision, support, et temps pris sur le boulot de l'admin.... mais bon ça c'est un autre débat....
    Niveau hardware je pense que c'est bon, c'est plutôt niveau VM qui me fais soucis, le but serais d'avoir deux serveurs SQL/apache séparé pour que si un tombe en panne/défaillance/plantage, ou en maintenance, que le 2ème prennent aussitôt le relais sans coupure.

    Merci

  5. #5
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 431
    Points : 43 057
    Points
    43 057
    Par défaut Heartbeat
    Heartbeat se traduit par prise de pouls. les 2 machines s'écoutent pour voir si elles sont toujours opérationnels soit via le LAN soit par liaison sérielle. Si le poste 2 repère une panne du poste 1, elle prend son IP et devient le poste maitre, les dernières versions doivent permettre plus de machines.

    Tu peux coupler aussi avec DRBD, en gros s'est du RAID 1 au niveau bloc entre 2 machines via le réseau, c'est pas de la réplication mais de ma synchro au niveau bloc, en dessous du filesystem
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  6. #6
    Expert éminent sénior Avatar de frp31
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2006
    Messages
    5 196
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5 196
    Points : 12 264
    Points
    12 264
    Par défaut
    Citation Envoyé par nesswaw Voir le message
    Bonjour,


    Pour faire de la réplication, comment cela se passe? C'est inclut dans PGSQL? Il faut un programme à coter?

    En bounding? Qu'est-ce que c'est?
    le bounding ca cree une carte reseau virtuelle qui repartie la charge sur 2 carte réseau réelles

    exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
     
    /etc/sysconfig/network-scripts/ifcfg-eth0
     
    DEVICE=eth0
    BOOTPROTO=none
    ONBOOT=yes
    MASTER=bond0
    SLAVE=yes
    USERCTL=no
     
    /etc/sysconfig/network-scripts/ifcfg-eth1
     
    DEVICE=eth1
    BOOTPROTO=none
    ONBOOT=yes
    MASTER=bond0
    SLAVE=yes
    USERCTL=no
     
    /etc/sysconfig/network-scripts/ifcfg-bond0
     
    DEVICE=bond0
    BOOTPROTO=none
    ONBOOT=yes
    IPADDR=172.20.50.100
    NETMASK=255.255.0.0
    BROADCAST=172.20.255.255
    GATEWAY=172.20.50.1
    USERCTL=no
    BONDING_OPTS="mode=1 miimon=100"
    tu vois que l'ip est sur le bond0 et pas sur eth1 ni eth0

    pour la replication c'est un paramatrage interne au
    SGBD


    Niveau hardware je pense que c'est bon, c'est plutôt niveau VM qui me fais soucis, le but serais d'avoir deux serveurs SQL/apache séparé pour que si un tombe en panne/défaillance/plantage, ou en maintenance, que le 2ème prennent aussitôt le relais sans coupure.

    Merci
    oui c'est ce qu'on appelle la tolérance aux panne, ou la redondance pour faire plus simple

    les elements presentés jusque là vont dans ce sens

Discussions similaires

  1. Réponses: 2
    Dernier message: 07/06/2012, 11h01
  2. Réponses: 0
    Dernier message: 02/05/2010, 23h19
  3. Réponses: 0
    Dernier message: 27/05/2009, 00h53
  4. Haute Disponibilité
    Par ovh dans le forum Réseau
    Réponses: 12
    Dernier message: 07/09/2003, 20h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo