forstand på I/O cache? Emnet er løst

Få hjælp og support til alt server-relateret. Guides og How-to's i forbindelse med servere hører også til her.
thomasjohansen
Indlæg: 780
Tilmeldt: 4. jun 2008, 13:37
Geografisk sted: Køge

forstand på I/O cache?

Indlægaf thomasjohansen » 8. jun 2012, 14:02

Jeg er støt ind i et større problem i forbindelse med min serveropsætning, der består af en ubuntu 10.4 server.

Denne ubuntu server kører 4 virtualbox gæster:

- (tildelt 4gb ram) Zarafa mailserver der kører på ubuntu 10.4 server.
- (tildelt 256mb ram) Intranet der kører på en ubuntu 8.4 server
- (tildelt hver 1gb ram)2x windows7 desktoppe der kan bruges af hjemmearbejdende vpn brugere.

Serveren har 8gb ram, dvs 1.5gb til sig selv, og kører raid1 på 3 diske så jeg har råd og tid til en af dem står af.

Problematikken ligger så i at min zarafa server til tider har mange I/O skrivninger til sine virtuelle diske, især når alle får en mail samtidig. Disse skrives jo videre til det fysiske raid.
Og i den ombæring låser host diskene for de virtuelle, som så genererer mysql fejl, og I/O error.

Jeg har selvfølgelig læst lidt op på det, og der er flere måder hvorpå man "måske" kan takle det. Dem har jeg prøvet uden 100% held.

Eksempelvis
slået "host i/o" fra på de virtuelle maskiner.
justere flush cache størrelsen på de virtuelle maskiner.

Men det hjælper ikke helt, der er stadig I/O fejl.

Men så har jeg læst at man også kan justere/tune I/O cache på selve host serveren og så kommer jeg til kort. Nogen der har forstand på dette?
Med venlig hilsen
Thomas Johansen
-----------------------------
Gnome-shell tilhænger også selv om det har sine fejl

lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Re: forstand på I/O cache?

Indlægaf lath » 9. jun 2012, 15:16

thomasjohansen skrev:Jeg er støt ind i et større problem i forbindelse med min serveropsætning, der består af en ubuntu 10.4 server.

Denne ubuntu server kører 4 virtualbox gæster:

- (tildelt 4gb ram) Zarafa mailserver der kører på ubuntu 10.4 server.
- (tildelt 256mb ram) Intranet der kører på en ubuntu 8.4 server
- (tildelt hver 1gb ram)2x windows7 desktoppe der kan bruges af hjemmearbejdende vpn brugere.

Serveren har 8gb ram, dvs 1.5gb til sig selv, og kører raid1 på 3 diske så jeg har råd og tid til en af dem står af.

Problematikken ligger så i at min zarafa server til tider har mange I/O skrivninger til sine virtuelle diske, især når alle får en mail samtidig. Disse skrives jo videre til det fysiske raid.
Og i den ombæring låser host diskene for de virtuelle, som så genererer mysql fejl, og I/O error.

Jeg har selvfølgelig læst lidt op på det, og der er flere måder hvorpå man "måske" kan takle det. Dem har jeg prøvet uden 100% held.

Eksempelvis
slået "host i/o" fra på de virtuelle maskiner.
justere flush cache størrelsen på de virtuelle maskiner.

Men det hjælper ikke helt, der er stadig I/O fejl.

Men så har jeg læst at man også kan justere/tune I/O cache på selve host serveren og så kommer jeg til kort. Nogen der har forstand på dette?


Det du spørger om er i virkeligheden scheduling.

Linux er en pre-emptive multitaskng kerne. Standard scheduling algoritmen favoriserer I/O bundne processer over CPU intensive processer.
Dog har prioriteter højere rangorden end I/O bundet proces vs CPU bundet proces.

Det betyder at har dine processer en forkert proces-prioritet får du performance derefter. (dårlig performance)

Du kan tildele lidt mindre procestid med renice til hver virtual host, nice-kommandoen for nye processer du starter op.
I Linux er -15 højeste prioritet, 0, er den man normalt for tildelt, og 15 er dårligste prioritet.
Som alm. bruger (ikke er root) - kan man kun forringe sin prioritet, ikke gøre den bedre.

Du skal aldrig bruge -15,-14, og -13 til almindelige programmer (virtual hosts incl). - de er for sådan nogle som disk i/o processen.

  • Først skal servicen der håndterer disk I/O have den højeste prioritet, så det går ud over (næsten) alt andet.
    - Ideelt har alle processer der er meget aktive og vigtige for systemet den samme meget høje prioritet (-15,-14,-13).
    - Det betyder at det går ud over de virtuelle hosts, hvis der er heftig I/O aktivitet. Da det også er dem der står for den højere I/O aktivitet gør det netop ikke noget, da de er I/O bundet.
  • Intranet server har højeste scheduling proritet (indenfor kategorien programmer) - det er _meget_ lavere end I/O disk processen.
  • 1. Windows virtual host har en lidt lavere prioritet end den forrige
  • det er også tilfældet for 2. Windows virtual host
  • Til sidst går det hårdest ud over mail-serveren - da den leverer information (e-mails) asynkront gør det ikke noget at en mail bliver modtaget nogle sekunder senere, ligeledes normalt også for at afsende en email.

Brug en testserver for at finde de nice værdier der virker bedst før du ruller en løsning ud.

/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags

thomasjohansen
Indlæg: 780
Tilmeldt: 4. jun 2008, 13:37
Geografisk sted: Køge

Re: forstand på I/O cache?  Emnet er løst

Indlægaf thomasjohansen » 11. jun 2012, 08:48

Tak for denne dybdegående forklaring nu har jeg, lidt en ide om hvor jeg skal lede videre.
Med venlig hilsen
Thomas Johansen
-----------------------------
Gnome-shell tilhænger også selv om det har sine fejl

Tilbage til "Server: Guides, installation og opsætning"

Hvem er online

Brugere der læser dette forum: [Bot] og 0 gæster