Miten MySQL-klusteri asennetaan ja määritetään Windowsille?
Koskee seuraavia:
Window64-bittinen Käyttöjärjestelmä
Kirjoittaja:
Carthik Annayan
Ongelma:
Kuinka asennan ja määritän MySQL-klusterin Windowsille?
Ratkaisu:
Miten MySQL-klusteri toteutetaan? Keskustelemme MySQL-klusterin käyttöönoton vaiheista nyt. MySQL-klusterin tyypillisessä HA-ympäristössä tarvitaan vähintään 6 palvelinta HA:n rakentamiseksi MySQL-klusterin jokaiselle kerrokselle. Parasta MySQL-klusterin käyttöönotossa on se, että se on helppoa eikä vaadi monia ennakkovaatimuksia. Tarvitset vain pari palvelinta, käyttöjärjestelmän ja pari kytkintä.
Solmut on nimetty seuraavasti:
-
Palvelinsolmut:- Servernode1.example.com 192.168.0.10, Servernode2.example.com 192.168.0.20
Datasolmut:- Datanode1.example.com 192.168.0.30, Datanode2.example.com 192.168.0.40
Hallintapalvelimen solmut:- Mgmntnode1.example.com 192.168.0.50, Mgmntnode2.example.com 192.168.0.60
Verkon edellytykset: -
- Erillinen >= 1GB/s verkkoyhteys
- Verkkovikojen estäminen (NIC x 2, liittäminen)
- Käytä klusterin tiedonsiirtoon erityistä verkkoa
- Hallintasolmussa ei ole suojauskerrosta (etäsammutus sallittu ...)
- Ota portin 1186 käyttö käyttöön vain klusterisolmuilta ja järjestelmänvalvojilta
Tallennuskerros (datasolmut):-
- Yksi datasolmu voi käyttää 8 ydintä
- suoritin: 2 x 4 ydintä
- RAM: Niin paljon kuin tarvitset, 10 Gt: n tietojoukko vaatii 20 Gt RAM-muistia (redundanssin vuoksi)
- Jokainen solmu tarvitsee sitten 2 x 10 / #of datasolmua. (2 datasolmua →10 Gt RAM-muistia → 16 Gt RAM-muistia on hyvä)
- Levytilaa: 10xDataMemory + välilyönti BACKUPille + TableSpace (jos levyn datataulukot)
SQL Layer (MySQL-palvelimet):-
- suoritin: 2–16 ydintä
- RAM: Ei niin tärkeä - tarpeeksi 4 Gt (riippuu yhteyksistä ja puskureista)
Mgmntnode2-solmu on valinnainen. On tärkeää tarjota HA myös hallintasolmussa, koska hallintasolmu on keskuskonsoli, josta kaikkia data- ja palvelinsolmuja hallitaan. Tässä toteutuksessa otetaan kuitenkin huomioon vain yksi hallintasolmu ja MySQL Cluster 7.2: n toteutus.
Kun palvelimet ovat valmiita, lataa ensin MySQL-klusteripaketti seuraavasta sijainnista (
http://www.mysql.com/downloads/cluster ). Lataa tarpeisiisi parhaiten sopiva paketti. Joko msi- tai zip-muodossa. Tässä toteutuksessa olen käyttänyt zip-muotoa. MySQL-klusterin (käyttöjärjestelmä, arkkitehtuuri) tukitila selviää
MySQL-tukimatriisi. Seuraavaksi puretaan ladattu sisältö.
Pura zip-arkiston sisältö palvelinsolmujen kansioon "c:\mysql\cluster". Suorita tämä vaihe kussakin solmussa tai lataa zip-tiedosto yhteen solmuun ja kopioi sisältö muihin solmuihin.
Voit käyttää suoritettavia tiedostoja komentorivillä lisäämällä "c:\mysql\cluster\bin" PATH-ympäristömuuttujaan.
Luo config.ini tiedosto hallintasolmuun (192.168.0.50) seuraavan kansion alle: c:\mysql\cluster.
Esimerkki
config.ini tiedostosta
config.ini
[ndbd default]
noofreplicas=2
DataDir=c:/mysql/bin/cluster-data # Kunkin datasolmun tiedostojen
hakemisto DataMemory=80M
IndexMemory=18M
[ndb_mgmd]
hostname=192.168.0.50
NodeId = 1
DataDir=c:/mysql/bin/cluster-logs hallintasolmun #Directory Lokitiedostot
[ndbd] # Data Node1 hostname=192.168.0.30
NodeId=2
[ndbd] # Data Node2
hostname=192.168.0.40
NodeId=3
[mysqld] # Server Node1
hostname= 192.168.0.10
NodeId=101
[mysqld] # Server Node2
hostname= 192.168.0.20
NodeId=102
Kunkin datasolmun My.ïni-tiedosto sisältää tietoja vain yhteysmerkkijonosta, joka on hallintasolmun IP-osoite. my.cnf-tiedosto sijaitsee kansiossa "c:\mysql\my.ini"
my.ini (Data Node1)
[mysql_cluster]
Ndb-connectstring=192.168.16.50
Sijoita sama sisältö myös DataNode2:een.
Lopuksi MySQL Server -solmun sisällön my.ini, joka sijaitsee ServerNoden kohdassa "c:\mysql\my.ini".
[MySQLD]
ndb-nodeid=101 ndbcluster
ndb-connectstring=192.168.16.50:1186 # hallintapalvelimen
sijainti portti=3306
default-storage-engine=ndbcluster
Kun määritystiedostot ovat paikoillaan, solmut on käynnistettävä seuraavassa järjestyksessä: Hallintasolmu, Datasolmut ja SQL Server -solmu.
Seuraavat toiminnot on esitetty alla.
Hallintasolmu (192.168.0.50):-
ndb_mgmd -f /var/lib/mysql-cluster/config.ini --configdir=/var/lib/mysql-cluster/ --initial
Tietosolmut (192.168.0.30, 192.168.0.40):-
NDBD -C <Hallintasolmun IP-osoite>:1186 – alkukirjain
Tämä komento on annettava kullekin datasolmulle.
SQL Server -solmu (192.168.0.10, 192.168.0.20):-
C:\mysql\bin> mysqld –console
Tämä komento on annettava jokaiselle MySQL Server -solmulle.
Tarkista lopuksi, onko klusteri toiminnassa, antamalla seuraava komento hallintapalvelimen komentorivillä. Suoritettava tiedosto ndb_mgmd näkyy hakemistossa "c:\mysql\bin"
ndb_mgmd > näytä