strip/block size y otros temas de RAID (largo)
Horst H. von Brand
vonbrand en inf.utfsm.cl
Mar Dic 30 16:58:15 CLST 2008
Aldrin Martoq <amartoq en dcc.uchile.cl> wrote:
> Hola Victor, muy largo lo que escribiste, tratare de aportar un poco ;)
;-)>
> On Tue, 2008-12-30 at 12:21 -0300, Victor Hugo dos Santos wrote:
[...]
> Esto es mas lento porque en el fondo tienes un puro disco con varios
> platos,
No. RAID significa leer y escribir varios cada vez (para lo de "R").
> esto influye en el seek time y se encolan si tienes varias
> aplicaciones "distintas" corriendo al mismo tiempo.
No. Si tienes varios platos (y cabezales) independientes, tienes mejor
rendimiento. RAID los interconecta (la "A"), y el rendimiento se va al
suelo.
> La solucion fue respaldar todo, rehacer el arreglo en 2 arreglos RAID-5
> y dejar unas aplicaciones usando 1 grupo de discos y otras aplicaciones
> usando el otro grupo de discos. La cola de lecturas/escrituras disminuyo
> enormemente, y ahora las lucecitas eran a un lado o al otro.
No es la mejor configuracion, entonces: Claramente le sacas el maximo
provecho a los discos si estan trabajando /todo/ el tiempo, no la mitad si
y la mitad no.
> Varios:
> - recuerda que los discos de un lote son mas propensos a fallar una vez
> que fallo el primero: apenas falle un disco comienza a buscar
> reemplazos!
> http://lwn.net/Articles/237924/
> - luego: cuando tienes esta cantidad de espacio, busca donde dejar los
> respaldos (data y APLICACIONES).
Esa es la idea de RAID (la "I", originalmente de "inexpensive": juntar
montones de discos chicos y baratos para obtener capacidades (y confiabilidad)
de disco inmenso y exageradamente caro).
[...]
> > aca me entra las siguientes dudas:
> > * ahora, el strip size de los volumenes esta configurado en 64 K (con
> > Write-Back y Adaptive Read Ahead habilitados tambien), pero cuales
> > serian los mejores valores para:
> > - particion "/" en general
> > - base de datos oracle y postgresql (considerar instalación por
> > defecto, sin cambios significativos)
> Creo que todo esto lo sabriamos si tuvieramos DTrace, asi no tendriamos
> que adivinar...
... pero se requeriria 5 veces la maquina por Slowlaris... ;-)
[Recuerden que en Linux solia ser que lanzar un _proceso_ era mas rapido
que lanzar una _hebra_ en Solaris, en la misma maquina!]
> Por ejemplo, podrias sacar la distribucion del taman~o del block usado
> _en tu aplicacion_, que es lo que importa al final:
>
> http://wikis.sun.com/display/DTrace/io+Provider#ioProvider-Examples
Cuidado, eso cuando mucho puede dar una indicacion generica; nadie te dice
que no hayan ajustado esos (y quien sabe que otros) parametros segun el
sistema en el cual corre.
> Podrias intentarlo con systemtap o por ultimo strace y nos cuentas ;)
No creo que strace(1) ayude mucho aca?
--
Dr. Horst H. von Brand User #22616 counter.li.org
Departamento de Informatica Fono: +56 32 2654431
Universidad Tecnica Federico Santa Maria +56 32 2654239
Casilla 110-V, Valparaiso, Chile 2340000 Fax: +56 32 2797513
Más información sobre la lista de distribución Linux