Byte && Storage anno 2011 op basis van OpenSolaris en ZFS

Goed nieuws van onze ontwikkelafdeling! Onze techneuten zijn bezig om de laatste hand te leggen aan een nieuw storageplatform. Voor de nabije toekomst is gekozen voor een zelfgebouwde oplossing op basis van OpenSolaris en ZFS.

Hardware

IBM X3650-M3

Ons nieuwe storageplatform wordt opgebouwd uit hardware uit de stal van IBM. Als front-end server is gekozen voor de IBM X3650-M3, die ondersteuning biedt voor snelle processoren, en, erg belangrijk, heel veel intern geheugen. Voor de opslag zelf wordt gebruik gemaakt van IBM EXP3000 enclosures, waarin 12 schijven passen. Om ervoor te zorgen dat gegevens heel snel weggeschreven kunnen worden, wordt de front-end server uitgerust met twee Solid State Drives, van de allersnelste (SLC) soort. Lees verder

Replicator kapot? Doe mij maar een nieuwe!

Zaterdag ochtend werd ik, helaas, om 7 uur ‘s ochtends wakker ge-SMS-ed, omdat er een probleem was met de replicatie van Database cluster #13. Volgers van onze onderhoud-pagina herinneren zich wellicht nog dat dit niet de eerste keer deze week was dat er problemen met deze server waren. Een paar dagen terug viel de replicatie ook uit met een vage error, en was ondergetekende bezig tot 03:00 ‘s nachts om deze te fixen. En nu weer iets!

Een eerste analyse zag er al meteen niet goed uit. MySQL, SMTP, en ssh deden het allemaal niet meer. Verbindingen werden geweigerd of braken halverwege spontaan af. Die server was behoorlijk in de war.
Het eerste wat ik probeerde was natuurlijk om over het netwerk op de console in te loggen, maar helaas, ook die kwam met een rare error terug. Meteen springen er doom-scenario’s door het hoofd. Om half 8 in het datacenter staan? De hele dag bezig een server met rare fouten te fixen? Straks valt de hoofd server ook uit en zijn er honderden sites offline? Daar gaat mijn weekend… Lees verder

Werken op zondag door uitval van een replicator, ai!

Vandaag ging een van de replicators onderuit. Dat moest even hersteld worden. Geen haastklus, want het is natuurlijk de replicator en niet de live machine. Maar toch moesten we daarvoor werken op zondag!

MySQL replication is toch niet het mooiste technische proces dat ooit ontstaan is. Als iemand een query afbreekt op de hoofdserver loop je de kans dat de replicator onderuit gaat, waardoor we dus moesten werken op zondag. Verder is de uitval en herstellen van de replicator gelukkig geen probleem, maar daarna loopt de replicator nogal achter en moet hij alles inhalen. 

Dat is de reden waarom er voor database1.c1 geen backup is van 10:20. Heb je een Premium Hosting pakket en je hebt NET die database backup nodig, dan heb je helaas pech. Dit kan ook met een nachtelijke backup gebeuren. Dit komt heel af en toe voor en we kunnen daar niet altijd iets aan doen.  Maar gelukkig maken we voor de duurdere pakketten elke 3 uur een backup, dus dan is het niet zo erg dat je er een mist!

Kijk op onze wikipagina over MySQL backups voor meer details over wanneer welke pakketten worden gebackupped.

MySQL Clusters: Hardware, Replicatie en Dynamische Resolving

Byte draait vele duizenden MySQL databases. Om deze snel, stabiel en veilig te houden hebben we een aantal oplossingen bedacht en geïmplementeerd.

Probleem

MySQL is moeilijk op te schalen buiten de grenzen van een fysieke machine (node) en moeilijk op meerdere machines (nodes) tegelijk te draaien.

Oplossingsmethoden

  • Krachtige nodes, standaard geoptimaliseerde setup.
  • Redundantie middels replicatie.
  • Meerdere nodes waarover sites verdeeld worden.
  • Frequente backups.
  • Monitoring en isolatie.

Basis opstelling MySQL servers en configuratie

Om maximale prestaties en dataveiligheid te realiseren, worden MySQL servers bij Byte altijd op extra krachtige hardware gedraaid. Dit houdt in: redundante voeding, 6 15.000 rpm SCSI harde schijven in een RAID5 opstelling, veel RAM, meerdere multi-core processoren. We draaien een gestandaardiseerde uitontwikkelde tak van MySQL, waar we alles van af weten, voor alle databaseclusters.

Hiermee wordt primair de beschikbaarheid (uptime) en dataconsistentie (juiste, volledige data) zo hoog mogelijk gemaakt.. Lees verder