sql >> Database teknologi >  >> NoSQL >> MongoDB

Kører MongoDB med Ops Manager

Databaseadministration går ud over at sikre problemfri drift til at have historisk ydeevne, der vil tilbyde nogle basislinjer for kapacitetsplanlægning, opnå realtidsydelse for belastningsspidser, automatisere en stor klynge af noder og have en backup-plan for database.

Der er så mange automatiseringsværktøjer, der kan udføre nogle af disse opgaver, såsom Ansible, Salt og Puppet, men MongoDB Ops Manager tilbyder mere ud over deres evne. Desuden skal man vide, hvad databasetilstanden er på et givet tidspunkt, og hvilke opdateringer der skal laves, så systemet er opdateret.

Hvad er MongoDB Ops Manager?

Dette er en administrationsapplikation til MongoDB, der er oprettet af MongoDB-databaseingeniørerne for at gøre det nemmere at og fremskynde processerne med implementering, overvågning, sikkerhedskopiering og skalering. Den er kun tilgængelig med MongoDB Enterprise Advanced-licensen.

Databaseforbruget stiger med tiden, efterhånden som flere brugere bruger det, og sårbarheden af ​​de involverede data stiger også. En database kan være udsat for risici, såsom netværksbrumming og hacking, og dermed påvirke en forretningsdrift. Databasestyringsgruppen er nødt til at lægge mærke til de skiftende tal for at holde databasen i de nyeste patches og serveringsmuligheder. MongoDB Ops Manager giver denne udvidelsesfunktioner til en forbedret databaseydelse på følgende måder:

  1. Datatabsbeskyttelse
  2. Easy Tasks Automation
  3. Oplysninger om forespørgselspriser
  4. GUI's overordnede præstationssynlighed
  5. Elastisk implementeringsstyring
  6. Integration med cloud-applikationer

Generelt hjælper Ops Manager med automatisering, overvågning og sikkerhedskopiering.

Ops Manager Automation-funktioner

Det kan blive kedeligt at administrere en stor klyngeimplementering på egen hånd, især når du udfører de samme instruktioner over tid, og (afhængigt af efterspørgslen) vil du enten skalere op eller ned. Nogle af disse opgaver kan kræve, at du hyrer databasespecialister til at gøre det. Ops Manager GUI tilbyder nogle af disse handlinger med blot et par klik. Du kan bruge den til at tilføje eller fjerne noder til din klynge i henhold til efterspørgsel, og MongoDB rebalancerer automatisk i forhold til den nye topologi med minimal eller ingen nedetid.

Nogle af de handlinger, du udførte manuelt (såsom implementering af en ny klynge, opgradering af noder, tilføjelse af replikasætmedlemmer og shards) er orkestreret og automatiseret af Ops Manager. Næste gang du udfører proceduren, skal du blot bruge et klik på en knap, og alle opgaverne vil blive udført. Der er også en Ops Manager RESTful API, der gør det muligt for dig at integrere programmatisk administration.

Med denne type automatisering kan du reducere dine driftsomkostninger og overhead.

MongoDG-overvågning med Ops Manager

Overvågning er en vigtig funktion for ethvert databasesystem med hensyn til ressourceallokering og meddelelser om databasetilstand. Uden nogen idé om, hvordan din database præsterer, er chancerne for at ramme et teknisk problem høje og følgelig katastrofale. MongoDB Ops Manager har endda en komplet præstationssynlighed i en grafisk repræsentation, giver rapportering i realtid og en alarmfunktion på vigtige præstationsindikatorer såsom hardwareressourcer.

I tilfælde af kapacitetsplanlægning tilbyder Ops Manager en historisk præstationsoversigt, hvorfra den operationelle baseline kan udledes.

Overvågningen opnås ved at aktivere den i den samme MongoDB-vært. Overvågning indsamler data fra alle noder i implementeringen, og en agent sender disse statistikker til Ops Manager, som opretter en rapport om implementeringsstatus i realtid.

Fra rapporterne kan du nemt se langsomme og hurtige forespørgsler og finde ud af, hvordan du kan optimere dem til gennemsnitlig ydeevne.

Ops Manager leverer brugerdefinerede dashboards og diagrammer til sporing af mange databaser på nøglesundhedsmålinger, der inkluderer CPU-udnyttelse og hukommelse.

Aktivering af underretninger i Ops Manager er vigtigt, da du gerne vil vide, hvilke nøglemetrics fra databasen, der er uden for rækkevidde. Deres konfiguration varierer med hensyn til parametre, der påvirker individuelle værter, agenter, replikasæt og sikkerhedskopier. Ops Manager tilbyder 4 store rapporteringsstrategier for at holde dig overhead over eventuelle potentielle tekniske problemer:Incident Management-system, SMS, e-mail eller Slack.

Du kan også bruge Ops Manager RESTful API og feed dataene til platforme såsom APM for at se sundhedsmålingerne.

MongoDB-sikkerhedskopier med Ops Manager

Datatab er et af de mest smertefulde tilbageslag, der kan påvirke driften af ​​enhver virksomhed. Men med Ops Manager er data beskyttet. Databasenedetid kan forekomme når som helst, for eksempel på grund af strømafbrydelser eller netværksafbrydelser. Lucky er den organisation, der bruger MongoDB Ops Manager, da den løbende vedligeholder sikkerhedskopier enten i en planlagt snapshot-tilstand eller en punkt-i-tidsgendannelse. Hvis MongoDB-implementeringen mislykkes på et tidspunkt, vil den seneste sikkerhedskopiering kun være få øjeblikke efter sidste databasestatus før fejl og dermed reduceret datatab.

Værktøjet tilbyder et vindue til at udføre forespørgsler til sikkerhedskopier direkte for at finde det korrekte punkt for en gendannelse. Desuden kan du bruge dette til at forstå, hvordan datastrukturer har ændret sig med tiden.

Ops Manager-sikkerhedskopien fungerer kun med en klynge eller replikasæt, ellers skal du for en selvstændig mongod-proces konvertere den til et enkelt-medlems replikasæt.

Sådan fungerer sikkerhedskopiering og gendannelse med Ops Manager

Efter aktivering af sikkerhedskopiering i MongoDB-implementering udfører sikkerhedskopien en indledende synkronisering af installationens data på samme måde, som den kunne være at skabe et nyt usynligt medlem af et replikasæt. En agent sender den indledende synkronisering og oplog data over HTTPS tilbage til Ops Manager. Under backup-processen tilbageholder databasen alle gennemløbsoperationer, men de registreres i oploggen, og derfor sendes den også for at få den sidste opdatering.

Sikkerhedskopien vil derefter tilpasse hvert replikasæts oplog for at opretholde en selvstændig database på disken (hoveddatabase), som vedligeholdes af Ops Manager for hvert sikkerhedskopieret replikasæt. Denne hoveddatabase forbliver i overensstemmelse med den oprindelige primære til den sidste oplog, der blev leveret via agenten.

For en splittet klynge kan en gendannelse udføres fra kontrolpunkter mellem snapshots, mens der for et replikasæt kan foretages en gendannelse fra udvalgte tidspunkter.

For en snapshotgendannelse læser Ops Manager direkte fra snapshot-lageret.

Når du bruger point-in-time eller kontrolpunkt, gendanner Ops-manageren et fuldt snapshot fra snapshot-lageret og anvender derefter de lagrede oplogs til et specificeret punkt. Ops-manageren leverer øjebliksbilledet og oplog-opdateringen ved hjælp af en HTTPS-mekanisme.

Hvor meget oplog du beholder pr. sikkerhedskopi afgør, hvor meget tid et kontrolpunkt og gendannelse kan dække.

Integration med cloud-applikationer

Ikke alle MongoDB-implementeringer køres fra den samme klyngevært. Der er så mange cloud-værter (såsom Red Hat OpenShift, Kubernates og Pivotal Cloud Foundry), der gør integrationen kompliceret med andre værktøjer. Ops Manager kan dog integreres med disse forskellige cloud-applikationsimplementeringsplatforme, hvilket gør det konsistent og elegant at køre og implementere arbejdsbelastninger, uanset hvor de skal være, hvilket sikrer samme databasekonfiguration i forskellige miljøer og kontrollerer dem fra en enkelt platform.

Konklusion

At administrere en stor MongoDB-klyngeimplementering er ikke en let opgave. Ops Manager er et automatiseringsværktøj, der tilbyder en visualiseret databasetilstand og et advarselssystem; nøglefunktioner i at give information om databasens sundhed. Det kræver dog en Enterprise License, som for nogle organisationer kan være uden for budgettet.

ClusterControl giver et alternativ, der tilbyder mange af de samme funktioner og funktioner som Ops Manager, men til mere end halvdelen af ​​prisen. Du kan lære mere om, hvad ClusterControl gør for MongoDB her.


  1. findOne Subdocument in Mongoose

  2. Hvad er den mest tidseffektive måde at serialisere/deserialisere en datatabel til/fra Redis?

  3. Hvordan søger jeg efter et objekt ved dets ObjectId i mongo-konsollen?

  4. Opretter forbindelse til ekstern redis-server