Pasar Docker de devicemapper a overlay2

Si usas Fedora, seguramente de fábrica vengas utilizando el motor de almacenamiento devicemapper, que supuestamente es de los más estables, pero que en la práctica tiene serios problemas de rendimiento que no parece que vayan a solucionarse de aquí a poco.

Si ya lo configuraste con docker-storage-setup o similar, y ahora quieres cambiar a overlay2, sigue esta guía.

Continúa leyendo Pasar Docker de devicemapper a overlay2

Anuncios

Cómo crear una partición cifrada con LUKS y LVM en tu ordenador

En mi caso, me interesa que esta partición no esté montada por defecto, para que no me pida la contraseña cada vez que se inicia el ordenador. Ya se la diré yo cuando me haga falta.

Ya expliqué en su día cómo quitar espacio de un volúmen lógico de LVM para dárselo a Docker, así que si no tienes espacio LVM libre, puedes seguir esas instrucciones, pero nos saltaremos la parte de Docker.

Ahora lo que nos interesa es crear un volúmen lógico encriptado. Para encriptarlo, usaremos LUKS.

Continúa leyendo Cómo crear una partición cifrada con LUKS y LVM en tu ordenador

Aumentar tamaño de una partición LUKS

LUKS es un formato de archivos encriptado, que exige una contraseña para desencriptarse. Sin dicha clave, no se puede saber el contenido de un disco duro.

Es compatible con LVM, pero ¿qué sucede si quiero ampliar una partición LUKS que está en un volúmen lógico LVM?

Continúa leyendo Aumentar tamaño de una partición LUKS

Configurar docker-storage-setup

Recientemente Docker añadió opciones para configurar el método de almacenamiento de los volúmenes. El método por defecto (dispositivos loop) no se considera muy apropiado para entornos de producción, así que veamos cómo configurarlo para que use LVM directamente.

Este ejercicio está realizado en Fedora 23, y asume que ya tienes configurado el ordenador con particionado LVM.

Continúa leyendo Configurar docker-storage-setup

Quitar tamaño a partición LVM Swap y dárselo a la partición raíz

Tengo una partición Swap en LVM de 6 GB que quiero cambiar a 2 GB.

# swapoff /dev/mapper/fedora-swap
# lvm lvresize --size 2G /dev/mapper/fedora-swap
# mkswap /dev/mapper/fedora-swap
# swapon /dev/mapper/fedora-swap

Ahora quiero asignar el espacio sobrante a la partición raíz.

# lvm lvresize --extents +100%FREE --resizefs /dev/mapper/fedora-root

Insatalar ownCloud en CentOS

Una vez montado el servidor CentOS 6 a mi gusto, ahora voy a configurar ownCloud a mi gusto también. Descargar repositorio comunitario de ownCloud, ya que no está en los de CentOS, e instalarlo:

# cd /etc/yum.repos.d
# wget http://download.opensuse.org/repositories/isv:/ownCloud:/community/CentOS_CentOS-6/isv:ownCloud:community.repo
# yum install owncloud-3rdparty

Crear una partición ext4 para los datos de ownCloud:

# lvm lvcreate --size 10G --name owncloud_data vg_srv
# mkfs -T ext4 /def/mapper/vg_srv-owncloud_data

Añadirla a fstab para que se monte automáticamente, y montarla:

# echo "/dev/mapper/vg_srv-owncloud_data /var/www/html/owncloud/data ext4 defaults 1 3" >> /etc/fstab
# mount /dev/mapper/vg_srv-owncloud_data

Asignarle corregir el usuario y permisos de la partición:

# chown apache:apache /var/www/html/owncloud/data
# chmod -R ug=rwx,o= /var/www/html/owncloud/data

Corregir el contexto SELinux (ponerle el mismo que el que tiene la carpeta config):

# chcon --reference /var/www/html/owncloud/config /var/www/html/owncloud/data

Cómo reducir el tamaño de la partición (volumen lógico) LVM root

¿Qué es LVM?

Ya existen explicaciones técnicas, así que simplemente digamos que permite usar el total de tus discos duros a tu antojo, pudiendo cambiar el tamaño de las particiones sin reiniciar la máquina, hacer snapshots, o haciendo particiones repartidas en varios discos duros. Estas son solo algunas de las ventajas que ofrece.

Por ejemplo, si te quedas sin espacio en los discos duros, añades otro más, expandes el volumen lógico (la partición), y es como si tuvieras un solo disco duro más grande.

Cambiando el tamaño de la partición raíz

En mi caso quería reducir el tamaño del volumen lógico usado por la partición raíz (/), para asignarlo a una nueva partición.

Para ello primero necesito saber cuánto tiene ocupado, para no quitarle más de lo necesario:

$ df --human-readable
S.ficheros Size Used Avail Use% Montado en
/dev/mapper/vg_srv-lv_root
49G 2,1G 46G 5% /
tmpfs 496M 0 496M 0% /dev/shm
/dev/sda1 485M 52M 408M 12% /boot
/dev/mapper/vg_srv-lv_home
4,8G 138M 4,4G 3% /home

De modo que en vg_rsv-lv_root tengo usados 2,1GB y me sobran 46GB. La dejaré con 5GB, que debería sobrarme, y aprovecharé el resto del espacio.

Sin embargo, mientras que para aumentar el tamaño de una partición no hace falta desmontarla (si usas un sistema de ficheros que lo soporte, como ext3/4), para reducirlo sí. Claro, no puedo desmontar / o me quedo sin ordenador.

Para solventar este problema, inserta el CD Live de la distro que instalaste y arranca sin montar ningún disco. En mi caso usé CentOS, así que reiniciaré con el CD metido y seleccionaré la opción Boot (Text Mode). Cuando arranque me pedirá un usuario, que será root, sin contraseña. Ahora sí que podré reducir el tamaño de la partición raíz a mi antojo.

# lvm lvresize --resizefs --size 5G vg_srv/lv_root

Nota que para referirme a la partición he usado una ruta especial de LVM, que es grupo-de-volúmenes/volumen-lógico, pero podríamos haber usado la ruta física como /dev/mapper/vg_srv-lv_root.

Hecho esto, saca el CD, reinicia, y ya deberías tener tu nueva partición raíz de 5GB.

Ahora puedes seguir estas instrucciones para crear nuevos volúmenes lógicos y aprovechar ese espacio.