sql >> Database >  >> RDS >> MariaDB

Benchmarking handmatige database-implementaties versus geautomatiseerde implementaties

Er zijn meerdere manieren om een ​​database te implementeren. Je kunt het met de hand installeren, je kunt vertrouwen op de algemeen beschikbare infrastructuur-orkestratietools zoals Ansible, Chef, Puppet of Salt. Die tools zijn erg populair en het is vrij eenvoudig om scripts, recepten, playbooks, noem maar op, te vinden waarmee je de installatie van een databasecluster kunt automatiseren. Er zijn ook meer gespecialiseerde database-automatiseringsplatforms, zoals ClusterControl, die ook kunnen worden gebruikt voor geautomatiseerde implementatie. Wat is de beste manier om uw cluster te implementeren? Hoeveel tijd heb je eigenlijk nodig om het in te zetten?

Laten we eerst duidelijk maken wat we willen doen. Laten we aannemen dat we Percona XtraDB Cluster 5.7 gaan implementeren. Het zal uit drie knooppunten bestaan ​​en daarvoor zullen we drie Vagrant virtuele machines gebruiken waarop Ubuntu 16.04 draait (afbeelding bento/ubuntu-16.04). We zullen proberen een cluster handmatig te implementeren en vervolgens Ansible en ClusterControl gebruiken. Laten we eens kijken hoe de resultaten eruit zullen zien.

Handmatige implementatie

Repository instellen - 1 minuut, 45 seconden.

Allereerst moeten we Percona-repositories configureren op alle Ubuntu-knooppunten. Snel zoeken met Google, ssh naar de virtuele machines en het uitvoeren van de vereiste commando's duurt 1m45s

We hebben de volgende pagina met instructies gevonden:
https://www.percona.com/doc/percona-repo-config/percona-release.html

en we hebben de stappen uitgevoerd die worden beschreven in de sectie "DEB-BASED GNU/LINUX DISTRIBUTIONS". We hebben ook apt update uitgevoerd om de cache van apt te vernieuwen.

PXC-knooppunten installeren - 2 minuten en 45 seconden

Deze stap bestaat in feite uit het uitvoeren van:

[email protected]:~# apt install percona-xtradb-cluster-5.7

De rest is grotendeels afhankelijk van de snelheid van uw internetverbinding terwijl pakketten worden gedownload. Uw invoer is ook nodig (u geeft een wachtwoord door voor de superuser), dus het is geen installatie zonder toezicht. Als alles klaar is, heb je drie draaiende Percona XtraDB Cluster-knooppunten:

root     15488  0.0  0.2   4504  1788 ?        S    10:12   0:00 /bin/sh /usr/bin/mysqld_safe
mysql    15847  0.3 28.3 1339576 215084 ?      Sl   10:12   0:00  \_ /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib/mysql/plugin --user=mysql --wsrep-provider=/usr/lib/galera3/libgalera_smm.so --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/var/run/mysqld/mysqld.sock --wsrep_start_position=00000000-0000-0000-0000-000000000000:-1

PXC-knooppunten configureren - 3 minuten, 25 seconden

Hier begint het lastige gedeelte. Het is echt moeilijk om ervaring te kwantificeren en hoeveel tijd iemand nodig heeft om echt te begrijpen wat er moet gebeuren. Wat goed is, Google-zoekopdracht "hoe percona xtrabdb cluster te installeren" verwijst naar Percona's documentatie, die beschrijft hoe het proces eruit zou moeten zien. Het kan nog steeds meer of minder tijd kosten, afhankelijk van hoe bekend je bent met de PXC en Galera in het algemeen. In het ergste geval zult u zich niet bewust zijn van extra vereiste acties en u maakt verbinding met uw PXC en gaat ermee aan de slag, zonder te beseffen dat u in feite drie knooppunten heeft, die elk een eigen cluster vormen.

Laten we aannemen dat we de aanbeveling van Percona volgen en de tijd nemen om alleen die stappen uit te voeren. Kortom, we hebben configuratiebestanden aangepast volgens de instructies op de Percona-website, we hebben ook geprobeerd het eerste knooppunt op te starten:

[email protected]:~# /etc/init.d/mysql bootstrap-pxc
mysqld: [ERROR] Found option without preceding group in config file /etc/mysql/my.cnf at line 10!
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
mysqld: [ERROR] Found option without preceding group in config file /etc/mysql/my.cnf at line 10!
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
mysqld: [ERROR] Found option without preceding group in config file /etc/mysql/my.cnf at line 10!
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
mysqld: [ERROR] Found option without preceding group in config file /etc/mysql/my.cnf at line 10!
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
 * Bootstrapping Percona XtraDB Cluster database server mysqld                                                                                                                                                                                                                     ^C

Dit zag er niet correct uit. Helaas waren de instructies niet glashelder. Nogmaals, als je niet weet wat er aan de hand is, zul je meer tijd besteden aan het proberen te begrijpen wat er is gebeurd. Gelukkig is stackoverflow.com erg handig (hoewel niet het eerste antwoord op de lijst die we kregen) en je moet je realiseren dat je de [mysqld] sectiekop in je /etc/mysql/my.cnf-bestand mist. Door dit op alle knooppunten toe te voegen en het bootstrap-proces te herhalen, was het probleem opgelost. In totaal hebben we 3 minuten en 25 seconden besteed (exclusief googlen naar de fout, want we merkten meteen wat het probleem was).

Configureren voor SST, andere knooppunten in de cluster brengen - vanaf 8 minuten tot oneindig

De instructies op de website van Percona zijn vrij duidelijk. Zodra u één knooppunt in gebruik heeft, begint u gewoon met de resterende knooppunten en komt alles goed. We hebben dat geprobeerd en we konden niet zien dat er meer knooppunten bij het cluster kwamen. Dit is waar het vrijwel onmogelijk is om te zeggen hoe lang het duurt om het probleem te diagnosticeren. Het kostte ons 6-7 minuten, maar om het snel te kunnen doen, moet je:

  1. Wees bekend met hoe de PXC-configuratie is gestructureerd:
    [email protected]:~# tree  /etc/mysql/
    /etc/mysql/
    ├── conf.d
    │   ├── mysql.cnf
    │   └── mysqldump.cnf
    ├── my.cnf -> /etc/alternatives/my.cnf
    ├── my.cnf.fallback
    ├── my.cnf.old
    ├── percona-xtradb-cluster.cnf
    └── percona-xtradb-cluster.conf.d
        ├── client.cnf
        ├── mysqld.cnf
        ├── mysqld_safe.cnf
        └── wsrep.cnf
  2. Weet hoe de instructies !include en !includedir werken in MySQL-configuratiebestanden
  3. Weet hoe MySQL omgaat met dezelfde variabelen in meerdere bestanden
  4. Weet waar je op moet letten en wees je bewust van configuraties die ertoe zouden leiden dat nodes zichzelf bootstrappen om op zichzelf een cluster te vormen

Het probleem had te maken met het feit dat de instructies geen enkel bestand vermeldden behalve /etc/mysql/my.cnf waar we in feite /etc/mysql/percona-xtradb-cluster.conf.d/wsrep hadden moeten wijzigen .cnf. Dat bestand bevatte een lege variabele:

wsrep_cluster_address=gcomm://

en een dergelijke configuratie dwingt knooppunt tot bootstrap omdat het geen informatie heeft over andere knooppunten om mee te doen. We hebben die variabele in /etc/mysql/my.cnf ingesteld, maar later werd het bestand wsrep.cnf toegevoegd, waardoor onze setup werd overschreven.

Dit probleem kan een serieuze belemmering zijn voor mensen die niet echt bekend zijn met hoe MySQL en Galera werken, wat zelfs uren, zo niet meer debuggen oplevert.

Totale installatietijd - 16 minuten (als u MySQL DBA bent zoals ik ben)

We zijn erin geslaagd om Percona XtraDB Cluster in 16 minuten te installeren. Je moet een paar dingen in gedachten houden - we hebben de configuratie niet afgestemd. Dit is iets waar meer tijd en kennis voor nodig is. PXC-knooppunt wordt geleverd met een eenvoudige configuratie, voornamelijk gerelateerd aan binaire logging en Galera-schrijfsetreplicatie. Er is geen InnoDB-afstemming. Als u niet bekend bent met MySQL-internals, zijn dit uren, zo niet dagen, lezen en uzelf vertrouwd maken met interne mechanismen. Een ander belangrijk punt is dat dit een proces is dat u opnieuw zou moeten toepassen voor elk cluster dat u implementeert. Ten slotte zijn we erin geslaagd om het probleem te identificeren en zeer snel op te lossen dankzij onze ervaring met Percona XtraDB Cluster en MySQL in het algemeen. Casual gebruikers zullen hoogstwaarschijnlijk aanzienlijk meer tijd besteden aan het proberen te begrijpen wat er aan de hand is en waarom.

Ansible Playbook

Nu op naar automatisering met Ansible. Laten we proberen een ansible playbook te vinden en te gebruiken, dat we kunnen hergebruiken voor alle verdere implementaties. Laten we eens kijken hoe lang het duurt om dat te doen.

SSH-connectiviteit configureren - 1 minuut

Ansible vereist SSH-connectiviteit tussen alle knooppunten om ze te verbinden en te configureren. We hebben een SSH-sleutel gegenereerd en deze handmatig over de knooppunten verdeeld.

Ansible Playbook vinden - 2 minuten en 15 seconden

Het belangrijkste probleem hier is dat er zoveel playbooks beschikbaar zijn dat het onmogelijk is om te beslissen wat het beste is. Daarom hebben we besloten om voor de top 3 van Google-resultaten te gaan en er een te kiezen. We hebben besloten op https://github.com/cdelgehier/ansible-role-XtraDB-Cluster omdat het meer configureerbaar lijkt dan de overige.

Repository klonen en Ansible installeren - 30 seconden

Dit is snel, alles wat we nodig hadden was om

apt install ansible git
git clone https://github.com/cdelgehier/ansible-role-XtraDB-Cluster.git

Voorraadbestand voorbereiden - 1 minuut 10 seconden

Deze stap was ook heel eenvoudig, we hebben een inventarisbestand gemaakt met behulp van voorbeelden uit de documentatie. We hebben zojuist de IP-adressen van de knooppunten vervangen door wat we in onze omgeving hebben geconfigureerd.

Een Playbook voorbereiden - 1 minuut en 45 seconden

We hebben ervoor gekozen om het meest uitgebreide voorbeeld uit de documentatie te gebruiken, waarin ook een stukje configuratie-afstemming is opgenomen. We hebben een correcte structuur voor de Ansible voorbereid (er was geen dergelijke informatie in de documentatie):

/root/pxcansible/
├── inventory
├── pxcplay.yml
└── roles
    └── ansible-role-XtraDB-Cluster

Daarna hebben we het uitgevoerd, maar we kregen meteen een foutmelding:

[email protected]:~/pxcansible# ansible-playbook pxcplay.yml
 [WARNING]: provided hosts list is empty, only localhost is available

ERROR! no action detected in task

The error appears to have been in '/root/pxcansible/roles/ansible-role-XtraDB-Cluster/tasks/main.yml': line 28, column 3, but may
be elsewhere in the file depending on the exact syntax problem.

The offending line appears to be:


- name: "Include {{ ansible_distribution }} tasks"
  ^ here
We could be wrong, but this one looks like it might be an issue with
missing quotes.  Always quote template expression brackets when they
start a value. For instance:

    with_items:
      - {{ foo }}

Should be written as:

    with_items:
      - "{{ foo }}"

Dit duurde 1 minuut en 45 seconden.

Het Playbook-syntaxisprobleem oplossen - 3 minuten en 25 seconden

De fout was misleidend, maar de algemene vuistregel is om een ​​recentere Ansible-versie te proberen, wat we hebben gedaan. We googleden en vonden goede instructies op de Ansible-website. De volgende poging om het playbook uit te voeren is ook mislukt:

TASK [ansible-role-XtraDB-Cluster : Delete anonymous connections] *****************************************************************************************************************************************************************************************************************
fatal: [node2]: FAILED! => {"changed": false, "msg": "The PyMySQL (Python 2.7 and Python 3.X) or MySQL-python (Python 2.X) module is required."}
fatal: [node3]: FAILED! => {"changed": false, "msg": "The PyMySQL (Python 2.7 and Python 3.X) or MySQL-python (Python 2.X) module is required."}
fatal: [node1]: FAILED! => {"changed": false, "msg": "The PyMySQL (Python 2.7 and Python 3.X) or MySQL-python (Python 2.X) module is required."}

Het opzetten van een nieuwe Ansible-versie en het uitvoeren van het playbook tot deze fout duurde 3 minuten en 25 seconden.

De ontbrekende Python-module repareren - 3 minuten en 20 seconden

Blijkbaar zorgde de rol die we gebruikten niet voor de vereisten en ontbrak een Python-module voor het verbinden met en het beveiligen van het Galera-cluster. We hebben eerst geprobeerd MySQL-python via pip te installeren, maar het werd duidelijk dat het meer tijd zou kosten omdat het mysql_config vereiste:

[email protected]:~# pip install MySQL-python
Collecting MySQL-python
  Downloading https://files.pythonhosted.org/packages/a5/e9/51b544da85a36a68debe7a7091f068d802fc515a3a202652828c73453cad/MySQL-python-1.2.5.zip (108kB)
    100% |████████████████████████████████| 112kB 278kB/s
    Complete output from command python setup.py egg_info:
    sh: 1: mysql_config: not found
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-zzwUtq/MySQL-python/setup.py", line 17, in <module>
        metadata, options = get_config()
      File "/tmp/pip-build-zzwUtq/MySQL-python/setup_posix.py", line 43, in get_config
        libs = mysql_config("libs_r")
      File "/tmp/pip-build-zzwUtq/MySQL-python/setup_posix.py", line 25, in mysql_config
        raise EnvironmentError("%s not found" % (mysql_config.path,))
    EnvironmentError: mysql_config not found

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-zzwUtq/MySQL-python/

Dat wordt geleverd door MySQL-ontwikkelingsbibliotheken, dus we zouden ze handmatig moeten installeren, wat vrijwel zinloos was. We besloten om voor PyMySQL te gaan, waarvoor geen andere pakketten nodig waren om te installeren. Dit bracht ons bij een ander probleem:

TASK [ansible-role-XtraDB-Cluster : Delete anonymous connections] *****************************************************************************************************************************************************************************************************************
fatal: [node3]: FAILED! => {"changed": false, "msg": "unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1698, u\"Access denied for user 'root'@'localhost'\")"}
fatal: [node2]: FAILED! => {"changed": false, "msg": "unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1698, u\"Access denied for user 'root'@'localhost'\")"}
fatal: [node1]: FAILED! => {"changed": false, "msg": "unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1698, u\"Access denied for user 'root'@'localhost'\")"}
    to retry, use: --limit @/root/pxcansible/pxcplay.retry

Tot nu toe waren we 3 minuten en 20 seconden bezig.

Fout "Toegang geweigerd" oplossen - 18 minuten en 55 seconden

Per fout hebben we ervoor gezorgd dat de MySQL-configuratie correct is voorbereid en dat deze de juiste gebruiker en het juiste wachtwoord bevat om verbinding te maken met de database. Dit werkte helaas niet zoals verwacht. We hebben verder onderzoek gedaan en ontdekten dat de rol de root-gebruiker niet correct heeft gemaakt, hoewel de stap als voltooid werd gemarkeerd. We hebben een kort onderzoek gedaan, maar besloten om de handmatige oplossing te maken in plaats van te proberen het playbook te debuggen, wat veel meer tijd zou kosten dan de stappen die we deden. We hebben zojuist handmatig gebruikers [email protected] en [email protected] gemaakt met de juiste wachtwoorden. Hierdoor konden we deze stap doorgeven aan een andere fout:

TASK [ansible-role-XtraDB-Cluster : Start the master node] ************************************************************************************************************************************************************************************************************************
skipping: [node1]
skipping: [node2]
skipping: [node3]

TASK [ansible-role-XtraDB-Cluster : Start the master node] ************************************************************************************************************************************************************************************************************************
skipping: [node1]
skipping: [node2]
skipping: [node3]

TASK [ansible-role-XtraDB-Cluster : Create SST user] ******************************************************************************************************************************************************************************************************************************
skipping: [node1]
skipping: [node2]
skipping: [node3]

TASK [ansible-role-XtraDB-Cluster : Start the slave nodes] ************************************************************************************************************************************************************************************************************************
fatal: [node3]: FAILED! => {"changed": false, "msg": "Unable to start service mysql: Job for mysql.service failed because the control process exited with error code. See \"systemctl status mysql.service\" and \"journalctl -xe\" for details.\n"}
fatal: [node2]: FAILED! => {"changed": false, "msg": "Unable to start service mysql: Job for mysql.service failed because the control process exited with error code. See \"systemctl status mysql.service\" and \"journalctl -xe\" for details.\n"}
fatal: [node1]: FAILED! => {"changed": false, "msg": "Unable to start service mysql: Job for mysql.service failed because the control process exited with error code. See \"systemctl status mysql.service\" and \"journalctl -xe\" for details.\n"}
    to retry, use: --limit @/root/pxcansible/pxcplay.retry

Voor deze sectie hebben we 18 minuten en 55 seconden besteed.

Oplossen van het probleem "Start the Slave Nodes" (deel 1) - 7 minuten en 40 seconden

We hebben een aantal dingen geprobeerd om dit probleem op te lossen. We hebben geprobeerd het knooppunt te specificeren met behulp van zijn naam, we hebben geprobeerd om van groepsnaam te wisselen, niets loste het probleem op. We hebben besloten om de omgeving op te schonen met behulp van het script in de documentatie en helemaal opnieuw te beginnen. Het maakte het niet schoon, maar maakte het alleen maar erger. Na 7 minuten en 40 seconden hebben we besloten om de virtuele machines uit te schakelen, de omgeving opnieuw te creëren en helemaal opnieuw te beginnen in de hoop dat wanneer we de Python-afhankelijkheden toevoegen, dit ons probleem zal oplossen.

Probleem "Start de Slave-knooppunten" oplossen (deel 2) - 13 minuten en 15 seconden

Helaas heeft het instellen van Python-vereisten helemaal niet geholpen. We besloten het proces handmatig af te ronden, het eerste knooppunt te bootstrappen en vervolgens de SST-gebruiker te configureren en de resterende slaven te starten. Dit voltooide de "geautomatiseerde" installatie en het kostte ons 13 minuten en 15 seconden om fouten op te sporen en uiteindelijk te accepteren dat het niet zal werken zoals de playbook-ontwerper had verwacht.

Verdere foutopsporing - 10 minuten en 45 seconden

We stopten daar niet en besloten dat we nog één ding zouden proberen. In plaats van te vertrouwen op Ansible-variabelen, plaatsen we gewoon het IP-adres van een van de knooppunten als het hoofdknooppunt. Dit loste dat deel van het probleem op en we eindigden met:

TASK [ansible-role-XtraDB-Cluster : Create SST user] ******************************************************************************************************************************************************************************************************************************
skipping: [node2]
skipping: [node3]
fatal: [node1]: FAILED! => {"changed": false, "msg": "unable to connect to database, check login_user and login_password are correct or /root/.my.cnf has the credentials. Exception message: (1045, u\"Access denied for user 'root'@'::1' (using password: YES)\")"}

Dit was het einde van onze pogingen - we hebben geprobeerd deze gebruiker toe te voegen, maar het werkte niet correct via het ansible playbook, terwijl we het IPv6 localhost-adres konden gebruiken om verbinding mee te maken bij gebruik van de MySQL-client.

Totale installatietijd - onbekend (automatische installatie mislukt)

In totaal hebben we 64 minuten besteed en het is ons nog steeds niet gelukt om dingen automatisch op gang te krijgen. De resterende problemen zijn het maken van root-wachtwoorden, wat niet lijkt te werken en het vervolgens starten van de Galera-cluster (SST-gebruikersprobleem). Het is moeilijk te zeggen hoe lang het duurt om het verder te debuggen. Het is zeker mogelijk - het is alleen moeilijk te kwantificeren omdat het echt afhangt van de ervaring met Ansible en MySQL. Het is zeker niet iets dat iedereen zomaar kan downloaden, configureren en uitvoeren. Nou, misschien had een ander speelboek anders gewerkt? Het is mogelijk, maar het kan net zo goed leiden tot andere problemen. Ok, er is dus een leercurve om te beklimmen en te debuggen om te maken, maar als je helemaal klaar bent, voer je gewoon een script uit. Nou, dat is een beetje waar. Zolang de wijzigingen die door de onderhouder zijn aangebracht niet iets kapot maken waarvan u afhankelijk bent of een nieuwe Ansible-versie het playbook zal breken of de onderhouder het project gewoon vergeet en stopt met het ontwikkelen ervan (voor de rol die we gebruikten is er een heel nuttig pull-verzoek dat wacht al bijna een jaar, wat mogelijk het probleem van Python-afhankelijkheid zou kunnen oplossen - het is niet samengevoegd). Tenzij u accepteert dat u deze code moet onderhouden, kunt u er niet echt op vertrouwen dat deze 100% nauwkeurig is en in uw omgeving werkt, vooral gezien het feit dat de oorspronkelijke ontwikkelaar geen prikkels heeft om de code up-to-date te houden. En hoe zit het met andere versies? Je kunt dit specifieke playbook niet gebruiken om PXC 5.6 of een MariaDB-versie te installeren. Natuurlijk zijn er andere playbooks die je kunt vinden. Zullen ze beter werken of ben je misschien nog een paar uur bezig om ze te laten werken?

ClusterControlSingle Console voor uw gehele database-infrastructuurOntdek wat er nog meer nieuw is in ClusterControlInstalleer ClusterControl GRATIS

Clusterbeheer

Laten we tot slot eens kijken hoe ClusterControl kan worden gebruikt om Percona XtraDB Cluster te implementeren.

SSH-connectiviteit configureren - 1 minuut

ClusterControl vereist SSH-connectiviteit tussen alle knooppunten om ze te verbinden en te configureren. We hebben een SSH-sleutel gegenereerd en deze handmatig over de knooppunten verdeeld.

ClusterControl instellen - 3 minuten en 15 seconden

Snel zoeken "ClusterControl install" leidde ons naar de relevante ClusterControl-documentatiepagina. We waren op zoek naar een "eenvoudigere manier om ClusterControl te installeren", daarom volgden we de link en vonden de volgende instructies.

Het downloaden van het script en het uitvoeren ervan duurde 3 minuten en 15 seconden, we moesten enkele acties ondernemen terwijl de installatie vorderde, dus het is geen installatie zonder toezicht.

Aanmelden bij gebruikersinterface en implementatie starten - 1 minuut en 10 seconden

We hebben onze browser naar het IP-adres van het ClusterControl-knooppunt gestuurd.

We hebben de vereiste contactgegevens doorgegeven en we kregen het welkomstscherm te zien:

Volgende stap - we hebben de implementatieoptie gekozen.

We moesten SSH-verbindingsdetails doorgeven.

We hebben ook besloten welke leverancier, versie, wachtwoord en hosts moeten worden gebruikt. Dit hele proces duurde 1 minuut en 10 seconden.

Percona XtraDB-clusterimplementatie - 12 minuten en 5 seconden

Het enige dat nog restte was wachten tot ClusterControl klaar was met de implementatie. Na 12 minuten en 5 seconden was het cluster klaar:

Totale installatietijd - 17 minuten 30 seconden

Gerelateerde bronnen ClusterControl voor MySQL ClusterControl voor MariaDB ClusterControl voor Galera Cluster

We zijn erin geslaagd om ClusterControl en vervolgens PXC-cluster te implementeren met ClusterControl in 17 minuten en 30 seconden. De PXC-implementatie zelf duurde 12 minuten en 5 seconden . Uiteindelijk hebben we een werkend cluster, ingezet volgens de best practices. ClusterControl zorgt er ook voor dat de configuratie van het cluster zinvol is. Kortom, zelfs als u niet echt iets weet over MySQL of Galera Cluster, kunt u binnen een paar minuten een productieklaar cluster hebben. ClusterControl is niet alleen een implementatietool, het is ook een beheerplatform - maakt het nog gemakkelijker voor mensen die geen ervaring hebben met MySQL en Galera om prestatieproblemen te identificeren (via adviseurs) en beheeracties uit te voeren (het cluster op en neer schalen, back-ups uitvoeren, asynchrone slaven naar Galera). Wat belangrijk is, ClusterControl zal altijd worden onderhouden en kan worden gebruikt om alle MySQL-smaken te implementeren (en niet alleen MySQL/MariaDB, het ondersteunt ook TimeScaleDB, PostgreSQL en MongoDB). Het werkte ook out-of-the-box, iets wat niet gezegd kan worden over andere methoden die we hebben getest.

Als u hetzelfde wilt ervaren, kunt u ClusterControl gratis downloaden. Laat ons weten wat je ervan vond.


  1. Query om alle rijen van de vorige maand te krijgen

  2. MySQL WORDT alleen lid van de meest recente rij?

  3. Hoe kan ik de lijst met tabellen in de opgeslagen procedure krijgen?

  4. Neo4j - Gegevens importeren uit een CSV-bestand met Cypher