Mixing Multiple Master Replication (MMR) con Linux-HA

Sono interessato all'utilizzo di MMR ( http://mysql-mmm.org/ ) per scopi di disponibilità elevata e di replica. Il problema è, sono anche interessato a utilizzare Linux-HA per altri servizi, come Apache. I due si sovrappongono quando si tratta di determinate cose, come lo scambio di interfacce IP virtuali ecc.

Qualcuno ha un'impostazione simile e ha alcune best practice / soluzioni per il problema sopra?

  • MySQL bilanciamento del carico
  • Esegui più istanze di MySQL sullo stesso server (con replica)?
  • Replica MySQL: Ottenere nuovamente il master in sincronia con lo slave
  • Quale formato binlog da utilizzare per MySQL Replication?
  • Come posso esportre i privilegi da MySQL e quindi importre su un nuovo server?
  • Replica di un modo da MSSQL2005 a MYSQL 5.x
  • Replica di ritardo master-slave MySQL
  • Aggiungi MySQL come risorsa al pacemaker
  • 7 Solutions collect form web for “Mixing Multiple Master Replication (MMR) con Linux-HA”

    Sono gli altri servizi sulle stesse macchine?

    In caso contrario, non si ha sovrapposizioni (Linux-HA su un insieme di macchine con un IP virtuale e MMR su un altro insieme di macchine)

    Se ci sono altri servizi, forse considerare la virtualizzazione o spostarli in altre macchine, in quanto ciò semplificherà la gestione dell'interface di networking (non è ansible get scontri tra i due methods di gestione virtuale IP).

    Basta fare in modo che i master virtualizzati siano in host separati, altrimenti un guasto della macchina host vi farà perdere tutte le istanze MySQL comunque!

    Utilizzo gli strumenti Linux HA per il più ansible e i componenti MySQL per il less ansible. Non mi fido della roba MySQL per quanto posso buttarlo.

    Sembra plausibile che si possano definire interfacce VIP separate per ciascuno dei due.

    Non sono riuscito a trovare riferimenti su configurazioni simili, per cui penso che dovrai lavorare e fare molti test.

    In genere, però, sono molto scettico di qualsiasi tecnologia di replica multi master. Penserei molto se potrei fare a less di un unico maestro in una configuration di failover.

    Linux-HA e MMR individualmente possono essere complicati per lavorare. Se la tua preoccupazione principale è l'interazione, il modo più semplice per limitarlo è l'hardware / il networking disparato. Se ciò non è ansible, la complessità per each casella aumenta. Quindi la migliore pratica è dividere i vostri indirizzi virtuali e l'indirizzamento del IP quanto più ansible in modo da poter concentrare la configuration di Linux-HA e MMR su un sottoinsieme di interfacce e può preoccuparsi di interferire tra di loro. Penserei anche duro se hai bisogno di replica master-master. Può essere molto complicato e la complessità è soggetta a fallimento.

    Può essere meglio servito con slave master o un servizio degradato in caso di guasto primario. Se hai ancora bisogno di master / master, puoi guardare i postgres (anche se le opzioni mmr sono numerose). Anch'io mi dispiace parlare, ma sarebbe rimasto se non fossi, ma nella mia esperienza se MMR è importnte e non può essere risolto in modo architettonico o con altri mezzi potresti voler guardare un database commerciale come Oracle o DB2, entrambi che implementano il MMR basato su log con archiviazione condivisa e sono molto affidabili.

    Funziona bene per noi.

    Tuttavia è fondamentale avere un VIP separato per servizio, anche se in teoria non è necessario, abbiamo trovato che funziona solo con i VIP separati e può essere un po 'strano senza.

    Abbiamo un cluster di produzione che potrebbe essere simile a quello che ti interessa:

    • MySQL MMM per mantenere in sincronia i database tra entrambi i server.
    • OCFS2 in cima a DRBD 0.8 in modalità multi-master per mantenere sincronizzati i file web e i file di configuration tra entrambi i server.
    • Keepalived su firewall ridondanti davanti al cluster web, che tiene traccia di quali server sono in su e distribuisce in modo uniforms le connessioni client tra di loro.

    E 'abbastanza semplice da implementare e continuare a funzionare, e fornisce performance eccellenti . Keepalived può essere un po 'fiddly perché non mette errori super userful in syslog circa configurazioni rotte, ma una volta che hai funzionato è rock solid. DRBD è la miglior soluzione non-SAN per la sincronizzazione di file system interi tra macchine e OCFS2 è (nei nostri test) il filesystem cluster di file open source migliori ed è anche molto facile da installare.

    L'unico vero caveat con questo è che se le connessioni di un utente vengono indirizzate a un server e poi vengono commutate all'altro server, perderanno i dati di session e stato di Apache / PHP (a less che non tutti siano memorizzati nel database) . Questo non è un grosso problema, però keepalived ha una modalità che assicurerà che gli stessi IP client si connettano sempre agli stessi server backend (supponendo che rimangano in su).

    Quale OS (Linux) sta utilizzando? normalmente quando devi impostare il cluster Mysql / Apache ho un sacco di tempo per il nostro client

    | SAN Box |

    | | Node1 Node2

    servizi in esecuzione

    VIP Mysql / Apache LVM / GFS / GFS2

    e suggerisco di seguire il collegamento al setup

    http://kbase.redhat.com/faq/docs/DOC-5648

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.