Kernen i ClusterControl er dens automatisering, ligesom det sikrer, at dine data er sikkert sikkerhedskopieret og klar til gendannelse, når noget går galt. At have en effektiv backup-strategi og katastrofegendannelsesplan er nøglen til succes for enhver applikation eller ethvert miljø.
I vores seneste udgivelse, ClusterControl 1.5, har vi introduceret en række forbedringer til sikkerhedskopiering af MySQL og MariaDB-baserede systemer.
En af de vigtigste forbedringer er muligheden for at sikkerhedskopiere fra ClusterControl til den cloud-udbyder, du vælger. Cloud-udbydere som Google Cloud Services og Amazon S3 tilbyder hver især praktisk talt ubegrænset lagerplads, hvilket reducerer lokale pladsbehov. Dette giver dig mulighed for at beholde dine sikkerhedskopifiler i længere tid, så længe du ønsker og ikke have bekymringer omkring lokal diskplads.
Lad os udforske alle de spændende nye sikkerhedskopieringsfunktioner til ClusterControl 1.5...
Redesign af guiden sikkerhedskopiering/gendannelse
Først og fremmest vil du bemærke, at sikkerhedskopierings- og gendannelsesguider er blevet fornyet for bedre at forbedre brugeroplevelsen. Den indlæses nu som en sidemenu til højre på skærmen:
Sikkerhedskopieringslisten får også en mindre justering, hvor sikkerhedskopieringsdetaljer vises, når du klikker på den bestemte sikkerhedskopi:
Du vil være i stand til at se backup-placering og hvilke databaser der er inde i backup. Der er også muligheder for at gendanne sikkerhedskopien eller uploade den til skyen.
PITR-kompatibel sikkerhedskopiering
ClusterControl udfører standard mysqldump backup med separate skema og data dumps. Dette gør det nemt at gendanne delvise sikkerhedskopier. Det bryder dog konsistensen af sikkerhedskopien (skema og data dumpes i to separate sessioner), og det kan derfor ikke bruges til at klargøre en slave eller gendannelse på tidspunkter.
En mysqldump PITR-kompatibel backup indeholder én enkelt dumpfil med GTID-info, binlog-fil og position. Således vil kun databasenoden, der producerer binær log, have muligheden "PITR-kompatibel" tilgængelig, som fremhævet på skærmbilledet nedenfor:
Når PITR-kompatibel valgmulighed slås til/fra, er database- og tabelfelterne nedtonede, da ClusterControl altid vil udføre sikkerhedskopieringen mod alle databaser, hændelser, triggere og rutiner på mål-MySQL-serveren.
Følgende linjer vises i de første ~50 linjer i den færdige dumpfil:
$ head -50 mysqldump_2017-11-07_072250_complete.sql
...
-- GTID state at the beginning of the backup
--
SET @@GLOBAL.GTID_PURGED='20dc5247-4a98-ee18-73af-5c79373388ee:1-1681';
--
-- Position to start replication or point-in-time recovery from
--
CHANGE MASTER TO MASTER_LOG_FILE='binlog.000001', MASTER_LOG_POS=2457790;
...
Oplysningerne kan bruges til at bygge slaver fra backup eller udføre punkt-i-tidsgendannelse sammen med binære logfiler, hvor du kan starte gendannelsen fra MASTER_LOG_FILE og MASTER_LOG_POS rapporteret i dumpfilen ved hjælp af "mysqlbinlog"-værktøjet. Bemærk, at binære logfiler ikke er sikkerhedskopieret af ClusterControl.
Byg slaver fra backup En anden funktion er muligheden for at bygge en slave direkte fra en PITR-kompatibel backup i stedet for at gøre det fra en valgt master. Dette er en stor fordel, da det aflaster masterserveren. Denne mulighed kan bruges med MySQL Replication eller Galera Cluster. En eksisterende backup kan bruges til at genopbygge en eksisterende replikeringsslave eller tilføje en ny replikeringsslave under iscenesættelsesfasen, som vist på følgende skærmbillede:Når iscenesættelsen er fuldført, vil slaven oprette forbindelse til den valgte master og begynde at indhente det. Tidligere udførte ClusterControl en streaming backup direkte fra den valgte master ved hjælp af Percona Xtrabackup. Dette kan påvirke masterens ydeevne, når et stort datasæt skaleres ud, på trods af at operationen ikke er blokerende på masteren. Med den nye mulighed, hvis sikkerhedskopien er gemt på ClusterControl, vil kun disse værter (ClusterControl + slaven) være optaget, når dataene iscenesættes på slaven.
Sikkerhedskopi til Cloud
Sikkerhedskopier kan nu uploades automatisk i skyen. Dette kræver, at der installeres et ClusterControl-modul, kaldet clustercontrol-cloud (Cloud integrationsmodul) og clustercontrol-clud (Cloud download/upload CLI), som er tilgængelige i v1.5 og nyere. Opgraderingsinstruktionerne er inkluderet i disse pakker, og de kommer uden nogen ekstra konfiguration. I øjeblikket er de understøttede cloudplatforme Amazon Web Services og Google Cloud Platform. Cloud-legitimationsoplysninger konfigureres under ClusterControl -> Indstillinger -> Integrationer -> Cloud-udbydere.
Når du opretter eller planlægger en sikkerhedskopi, bør du se følgende yderligere muligheder, når "Upload sikkerhedskopi til skyen" er slået til/fra:
Funktionen gør det muligt at uploade én gang eller planlægge sikkerhedskopier, der skal uploades efter færdiggørelse (Amazon S3 eller Google Cloud Storage). Du kan derefter downloade og gendanne sikkerhedskopierne efter behov.
Tilpasset komprimering til mysqldump
Denne funktion blev faktisk først introduceret med ClusterControl v1.4.2 efter dens udgivelse. Vi tilføjede et backup-komprimeringsniveau baseret på gzip. Tidligere brugte ClusterControl standard backup-komprimering (niveau 6), hvis backup-destinationen var på controller-noden. Den laveste komprimering (niveau 1 - hurtigst, mindre komprimering) blev brugt, hvis backupdestinationen var på selve databaseværten, for at sikre minimal indvirkning på databasen under komprimeringsoperationen.
I denne version har vi poleret komprimeringsaspektet, og du kan nu tilpasse komprimeringsniveauet, uanset backupdestinationen. Når du opgraderer din ClusterControl-instans, vil alle de planlagte sikkerhedskopier automatisk blive konverteret til brugsniveau 6, medmindre du udtrykkeligt redigerer dem i v1.5.
Sikkerhedskopieringskomprimering er afgørende, når dit datasæt er stort, kombineret med en lang sikkerhedskopieringspolitik, mens lagerpladsen er begrænset. Mysqldump, som er tekstbaseret, kan drage fordel af komprimering med besparelser på op til 60% af diskplads af den originale filstørrelse. Nogle gange er det højeste kompressionsforhold den bedste mulighed at vælge, selvom det kommer til prisen for længere dekompression ved gendannelse.
Bonusfunktion:Automatisk sikkerhedskopiering
Som gamle sysadmins siger - En sikkerhedskopi er ikke en sikkerhedskopi, hvis den ikke kan gendannes. Backup-bekræftelse er noget, der normalt forsømmes af mange. Nogle sysadmins har udviklet interne rutiner til dette, normalt mere manuelle end automatiserede. Det er svært at automatisere det, hovedsageligt på grund af kompleksiteten af operationen som helhed - startende fra værtsprovisionering, MySQL-installation og -forberedelse, overførsel af sikkerhedskopier af filer, dekomprimering, gendannelsesoperation, verifikationsprocedurer og endelig oprydning af systemet efter processen. Alle disse besvær får folk til at forsømme et så vigtigt aspekt af en pålidelig backup. Generelt bør en sikkerhedskopi-gendannelsestest udføres mindst en gang om måneden, eller i tilfælde af væsentlige ændringer i datastørrelse eller databasestruktur. Find en tidsplan, der fungerer for dig, og formaliser den med en planlagt begivenhed.
ClusterControl kan automatisere sikkerhedskopieringsbekræftelsen ved at udføre gendannelsen på en frisk vært uden at kompromittere nogen af de ovenfor nævnte verifikationsprocedurer. Dette kan gøres efter en vis forsinkelse, eller lige efter sikkerhedskopieringen er fuldført. Den vil rapportere sikkerhedskopieringsstatus baseret på afslutningskoden for gendannelsesoperationen, udføre automatisk nedlukning, hvis sikkerhedskopieringen er verificeret, eller blot lade den gendannede vært køre, så du udfører yderligere manuelle verifikationer på dataene.
Når du opretter eller planlægger en sikkerhedskopi, vil du have yderligere muligheder, hvis "Bekræft sikkerhedskopiering" er slået til/fra:
Hvis "Installer databasesoftware" er aktiveret, vil ClusterControl fjerne enhver eksisterende MySQL-installation på målværten og geninstallere databasesoftwaren med samme version som den eksisterende MySQL-server. Ellers, hvis du har en specifik opsætning til den gendannede vært, kan du springe denne mulighed over. Resten af mulighederne er selvforklarende.
Bonusfunktion:Glem ikke PostgreSQL
Udover al denne fantastiske funktionalitet til MySQL og MariaDB, giver ClusterControl 1.5 også PostgreSQL en ekstra backup-metode (pg_basebackup), der kan bruges til online binære backups. Sikkerhedskopier taget med pg_basebackup kan bruges senere til punkt-i-tidsgendannelse og som udgangspunkt for en logforsendelses- eller streaming-replikerings-standby-servere.
Det var det for nu. Prøv ClusterControl v1.5, leg lidt med de nye funktioner og lad os vide, hvad du synes.