GNU/Linux >> Tutoriales Linux >  >> Cent OS

Uso de ATA a través de Ethernet (AoE) en CentOS 6.3 (iniciador y destino)

Esta guía explica cómo puede configurar un objetivo AoE y un iniciador (cliente) de AoE, ambos con CentOS 6.3. AoE significa "ATA sobre Ethernet" y es un protocolo de red de área de almacenamiento (SAN) que permite a los iniciadores de AoE utilizar dispositivos de almacenamiento en el objetivo de AoE (remoto) mediante un cableado Ethernet normal. "Remoto" en este caso significa "dentro de la misma LAN" porque AoE no se puede enrutar fuera de una LAN (esta es una gran diferencia en comparación con iSCSI). Para el iniciador de AoE, el almacenamiento remoto parece un disco duro normal conectado localmente.

1 nota preliminar

Estoy usando dos servidores CentOS 6.3 aquí:

  • servidor1.ejemplo.com (Iniciador):dirección IP 192.168.0.100
  • servidor2.ejemplo.com (Objetivo):dirección IP 192.168.0.101

2 Habilitar repositorios adicionales

servidor1/servidor2:

Primero importamos las claves GPG para paquetes de software:

rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY*

Luego habilitamos el repositorio EPEL6 en nuestros dos sistemas CentOS:

rpm --import https://fedoraproject.org/static/0608B895.txt
cd /tmp
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm
rpm -ivh epel-release-6-7.noarch.rpm
yum install yum-priorities

Edite /etc/yum.repos.d/epel.repo...

vi /etc/yum.repos.d/epel.repo

... y agregue la línea prioridad=10 a la sección [epel]:

El paquete vblade está disponible solo desde EPEL5 repositorio, por lo tanto debemos agregar la siguiente sección a /etc/yum.repos.d/epel.repo, pero solo en server2:

servidor2:

vi /etc/yum.repos.d/epel.repo

Asegúrese de usar la prioridad =100 y de deshabilitar las comprobaciones de GPG con gpgcheck =0:

[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
priority=10
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
[...]

3 Cargando el módulo kernel aoe en ambos sistemas

servidor1/servidor2:

Antes de comenzar, debemos asegurarnos de que el kernel sea compatible con AoE:

grep ATA_OVER /boot/config-`uname -r`

Esto debería mostrar algo como esto:

[[email protected] ~]# grep ATA_OVER /boot/config-`uname -r`
CONFIG_ATA_OVER_ETH=m
[[email protected] ~]#

Esto significa que AoE se creó como un módulo de kernel. Verifiquemos si el módulo ya está cargado:

lsmod | grep aoe

Si no obtiene nada de vuelta, significa que no está cargado. En este caso podemos cargarlo de la siguiente manera:

modprobe aoe

Verifiquemos nuevamente si el módulo está cargado:

lsmod | grep aoe
[[email protected] ~]# lsmod | grep aoe
aoe                    26466  0
[[email protected] ~]#

Para que el módulo se cargue automáticamente cuando se inicia el sistema, agregamos la siguiente línea a /etc/rc.local:

vi /etc/rc.local
[...]
[epel5]
name=Extra Packages for Enterprise Linux 5 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-5&arch=$basearch
failovermethod=priority
enabled=1
priority=100
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6

4 Configuración del objetivo (servidor2)

servidor2:

Primero configuramos el objetivo (servidor2):

yum install vblade

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 vg_server2:

lvcreate -L20G -n storage1 vg_server2

(Si desea utilizar un archivo de imagen, puede crearlo de la siguiente manera:

mkdir /storage
dd if=/dev/zero of=/storage/storage1.img bs=1024k count=20000

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:

vbladed 0 1 eth0 /dev/vg_server2/storage1

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

ifconfig

).

Para iniciar la exportación automáticamente siempre que inicie el destino, abra /etc/rc.local...

vi /etc/rc.local

... y agregue la siguiente línea (¡después de la línea modprobe aoe!):

[...]
modprobe aoe
[...]

5 Configuración del iniciador (servidor1)

servidor1:

En server1, instalamos el iniciador:

yum install aoetools

Ahora comprobamos qué dispositivos de almacenamiento AoE están disponibles:

aoe-discover

El comando

aoe-stat

ahora debería mostrar los dispositivos de almacenamiento:

[[email protected] ~]# aoe-stat
      e0.1        21.474GB   eth0 up
[[email protected] ~]#

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 Dec 11 16:24 .
drwxr-xr-x. 20 root root    3620 Dec 11 16:00 ..
c-w--w----.  1 root disk 152,  3 Dec 11 16:00 discover
brw-rw----.  1 root disk 152, 16 Dec 11 16:24 e0.1
cr--r-----.  1 root disk 152,  2 Dec 11 16:00 err
c-w--w----.  1 root disk 152,  6 Dec 11 16:00 flush
c-w--w----.  1 root disk 152,  4 Dec 11 16:00 interfaces
c-w--w----.  1 root disk 152,  5 Dec 11 16:00 revalidate
[[email protected] ~]#

Para usar ese dispositivo, debemos formatearlo:

fdisk /dev/etherd/e0.1

[[email protected] ~]# fdisk /dev/etherd/e0.1
El dispositivo no contiene una tabla de particiones válida de DOS, ni una etiqueta de disco Sun, SGI u OSF
Creación de una nueva etiqueta de disco DOS con identificador de disco 0xed572fd4 .
Los cambios permanecerán solo en la memoria, hasta que decidas escribirlos.
Después de eso, por supuesto, el contenido anterior no será recuperable.


El número de cilindros para este disco está establecido en 2610.
No hay nada de malo en eso, pero es mayor que 1024,
y en ciertas configuraciones podría causar problemas con:
1) software que se ejecuta en el momento del arranque (p. ej., versiones antiguas de LILO)
2) software de arranque y partición desde otros sistemas operativos
   (p. ej., DOS FDISK, OS/2 FDISK)
Advertencia:indicador no válido 0x0000 de la tabla 4 de particiones se corregirá mediante w(rite)

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
Usando el valor predeterminado 1
Último cilindro, +cilindros o +tamaño{K,M,G} (1-2610, predeterminado 2610): <-- ENTRAR
Usando el valor predeterminado 2610

Comando (m para ayuda): <-- t
Partición seleccionada 1
Código hexadecimal (escriba L para listar los códigos): <-- L

0 vacío 1e oculto W95 Fat1 80 Old Minix Bf Solaris
1 Fat12 24 NEC DOS 81 Minix/Old Lin C1 DRDOS/SEC (grasa-
2 Root Xenix 39 Plan 9 82 Linux Swap/So C4 DRDOS /seg (grasa-
3 Xenix USR 3C Partitionmagic 83 Linux C6 DRDOS /SEC (Fat-
4 Fat16 <32m 40 Venix 80286 84 OS /2 oculto C:C7 Syrinx
5 extendido 41 extendido 41 PPC Prep Boot 85 Linux Extended DA DA DATOS Non-FS
6 FAT16 42 SFS 86 NTFS Conjunto de volumen DB CP/M/CTOs/.
7 HPFS/NTFS 4D QNX4.X 87 NTFS SET DE DELL UTILIDAD
 8  AIX              4e  QNX4.x 2nd part 88  Linux texto sin formato df  BootIt
9 AIX Bootable 4F Qnx4.x 3ra Parte 8e Linux LVM E1 DOS Access
A OS /2 Boot Manag 50 Ontrack DM 93 AMEBA E3 DOS R /O
B W95 FAT32 51 Ontrack DM6 Aux 94 AMEBA BBT      e4  SpeedStor
 c  W95 FAT32 (LBA) 52  CP/M            9f BSD/OS                  eb  BeOS fs
 e  W95 FAT16 (LBA) 53  OnTrack DM6 Aux a0    Bree /Think Ext'd (LBA) 54 OntrackDM6 A5 FreeBSD EF EFI (Fat-12/16/
10 Opus 55 EZ-Drive A6 OpenBSD F0 Linux/PA-RISC B
11 Hidden Fat12 56 Golden Bow A7 A7 f1 speedstor
12 Compaq Diagnostic 5C Priam Edisk A8 Darwin UFS F4 Speedstor
14 Hidden Fat16 <3 61 Speedstor A9 NetBSD F2 DOS Secundario
16 Hidden Fat16 63 Gnu Hurd o Sys Ab Darwin Boot FB VMware VMFS
17  Oculto HPFS/NTF 64  Novell Netware  b7  BSDI fs          fc  VMware VMKCORE
18  AST SmartSleep  65  Novell Netwa re  b8 BSDI swap       fd  Linux raid auto
1b  Hidden W95 FAT3 70 DiskSecure Mult bb  Boot Wizard hid fe LANstep
1c  Hidden W95 FAT3 75  PC/IX           código be Solaris / tipo de arranque L para listar códigos): <-- 83

Comando (m para ayuda): <-- w
¡La tabla de particiones se ha alterado!

Llamando ioctl () para volver a leer la tabla de particiones.
Sincronizando discos.
[[email protected] ~]#

Luego, hay un nuevo dispositivo /dev/etherd/e0.1p1 que puedes ver en la salida de

ls -l /dev/etherd/
[[email protected] ~]# ls -l /dev/etherd/
total 0
c-w--w----. 1 root disk 152,  3 Dec 11 16:00 discover
brw-rw----. 1 root disk 152, 16 Dec 11 16:27 e0.1
brw-rw----. 1 root disk 152, 17 Dec 11 16:27 e0.1p1
cr--r-----. 1 root disk 152,  2 Dec 11 16:00 err
c-w--w----. 1 root disk 152,  6 Dec 11 16:00 flush
c-w--w----. 1 root disk 152,  4 Dec 11 16:00 interfaces
c-w--w----. 1 root disk 152,  5 Dec 11 16:00 revalidate
[[email protected] ~]#

Ahora creamos un sistema de archivos en /dev/etherd/e0.1p1...

mkfs.ext4 /dev/etherd/e0.1p1

... y montarlo con fines de prueba:

mount /dev/etherd/e0.1p1 /mnt

Ahora debería ver el nuevo dispositivo en las salidas de...

mount
[[email protected] ~]# mount
/dev/mapper/vg_server1-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/etherd/e0.1p1 on /mnt type ext4 (rw)
[[email protected] ~]#

... y

df -h
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server1-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
/dev/etherd/e0.1p1     20G  151M   19G   1% /mnt
[[email protected] ~]#

Puedes desmontarlo así:

umount /mnt

Para que el dispositivo se monte automáticamente en el momento del arranque, p. en el directorio /almacenamiento, creamos ese directorio...

mkdir /storage

... y agregue la siguiente línea a /etc/fstab:

vi /etc/fstab
[...]
vbladed 0 1 eth0 /dev/vg_server2/storage1
[...]

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 (¡después de la línea modprobe aoe!):

[...]
/dev/etherd/e0.1p1       /storage        ext4    defaults,auto,_netdev 0 0

Para fines de prueba, ahora puede reiniciar el sistema:

reboot

Después del reinicio, el dispositivo debe estar montado:

mount
[[email protected] ~]# mount
/dev/mapper/vg_server1-LogVol00 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)
/dev/etherd/e0.1p1 on /storage type ext4 (rw,_netdev)
[[email protected] ~]#
df -h
[[email protected] ~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/vg_server1-LogVol00
                      9.7G  1.7G  7.5G  18% /
tmpfs                 499M     0  499M   0% /dev/shm
/dev/sda1             504M   39M  440M   9% /boot
/dev/etherd/e0.1p1     20G  151M   19G   1% /storage
[[email protected] ~]#

6 Enlaces

  • Definición del protocolo AoE:http://www.coraid.com/RESOURCES/AoE-Protocol-Definition
  • CentOS:http://www.centos.org/

Cent OS
  1. Uso de ATA a través de Ethernet (AoE) en Ubuntu 12.10 (iniciador y destino)

  2. Uso de ATA a través de Ethernet (AoE) en Debian Squeeze (iniciador y destino)

  3. Configurar ATA sobre Ethernet (AoE) en Debian 8 (iniciador y destino)

  4. CentOS / RHEL 6,7:Cómo eliminar un destino iSCSI en el iniciador (cliente iSCSI)

  5. Cómo configurar la formación de equipos de interfaz de red en CentOS/RHEL 7 y 8

Monitoreo y detección de archivos modificados usando Tripwire en CentOS 7

Cómo instalar y administrar paquetes en CentOS usando RPM

Instalación y uso de Perf en Ubuntu y CentOS

Cómo instalar Webmin en CentOS 8 y Rocky Linux 8

Cómo configurar el objetivo iSCSI usando targetcli en CentOS / RHEL 7

Cómo configurar una interfaz de canal de fibra a través de Ethernet (FCoE) en CentOS/RHEL

    [...]
    aoe-discover
    sleep 5
    mount -a
    [...]