MongoMultiMaster

Skjermbilde programvare:
MongoMultiMaster
Prog.varedetaljer:
Versjon: 0.0.4
Last opp dato: 20 Feb 15
Utvikler: Rick Copeland
Lisens: Gratis
Popularitet: 85

Rating: 3.0/5 (Total Votes: 2)

MongoMultiMaster er en Python verktøy som lar deg sette opp multi-mester replikering med MongoDB. & Nbsp; Det er ettertrykkelig ikke støttes av 10gen, skaperne av MongoDB.
Det fungerer ved å spørre den oplog på en replikasett og bruke sin virksomhet til en annen replikasett. Den støtter toveis replikering ved å merke hvert dokument replikert med sin kilde.
Installere
Å installere, bruke pip:
PIP installere MongoMultiMaster
MongoDB Setup
MMM trenger tilgang til replikasettets oplog for hver master. Dette betyr at det ikke fungerer med servere som er konfigurert som frittstående servere. Å konvertere en frittstående server til en Singleton replikasett, først må du fortelle det om settet det er i ved lansering tid:
& Nbsp; mongod --replSet foo
Da, for å starte replikasett, må du utføre følgende på mongo shell:
> Rs.initiate ()
MongoMultiMaster Replication Setup
Når du har opprettet den replikasett master, må du fortelle MMM hvor serverne er. Dette gjøres gjennom en YAML config fil. Et eksempel config fil med to servere er inkludert nedenfor:
server_a:
& Nbsp; id: '2c88ae84-7cb9-40f7-835d-c05e981f564d'
& Nbsp; uri: 'mongodb: // localhost: 27019'
server_b:
& Nbsp; id: '0d9c284b-b47c-40b5-932c-547b8685edd0'
& Nbsp; uri: 'mongodb: // localhost: 27017'
Først, la oss kontrollere at det er ingen konfigurasjon, og at vi kan koble til alle serverne i konfigurasjonsfilen:
 mmm -c test.yml klar-config
Om å fjerne config på servere: ['server_a', 'server_b'], er du sikker? (YN) y
Klar config for server_a
Klar config for server_b
& Nbsp; mmm -c test.yml dumpe-config
=== Server Config ===
server_a (2c88ae84-7cb9-40f7-835d-c05e981f564d) => mongodb: // localhost: 27019
server_b (0d9c284b-b47c-40b5-932c-547b8685edd0) => mongodb: // localhost: 27017
=== Server_a Replication Config
=== Server_b Replication Config
Deretter vil vi sette opp to replikert samlinger:
& Nbsp; mmm -c test.yml replikere --src = server_a / test.foo --dst = server_b / test.foo
& Nbsp; mmm -c test.yml replikere --src = server_a / test.bar --dst = server_b / test.bar
Og bekrefte at de er riktig konfigurert:
 mmm -c test.yml dump-config
=== Server Config ===
server_a (2c88ae84-7cb9-40f7-835d-c05e981f564d) => mongodb: // localhost: 27019
server_b (0d9c284b-b47c-40b5-932c-547b8685edd0) => mongodb: // localhost: 27017
=== Server_a Replication Config
=== Server_b Replication Config
& Nbsp; - test.foo <= server_a / test.foo
& Nbsp; - test.bar <= server_a / test.bar
Nå, la oss gjøre det replikering toveis:
& Nbsp; mmm -c test.yml replikere --src = server_b / test.foo --dst = server_a / test.foo
& Nbsp; mmm -c test.yml replikere --src = server_b / test.bar --dst = server_a / test.bar
Og kontrollere at det er riktig ...
 mmm -c test.yml dump-config
=== Server Config ===
server_a (2c88ae84-7cb9-40f7-835d-c05e981f564d) => mongodb: // localhost: 27019
server_b (0d9c284b-b47c-40b5-932c-547b8685edd0) => mongodb: // localhost: 27017
=== Server_a Replication Config
& Nbsp; - test.foo <= server_b / test.foo
& Nbsp; - test.bar <= server_b / test.bar
=== Server_b Replication Config
& Nbsp; - test.foo <= server_a / test.foo
& Nbsp; - test.bar <= server_a / test.bar
Nå kan vi kjøre portreplikator:
& Nbsp; mmm -c test.yml løp
Ting å vurdere
- Replication kan falle bak hvis du skriver mye. Dette er ikke behandlet i det hele tatt.
- Replication begynner på den tiden da mmm løpe først ble kalt. Du bør være i stand til å stoppe / starte mmm og ha det fortsette der den slapp.
- Konflikter mellom mestere ikke håndteres; hvis du skriver til det samme dokumentet på begge hodene ofte, kan du komme ut av sync.
- Replication setter inn en bokføring felt i hvert dokument for å betegne serveren UUID som sist skrev dokumentet. Dette utvider størrelsen på hvert dokument litt.
Det er sannsynligvis skarpe kanter, andre tapte bugs, og diverse ekle ting som venter på deg hvis du bruker MMM i et produksjonssystem uten grundig testing. . Men hvis du liker å kjøre med saks og ellers leve farlig, gjerne prøve det ut

Krav :

  • Python

Lignende programvare

Andromeda
Andromeda

2 Jun 15

PgAdmin III
PgAdmin III

17 Feb 15

PythonReports
PythonReports

11 May 15

CegoAdm
CegoAdm

20 Feb 15

Annen programvare fra utvikleren Rick Copeland

Zarkov
Zarkov

14 Apr 15

Ming
Ming

12 May 15

Kommentarer til MongoMultiMaster

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!