17.2. Adicionando FCP-attached Logical Units (LUNs)
Veja a seguir um exemplo de como adicionar um FCP LUN.
Nota
Se estiver sendo executado no z/VM, certifique-se que o adaptador do FCP está anexado à máquina virtual do convidado do z/VM. Para realizar um multipath em ambientes de produção, teriam ao menos dois dispostivos FCP em dois adaptadores físicos diferentes (CHPIDs). Por exemplo:
CP ATTACH FC00 TO *
CP ATTACH FCD0 TO *
17.2.1. Ativando dinamicamente FCP LUN
Siga estes passos para ativar um LUN:
- Use o utilitário
cio_ignore
para remover o adaptador de FCP da lista dos dispositivos ignorados e torne-os visíveis ao Linux:# cio_ignore -r device_number
Substitua device pelo número de dispositivo do adaptador FCP. Por exemplo: - Para colocar o dispositivo de adaptador do FCP online, use o seguinte comando:
# chccwdev -e fc00
- Verifique se o WWPN necessário foi encontrado pela porta automática de escaneamen to do driver de dispositivo zfcp:
# ls -l /sys/bus/ccw/drivers/zfcp/0.0.fc00/ drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x500507630040710b drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x50050763050b073d drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x500507630e060521 drwxr-xr-x. 3 root root 0 Apr 28 18:19 0x500507630e860521 -r--r--r--. 1 root root 4096 Apr 28 18:17 availability -r--r--r--. 1 root root 4096 Apr 28 18:19 card_version -rw-r--r--. 1 root root 4096 Apr 28 18:17 cmb_enable -r--r--r--. 1 root root 4096 Apr 28 18:17 cutype -r--r--r--. 1 root root 4096 Apr 28 18:17 devtype lrwxrwxrwx. 1 root root 0 Apr 28 18:17 driver -> ../../../../bus/ccw/drivers/zfcp -rw-r--r--. 1 root root 4096 Apr 28 18:17 failed -r--r--r--. 1 root root 4096 Apr 28 18:19 hardware_version drwxr-xr-x. 35 root root 0 Apr 28 18:17 host0 -r--r--r--. 1 root root 4096 Apr 28 18:17 in_recovery -r--r--r--. 1 root root 4096 Apr 28 18:19 lic_version -r--r--r--. 1 root root 4096 Apr 28 18:17 modalias -rw-r--r--. 1 root root 4096 Apr 28 18:17 online -r--r--r--. 1 root root 4096 Apr 28 18:19 peer_d_id -r--r--r--. 1 root root 4096 Apr 28 18:19 peer_wwnn -r--r--r--. 1 root root 4096 Apr 28 18:19 peer_wwpn --w-------. 1 root root 4096 Apr 28 18:19 port_remove --w-------. 1 root root 4096 Apr 28 18:19 port_rescan drwxr-xr-x. 2 root root 0 Apr 28 18:19 power -r--r--r--. 1 root root 4096 Apr 28 18:19 status lrwxrwxrwx. 1 root root 0 Apr 28 18:17 subsystem -> ../../../../bus/ccw -rw-r--r--. 1 root root 4096 Apr 28 18:17 uevent
- Ativar o FCP LUN adicionando-o à porta (WWPN) através do qual você gostaria de acessar ao LUN:
# echo 0x4020400100000000 > /sys/bus/ccw/drivers/zfcp/0.0.fc00/0x50050763050b073d/unit_add
- Descubra o nome de dispositivo SCSI atribuído:
# lszfcp -DV /sys/devices/css0/0.0.0015/0.0.fc00/0x50050763050b073d/0x4020400100000000 /sys/bus/ccw/drivers/zfcp/0.0.fc00/host0/rport-0:0-21/target0:0:21/0:0:21:1089355792
17.2.2. Ativando FCP LUNs de forma persistente
As instruções acima descritas sobre como ativar um FCP LUNs de forma dinâmica em um sistema em execução. No entanto, tais mudanças não são persistentes e não sobrevivem uma reinicialização. Como realizar mudanças na configuração do FCP persistentes no seu sistema Linux, depende se o FCP LUNs pertence ao sistema de arquivo root. Aqueles necessários ao sistema de arquivo root precisam ser ativados durante o início do processo de inicialização pelo
initramfs
para ser capaz de montar o sistema de arquivo root. Os comandos cio_ignore
são manuseados transparentemente para configurações de dispositivos persistentes e você não precisa liberar dispositivos a partir da lista de ignorar manualmente.
17.2.2.1. O FCP LUNs que faz parte do sistema de arquivo root
O único arquivo que você modificou para adicionar o FCP LUNs que fazem parte do sistema de arquivo root é
/etc/zipl.conf
seguido por uma execução da ferramenta de carregador de inicialização do zipl. Não há mais necessidade de recriar o initramfs
.
O Red Hat Enterprise Linux fornece um parâmetro para ativar o FCP LUNs no início do processo de inicialização:
rd.zfcp=
. O valor é uma lista separada por vírgula, contendo um ID de barramento de dispositivo, o WWPN como número hexadecimal de 16 dígitos, préfixados com o 0x
, e o FCP LUN préfixado com o 0x
, e incluindo zeros à direita para ter 16 dígitos hexadecimais.
O exemplo a seguir
zipl.conf
+e para um sistema que usa volumes físicos em partições de dois FCP LUNs para um grupo de volume LVM vg_devel1
que contém um volume lógico lv_root
para o sistema de arquivo root. Para simplicidade, o exemplo mostra uma configuração sem multipath.
[defaultboot] default=linux target=/boot/ [linux] image=/boot/vmlinuz-2.6.32-19.el7.s390x ramdisk=/boot/initramfs-2.6.32-19.el7.s390x.img parameters="root=/dev/mapper/vg_devel1-lv_root rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a000000000 rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a100000000 rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!condev"
Para adicionar outro volume físico em uma partição de um terço de FCP LUN com o ID 0.0.fc00, WWPN 0x5105074308c212e9 and FCP LUN 0x401040a300000000 de barramento de dispositivo, adicione
rd_ZFCP=0.0.fc00,0x5105074308c212e9,0x401040a300000000
para a linha de parâmetros de seu kernel de inicialização em zipl.conf
, por exemplo:
[defaultboot]
default=linux
target=/boot/
[linux]
image=/boot/vmlinuz-2.6.32-19.el7.s390x
ramdisk=/boot/initramfs-2.6.32-19.el7.s390x.img
parameters="root=/dev/mapper/vg_devel1-lv_root
rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a000000000
rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a100000000
rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a300000000
rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8
SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!condev"
Execute zipl para salvar as alteracões do
etc/zipl.conf
para a próxima IPL:
# zipl -V Using config file '/etc/zipl.conf' Target device information Device..........................: 08:00 Partition.......................: 08:01 Device name.....................: sda Device driver name..............: sd Type............................: disk partition Disk layout.....................: SCSI disk layout Geometry - start................: 2048 File system block size..........: 4096 Physical block size.............: 512 Device size in physical blocks..: 10074112 Building bootmap in '/boot/' Building menu 'rh-automatic-menu' Adding #1: IPL section 'linux' (default) kernel image......: /boot/vmlinuz-2.6.32-19.el7.s390x kernel parmline...: 'root=/dev/mapper/vg_devel1-lv_root rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a000000000 rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a100000000 rd.zfcp=0.0.fc00,0x5105074308c212e9,0x401040a300000000 rd_LVM_LV=vg_devel1/lv_root rd_NO_LUKS rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYTABLE=us cio_ignore=all,!condev' initial ramdisk...: /boot/initramfs-2.6.32-19.el7.s390x.img component address: kernel image....: 0x00010000-0x007a21ff parmline........: 0x00001000-0x000011ff initial ramdisk.: 0x02000000-0x028f63ff internal loader.: 0x0000a000-0x0000a3ff Preparing boot device: sda. Detected SCSI PCBIOS disk layout. Writing SCSI master boot record. Syncing disks... Done.
17.2.2.2. O FCP LUNs que não faz parte do sistema de arquivo root
FCP LUNs que não faça parte do sistema de arquivo root, tal como discos de dados, são configurados de forma persistentes no arquivo
/etc/zfcp.conf
. Ele contém um FCP LUN por linha. Cada linha contém o ID de barramento de dispositivo do adapatador de FCP, o WWPN como número de 16 dígitos hexadecimais préfixados com o 0x
, e o FCP LUN préfixado com o 0x
, incluindo zeros à direita para ter 16 dígitos hexadecimais, separados por um espaço ou aba. Entradas no /etc/zfcp.conf
são ativados e configurados pelo udev quando um adaptador do FCP é adicionado ao sistema. Durante a inicialização, todos os adaptadores FCP visíveis ao sistema são adicionados e disparam o udev.
Exemplo de conteúdo de
/etc/zfcp.conf
:
0.0.fc00 0x5105074308c212e9 0x401040a000000000 0.0.fc00 0x5105074308c212e9 0x401040a100000000 0.0.fc00 0x5105074308c212e9 0x401040a300000000 0.0.fcd0 0x5105074308c2aee9 0x401040a000000000 0.0.fcd0 0x5105074308c2aee9 0x401040a100000000 0.0.fcd0 0x5105074308c2aee9 0x401040a300000000
Modificações de
/etc/zfcp.conf
tornam-se efetivas somente após uma reinicialização do sistema ou após a adição dinâmica de um novo canal FCP ao alterar o sistema de configuração E/S (por exemplo, um canal esta anexado sob z/VM). Como alternativa, você pode iniciar a ativação de uma nova entrada em /etc/zfcp.conf
para um adaptador FCP que foi ativado previamente, ao executar os seguintes comandos:
- Use o utilitário
cio_ignore
para remover o adaptador de FCP da lista dos dispositivos ignorados e torne-os visíveis ao Linux:# cio_ignore -r device_number
Substitua device pelo número de dispositivo do adaptador FCP. Por exemplo:# cio_ignore -r fcfc
- Para disparar o evento que ativa a mudança, emita:
echo add > /sys/bus/ccw/devices/device-bus-ID/uevent
Por exemplo:echo add > /sys/bus/ccw/devices/0.0.fcfc/uevent