Tekst napisao Matt Yonkovit, Senior Consultant u MySQL-u (SUN-u)
Treba da kupite novu mašinu za vaš MySQL server i ne znate odakle da počnete
Kako je za različite operativne sisteme različita potreba za nekim sistemima i različito se neke stvari nameštaju, u ovom postu će mo se držati Linux-a. Želeo bih reći, odma u startu, da odabir pravog servera nije stvar za „na brzinu“. Trebalo bi posvetiti malo više vremena tom tasku, odraditi procenu vaše aplikacije, njenih zahteva, pristupnih paterna, IO zahvete, kapacitet i slično. To je ozbiljan posao, ali da bi vam pomogli evo nekih generalnih saveta koji bi vam trebali pomoći.
Ovi saveti se odnose na trenutnu verziju 5.1.32 i moguće da bi sa nekom sledećom verzijom ovi saveti bili drugačiji.
CPU:
Trenutno je skaliranje InnoDB-a ograničeno na 8 jezgara. Trenutni server bez specijalnih patčeva će čak sporije raditi na mašini sa preko 8 jezgara. Samim tim, preporuka je server sa BRZIM procesorom i maksimalno 8 jezgara.
Memorija:
Što više to bolje. Treba kupiti RAM-a koliko je potrebno da prihvati često korištene (hot) podatke. Ako ne znate koja je to količina, iskustvo kaže da je to između 10 i 20% ukupne količine baze podataka ali to naravno zavisi od aplikacije do aplikacije. Računajte da date 2-4G OS-u, tipično ja volim da ostavim 4G OS-u ili više ako imam vrlo aktivni db server (8+G). Obratite pažnju da ovde kada se kaze OS misli se i na memoriju za bafere po tredu, stek za tredove i slično. Dakle ako imamo bazu gde je ~24G u stalnoj upotrebi (hot) uzeli bi 32G RAM-a, alocirali 24G InnoDB-u i ostavili ostalo za OS.
Disk:
Ovde postoje dva osnovna koncepta, data kapacitet i IO kapacitet (io u sekundi). Data kapicitet je jednostavan, odlučite se kakav rad, koliko vam prostora treba i to je to. Obratite pažnju na kakav RAID koristite. IO kapacitet je malo tvrđi orah. Prva odluka je da li će te ići sa internim diskovima ili sa SAN-om. Odluka za SAN definitivno ne ulazi u okvire ovog posta tako da će mo pretpostaviti interne diskove. Sve i ako svi vaši podaci staju u RAM, to smanjuje potrebu za data kapacitetom ali ne smanjuje potrebu za IO-m. Savet je da drzite OS i bazu na razlicitm diskovima (spindlovima). Za bazu, preporuka je RAID10 za podatke (RAID5 je ok za data warehouse gde nema puno upisa ) – što znači minimum 4 diska. Ako uzmemo 2 u mirroru za OS, to je 6 diskova u startu. Po pitanju tipa diskova, SAS ili SCSI, 10K ili 15K RPM su već standard. Izbegavajte SATA diskove, pogotovo one sa manje od 10K RPM.
Disk Kontroler:
Keš na diskovima treba ISKLjUČITI!!
Keš na kontroleru je poželjan – što veći to bolji, obavezno je da keš kontroler ima bateriski bekap za keš inače je njegov keš beskoristan i morate ga isključiti.
Mrežna kartica:
Minimum 2 mrežne kartice, obe full 1gbit, bondujte ih zajedno.
OS
Obratite pažnju da koristite 64bitni OS i 64bitni MySQL