[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Duda con LVM en debian



El 2012-07-20 14:58, Marc Olive escribió:
On Friday 20 July 2012 13:43:23 Maykel Franco Hernández wrote:
El 2012-07-20 13:23, Marc Olive escribió:
> On Friday 20 July 2012 12:16:48 Maykel Franco Hernández wrote:
>> Otra cosita, y ya aprovecho, para poder realizar lvm snapshot hay
>> que
>> extender el grupo de volúmen y añadirle un disco como mínimo igual
>> que
>> del que se quiere realizar el backup lvm snapshot. Pero, podría
>> realizar
>> esto y aparte meter otro disco para agrandar la partición??
>>
>> Es decir, la idea es agregar un disco al grupo de volúmen para
>> realizar
>> los snapshot(que quede libres Free PE) y aparte agregar otro disco y
>> en
>> ése disco extender el volúmen lógico que tengo y ampliar el tamaño
>> del
>> volumen lógico.
>
> Hmm... no se si te sigo.
>
> Para crear el snapshot necesitas unos cuantos PE libres, pero no
> tienen que
> ser tantos como tenga el volúmen original, solo los suficientes para
> guardar
> los cambios que se realizen mientras el snapshot esté activo.
> En mi caso, lo uso para salvar archivos compartidos por samba, el
> volumen es
> de 500Gb, pero los PE asignados para el snapshot són 10Gb, no van a
> guardar
> 10Gb de datos durante el proceso de backup.
> Si vas a guardar BBDD, vigila el tamaño de los archivos de la BBDD,
> que según
> el motor (lease Oracle) puede sorprender. O si guardas máquinas
> VMWare.
>
> Ampliar los volúmenes lo puedes hacer cuando quieras, nada que ver
> con
> snapshots, a menos que se me escape algo. Basta con que reserves unos
> cuantos
> Gb para el snapshot.
>
>> Saludos.

Gracias por contestar Marc. Te comento, tengo un par de dudas:

1- En esos 500GB de disco que utilizas para samba, cuantos tiene
ocupados?? Entonces que haces el snaphost sólo del tamaño que ocupan los
datos en el disco de 500GB + 10GB por si acaso? Mientras suben más
ficheros...No te sigo en ése sentido.

No, no, es mucho mejor que eso: cuando digo 10Gb, digo 10Gb, no digo
500+10Gb.
Asigno 10Gb y solo 10Gb para el snapshot de 500Gb :D.
Recuerda que inicialmente, snapshot y volúmen original comparten espacio
físico de HD, solo que el snapshot no ve los cambios que se puedan
realizar al
volúmen original, cambios que se guardan temporalmente en los PE asignados
para el snapshot. En este sentido, va al revés: el volumen original
escribe en
los PE asignados para el snapshot, y el snapshot lee de los PE originales,
nunca de los PE adicionales.
Solo necesitas espacio adicional para guardar los _cambios_ al volúmen original mientras el snapshot está activo. Cuando se desactiva el snapshot, los cambios se traspasan de los PE del snapshot a los PE asignados realmente al volúmen original, y puede tardar un poco más (en mi caso, típicamente un
par de minutos).

En realidad tengo 276Gb, y 203Gb ocupados. Creo un snapshot con 10Gb:

~# df -h /export
S. fitxers            Mida En ús Lliure %Ús Muntat a
/dev/mapper/vg-export
                      276G  203G   71G  75% /export
~# lvcreate -L10G -s -n bck_snapshot /dev/vg/export

Esos 10Gb del snapshot sirven para guardar los cambios, y solo los cambios,
que se realizen en el volúmen original.

En el servidor samba guardan documentos de office, pdf, alguna imágen y similares. Aunque usan algunos mega-documentos de 50Mb, estan muy lejos de necesitar los 10Gb en los 20-30 minutos que tarda el backup (y snapshot
activo).

Es decir, la idea es tener 3 discos:

1- Para almacenar la informacion de /var/lib/mysql que ya está puesto.
2- Disco de 300GB para extender el grupo de volúmenes y poder hacer
snapshot.
3- Disco para ampliar físicamente el espacio del LV mysql-data...

No sé si me explico correctamente.

Donde me lío, es si quiero redimensionar con lvresize y ampliar
mysql-data porque imagínate que en un futuro me quedo sin espacio(muy probable), si hago un lvresize -l 100%FREE...Cogerá el espacio de los
dos discos agregados adicionalmente o sólo del tercero? Porque el
segundo es para snapshot...

Típicamente no es necesário saber qué HD usan los PE. Tu tienes un cierto número de HDs, pongamos tres HDs de 250Gb, 300Gb y 500Gb, que en total suman 250.000 PE. Esos PE los puedes asignar entre los distintos volúmenes y
snapshots como quieras, independientemente de a que HD pertenezcan.
Olvida que tienes tres HDs y quédate con que tienes 250k PE para repartir y guardar (un mismo volumen puede tener asignados PEs de distintos HDs).

Si te interesa, puedes especificar que un volumen coja PEs de un HD
concreto,
por ejemplo, para usar los HDs rápidos para BBDD y los HDs grandes para
backup. En la documentación de LVM explican cómo (yo no lo uso).
Si no especificas el HD, LVM cogerá PEs de los HDs que mejor le venga.

lvresize -l 100% cogerá todos los PE libres de todos los HDs, si no me
equivoco. Casi mejor especifica Gb y no %.

Y guarda un cierto número de PEs para poder ampliar los volúmenes según convenga. Ampliar no es problema, reducir es mas peligroso (yo tengo casi la
mitad de los HDs sin asignar).

Si me puedes aclarar un poco esto, te lo agradecería.

Espero haberme explicado.

Saludos.



Te has explicado perfectamente Marc. Por cierto, cómo me ha hecho intriga, he realizado unas pruebas.

En un disco de 250 GB como te comenté, ahí tengo montado con lvm el /var/lib/mysql.

Agregue un disco como te comenté, y he creado un snapshot de 10 GB. Ahora en teoría, sólo debería de permitirme escribir 10GB en el volúmen original puesto que el snapshot es de 10G verdad?? Pues con el comando dd he creado 3 ficheros de 10GB cada uno y los he puesto en /var/lib/mysql. En teoría no debería de haberme dejado escribir 30GB puesto que el volumen lógico era de 10, entonces que ha pasado?? He desmontado el snapshot y lo he borrado. Me he metido en /var/lib/mysql y siguen ahí los 3 ficheros de 10GB cada uno que cree.

Qué ha pasado??

Saludos.


Reply to: