Podemos utilizar volúmenes lógicos no utilizados, archivos de imagen, discos duros (p. ej., /dev/sdb), particiones de disco duro (p. ej., /dev/sdb1) o dispositivos RAID (p. ej., /dev/md0) para el almacenamiento. En este ejemplo, crearé un volumen lógico de 20 GB llamado almacenamiento1 en el grupo de volúmenes vg0:
(Si desea utilizar un archivo de imagen, puede crearlo de la siguiente manera:
Esto crea el archivo de imagen /storage/storage1.img con un tamaño de 20 GB.
Ahora exportamos nuestro dispositivo de almacenamiento de la siguiente manera:
El primer número (0) es el número de estante (mayor), el segundo (1) el número de ranura (menor), cambia estos números a tu gusto. Cada dispositivo AoE se identifica mediante un par mayor/menor que debe ser único (si está exportando varios dispositivos), con mayor entre 0 y 65535 y menor entre 0 y 255. La parte eth0 le dice a vbladed qué dispositivo ethernet usar (si su dispositivo ethernet es eth1, entonces use eth1; puede conocer sus dispositivos ethernet ejecutando
).
Para iniciar la exportación automáticamente siempre que inicie el destino, abra /etc/rc.local...
... y agregue la siguiente línea (antes de la línea de salida 0):
[...]vbladed 0 1 eth0 /dev/vg0/storage1[...] |
4 Configurando el iniciador (servidor1)
servidor1:
En server1, instalamos el iniciador:
apt-get install aoetools
Ahora comprobamos qué dispositivos de almacenamiento AoE están disponibles:
aoe-descubrir
El comando
aoe-stat
ahora debería mostrar los dispositivos de almacenamiento:
[correo electrónico protegido]:~# aoe-stat
e0.1 21.474 GB eth0 up
[correo electrónico protegido]:~#
En este punto, tenemos un nuevo dispositivo de bloque disponible en la caja del cliente llamado /dev/etherd/e0.1. Si echamos un vistazo al árbol /dev, aparece un nuevo nodo:
ls -la /dev/etherd/
[email protected]:~# ls -la /dev/etherd/
total 0
drwxr-xr-x 2 root root 160 2012-10-01 16:24 .
drwxr-xr-x 16 raíz raíz 3800 2012-10-01 16:21 ..
c-w--w---- 1 disco raíz 152, 3 2012-10-01 16:21 descubrir
brw-rw---- 1 disco raíz 152, 16 2012-10-01 16:24 e0.1
cr--r----- 1 disco raíz 152, 2 2012-10-01 16:21 err
c-w--w---- 1 disco raíz 152, 6 2012-10-01 16:21 flush
c-w--w---- 1 disco raíz 152, 4 2012-10 -01 16:21 interfaces
c-w--w---- 1 disco raíz 152, 5 2012-10-01 16:21 revalidar
[correo electrónico protegido]:~#
En la salida de
fdisk -l
ahora también debería encontrar el nuevo disco duro:
[email protected]:~# fdisk -l
Disco /dev/sda: 32,2 GB, 32212254720 bytes
255 cabezas, 63 sectores/pista, 3916 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Tamaño del sector (lógico/físico): 512 bytes / 512 bytes
Tamaño de E/S (mínimo/óptimo): 512 bytes / 512 bytes
Identificador de disco:0x00016be9
Bloques de arranque del dispositivo Bloques de ID del sistema
/dev /sda1*1 32 248832 83 Linux
La partición 1 no termina en el límite del cilindro.
/dev/sda2 32 3917 31205377 5 extendido
/dev/sda5 32 3917 31205376 8e Linux LVM
disco /dev/etherd/e0.1:21.5 GB, 21474836480 bytes
255 cabezas, 63 sectores/pista, 2610 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Tamaño del sector (lógico/físico): 512 bytes / 512 bytes
Tamaño de E/S ( mínimo/óptimo): 512 bytes / 512 bytes
Identificador de disco: 0x00000000
Di sk /dev/etherd/e0.1 no contiene una tabla de particiones válida
[email protected]:~#
Para usar ese dispositivo, debemos formatearlo:
fdisk /dev/etherd/e0.1
[correo electrónico protegido]:~# fdisk /dev/etherd/e0.1
El dispositivo no contiene una tabla de particiones de DOS válida, ni una etiqueta de disco de Sun, SGI o OSF
Creación de una nueva etiqueta de disco de DOS con el identificador de disco 0x3093ae28.
Los cambios permanecerán solo en la memoria, hasta que decidas escribirlos.
Después de eso, por supuesto, el contenido anterior no será recuperable.
Advertencia:indicador no válido 0x0000 de la tabla de particiones 4 se corregirá con w(rite)
ADVERTENCIA:el modo compatible con DOS está en desuso. Se recomienda encarecidamente
desactivar el modo (comando 'c') y cambiar las unidades de visualización a
sectores (comando 'u').
Comando (m para ayuda):<-- n
Comando acción
e extendido
p partición principal (1-4)
<-- p
Número de partición (1-4): <- - 1
Primer cilindro (1-2610, predeterminado 1): <-- ENTRAR
Usar valor predeterminado 1
Último cilindro, +cilindros o +tamaño{K,M,G} (1 -2610, predeterminado 2610): <-- ENTRAR
Usando valor predeterminado 2610
Comando (m para ayuda): <-- t
Partición seleccionada 1
Hex código (escriba L para listar códigos): <-- 83
Comando (m para ayuda): <-- w
¡La tabla de particiones se ha alterada!
Llamar ioctl() para volver a leer la tabla de particiones.
Sincronizar discos.
[email protected]:~#
Posteriormente, la salida de
fdisk -l
debería tener el siguiente aspecto:
[email protected]:~# fdisk -l
Disco /dev/sda: 32,2 GB, 32212254720 bytes
255 cabezas, 63 sectores/pista, 3916 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Tamaño del sector (lógico/físico): 512 bytes / 512 bytes
Tamaño de E/S (mínimo/óptimo): 512 bytes / 512 bytes
Identificador de disco:0x00016be9
Bloques de arranque del dispositivo Bloques de ID del sistema
/dev /sda1*1 32 248832 83 Linux
La partición 1 no termina en el límite del cilindro.
/dev/sda2 32 3917 31205377 5 extendido
/dev/sda5 32 3917 31205376 8e Linux LVM
disco /dev/etherd/e0.1:21.5 GB, 21474836480 bytes
255 cabezas, 63 sectores/pista, 2610 cilindros
Unidades = cilindros de 16065 * 512 = 8225280 bytes
Tamaño del sector (lógico/físico): 512 bytes / 512 bytes
Tamaño de E/S ( mínimo/óptimo): 512 bytes / 512 bytes
Identificador de disco: 0x3093ae28
Arranque del dispositivo Inicio Fin Bloques Id Sistema
/dev/etherd/e0.1p1 1 2610 20964793+ 83 Linux~#
Ahora creamos un sistema de archivos en /dev/etherd/e0.1p1... mkfs.ext4 /dev/etherd/e0.1p1
... y montarlo con fines de prueba:
montar /dev/etherd/e0.1p1 /mnt
Ahora debería ver el nuevo dispositivo en las salidas de...
montar
[email protected]:~# mount
/dev/mapper/server1-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec ,nosuid,nodev)
ninguno en /sys escriba sysfs (rw,noexec,nosuid,nodev)
ninguno en /sys/fs/fuse/connections escriba fusectl (rw)
ninguno en / sys/kernel/debug type debugfs (rw)
ninguno activado /sys/kernel/security type securityfs (rw)
ninguno activado /dev type devtmpfs (rw,mode=0755)
ninguno activado /dev/pts escriba devpts (rw,noexec,nosuid,gid=5,mode=0620)
ninguno en /dev/shm escriba tmpfs (rw,nosuid,nodev)
ninguno en /var/run escriba tmpfs (rw,nosuid,mode=0755)
ninguno en /var/lock escriba tmpfs (rw,noexec,nosuid,nodev)
ninguno en /lib/init/rw escriba tmpfs (rw,nosuid ,mode=0755)
ninguno en /var/lib/ureadahead/debugfs escriba debugfs (rw,relatime)
/dev/sda1 en /boot escriba ext2 (rw)
/dev/etherd /e0.1p1 en /mnt escriba ext4 (rw)
[email protected]:~#
... y
df-h
[email protected]:~# df -h
Sistema de archivos Tamaño Usado Disponible Uso% Montado en
/dev/mapper/server1-root
18G 838M 16G /<> ninguno 243m 180k 242m 1%/dev
ninguno 247m 0 247m 0%/dev/shm
ninguno 247m 32k 247m 1%/var/run
ninguno 247m 0 247m 0%/var/ bloqueo
ninguno 247m 0 247m 0%/lib/init/rw
ninguno 18g 838m 16g 5%/var/lib/ureadehead/debugfs
/dev/sda1 228m 17m 199m 8%/botín
/dev/etherd/e0.1p1 20G 172M 19G 1 % /mnt
[correo electrónico protegido]:~#
Puedes desmontarlo así:
montar /mnt
Para que el dispositivo se monte automáticamente en el momento del arranque, p. en el directorio /almacenamiento, creamos ese directorio...
mkdir /almacenamiento
... y agregue la siguiente línea a /etc/fstab:
vi /etc/fstab
[...]/dev/etherd/e0.1p1 /storage ext4 defaults,auto,_netdev 0 0 |
Esto por sí solo no es suficiente para tener el dispositivo montado en el momento del arranque porque las cosas de AoE se cargan después de leer /etc/fstab. Por lo tanto abrimos /etc/rc.local...
vi /etc/rc.local
... y agregue las siguientes líneas (antes de la línea de salida 0):
[...]aoe-discoversleep 5mount -a[...] |
Para fines de prueba, ahora puede reiniciar el sistema:
reiniciar
Después del reinicio, el dispositivo debe estar montado:
montar
[email protected]:~# mount
/dev/mapper/server1-root on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec ,nosuid,nodev)
ninguno en /sys escriba sysfs (rw,noexec,nosuid,nodev)
ninguno en /sys/fs/fuse/connections escriba fusectl (rw)
ninguno en / sys/kernel/debug type debugfs (rw)
ninguno activado /sys/kernel/security type securityfs (rw)
ninguno activado /dev type devtmpfs (rw,mode=0755)
ninguno activado /dev/pts escriba devpts (rw,noexec,nosuid,gid=5,mode=0620)
ninguno en /dev/shm escriba tmpfs (rw,nosuid,nodev)
ninguno en /var/run escriba tmpfs (rw,nosuid,mode=0755)
ninguno en /var/lock escriba tmpfs (rw,noexec,nosuid,nodev)
ninguno en /lib/init/rw escriba tmpfs (rw,nosuid ,mode=0755)
ninguno en /var/lib/ureadahead/debugfs escriba debugfs (rw,relatime)
/dev/sda1 en /boot escriba ext2 (rw)
/dev/etherd /e0.1p1 en /tipo de almacenamiento ext4 (rw,_netdev)
[email protected]:~#
df-h
[email protected]:~# df -h
Sistema de archivos Tamaño Usado Disponible Uso% Montado en
/dev/mapper/server1-root
18G 838M 16G /<> ninguno 243m 180k 242m 1%/dev
ninguno 247m 0 247m 0%/dev/shm
ninguno 247m 32k 247m 1%/var/run
ninguno 247m 0 247m 0%/var/ bloqueo
ninguno 247m 0 247m 0%/lib/init/rw
ninguno 18g 838m 16g 5%/var/lib/ureadehead/debugfs
/dev/sda1 228m 17m 199m 8%/botín
/dev/etherd/e0.1p1 20G 172M 19G 1 % /almacenamiento
[email protected]:~#
5 Enlaces
- Definición del protocolo AoE:http://www.coraid.com/RESOURCES/AoE-Protocol-Definition
- Ubuntu:http://www.ubuntu.com/