Monte o volume iSCSI no sistema operacional Ubuntu
Saiba como montar um volume Block Storage for Classic em Ubuntu com E/S multipath para acesso redundante e de alto desempenho ao armazenamento.
Siga o tutorial para montar um volume IBM Cloud® Block Storage for Classic em um servidor com um sistema operacional Ubuntu. Você criará duas conexões de uma interface de rede do seu host para dois endereços IP de destino da matriz de armazenamento.
Para obter mais informações sobre como o serviço de Iniciador de Serviços de Rede ( iSCSI ) funciona no sistema operacional Windows Server 2008 R2 ( Ubuntu ), consulte a documentação do iSCSI Initiator(ou Cliente). Se você estiver usando outro sistema operacional Linux®, consulte a documentação da sua distribuição específica e certifique-se de que o multipath seja compatível com o Asymmetric Logical Unit Access (ALUA) para priorização de caminhos.
Antes de Iniciar
-
Crie um servidor virtual para o Classic no console, a partir da CLI, com a API ou o Terraform.
-
Solicite um volume de armazenamento em bloco no mesmo data center.
-
Certifique-se de que o host esteja autorizado a acessar o volume Block Storage for Classic. Para mais informações, veja Autorizando o host no console Autorizando o host da CLI Autorizando o host com Terraform. Após a conclusão da autorização, anote o nome de usuário, a senha e as informações do IQN do host.
Se vários hosts montarem o mesmo volume Block Storage for Classic sem serem gerenciados de forma cooperativa, seus dados correm risco de distorção. A corrupção de volume pode ocorrer se mudanças forem feitas no volume por vários hosts ao mesmo tempo. Você precisa de um sistema de arquivos de disco compartilhado e com reconhecimento de cluster para evitar a perda de dados, como o Microsoft Cluster Shared Volumes ( CSV ), Red Hat Global File System ( GFS2 ), VMware® VMFS e outros. Para obter mais informações, consulte a documentação do seu sistema operacional.
Antes de começar a configurar o site iSCSI,, certifique-se de que as interfaces de rede estejam definidas e configuradas corretamente para que o pacote open-iscsi funcione corretamente, especialmente durante a inicialização. Nas versões mais
recentes do Ubuntu, a principal ferramenta para definir informações de endereço de rede é o Netplan. Ele usa um arquivo de configuração YAML
para definir as configurações de rede, substituindo métodos antigos como /etc/network/interfaces. O Netplan pode ser configurado com a linha de comando ou por meio do site NetworkManager em ambientes de desktop.
É melhor executar o tráfego de armazenamento em uma VLAN, que efetua bypass do firewall. A execução do tráfego de armazenamento por meio de firewalls de software aumenta a latência e afeta negativamente o desempenho do armazenamento. Para obter mais informações sobre o roteamento do tráfego de armazenamento para a sua própria interface de VLAN, consulte as Perguntas mais frequentes.
Instalar os utilitários iSCSI e de caminhos múltiplos
Certifique-se de que seu sistema esteja atualizado e inclua os pacotes open-iscsi e multipath-tools. Use os comandos a seguir para instalar os pacotes.
-
Atualize o sistema operacional:
apt-get update -
Instale o
open-iscsi.sudo apt install open-iscsiQuando o pacote é instalado, ele cria os dois arquivos a seguir.
/etc/iscsi/iscsid.conf/etc/iscsi/initiatorname.iscsi
-
Inicie os serviços:
systemctl enable open-iscsisystemctl enable iscsid -
Instale o
multipath-tools.sudo apt install multipath-tools
Configurar ISCSI
Atualização do nome do iniciador
-
Verifique se o arquivo
/etc/iscsi/initiatorname.iscsiexiste e examine seu conteúdo.cat /etc/iscsi/initiatorname.iscsiroot@vsi4classicubuntu:~# cat /etc/iscsi/initiatorname.iscsi GenerateName=yes -
Usando um editor de texto, atualize o arquivo
/etc/iscsi/initiatorname.iscsicom o IQN do console IBM Cloud®. Insira o valor no formato a seguir.InitiatorName=<IQN-value-from-the-portal>
Configurando credenciais
-
Certifique-se de que o
iscsid.confarquivo existe verificando seu conteúdo.cat /etc/iscsi/iscsid.conf -
Usando o editor de texto, descomente e edite as seguintes entradas. Você pode encontrar o nome de usuário e a senha no console IBM Cloud®.
node.session.auth.authmethod = CHAP node.session.auth.username = <Username-value-from-Portal> node.session.auth.password = <Password-value-from-Portal> discovery.sendtargets.auth.authmethod = CHAP discovery.sendtargets.auth.username = <Username-value-from-Portal> discovery.sendtargets.auth.password = <Password-value-from-Portal>Mantenha as demais configurações do CHAP comentadas. O armazenamento do
IBM Cloud®utiliza apenas autenticação unidirecional. Não ative o CHAP Mútuo. -
Reinicie o serviço iscsi para que as mudanças entrem em vigor.
systemctl restart iscsid.service
Para obter mais informações, consulte os manuais Ubuntu- iscsid e Ubuntu- systemctl.
Configurar os caminhos múltiplos
-
Depois de instalar o utilitário multipath, você pode verificar o conteúdo padrão do arquivo
multipath.conf.cat /etc/multipath.conf -
Modifique os valores padrão de
/etc/multipath.confcom um editor de texto, substituindo-os pelo conteúdo do seguinte trecho.defaults { user_friendly_names no max_fds max flush_on_last_del yes queue_without_daemon no dev_loss_tmo infinity fast_io_fail_tmo 5 } # All data in the following section must be specific to your system. blacklist { wwid "SAdaptec*" devnode "^hd[a-z]" devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^cciss.*" } devices { device { vendor "NETAPP" product "LUN" path_grouping_policy group_by_prio features "3 queue_if_no_path pg_init_retries 50" prio "alua" path_checker tur failback immediate path_selector "round-robin 0" hardware_handler "1 alua" rr_weight uniform rr_min_io 128 }A seção de configurações padrão do arquivo de configuração configura o sistema de forma que os nomes dos dispositivos multipath tenham o formato
/dev/mapper/mpathn, em quempathné o número WWID (World Wide Identifier) do dispositivo. Para obter mais informações, consulte os manuais Ubuntu-multipath.conf. -
Salve o arquivo de configuração e saia do editor.
-
Inicie o serviço de caminhos múltiplos.
service multipath-tools start- Ative os serviços necessários.
Se for necessário editar o arquivo de configuração do multipath após ter iniciado o daemon do multipath, é preciso reiniciar o serviço
multipathdpara que as alterações entrem em vigor.Para obter mais informações sobre como usar o recurso Device Mapper Multipath no Windows 20 Ubuntu, consulte Introdução ao multipathing do Device Mapper.
Descobrir o dispositivo de armazenamento e o login
O utilitário iscsiadm é uma ferramenta de linha de comando utilizada para a detecção e o login em destinos do tipo “ iSCSI ”, além do acesso e gerenciamento do banco de dados do open-iscsi. Para obter mais informações, consulte os manuais Ubuntu- iscsiadm. Nesta etapa, descubra o dispositivo usando o endereço IP de destino que foi obtido no console IBM Cloud®.
-
Execute a descoberta com relação à matriz iSCSI.
Block Storage for Classic requer a descoberta dinâmica de destinos que utilize o método
SendTargets. Não utilize a configuração estática de nós, pois ela não é escalável e pode causar problemas de conectividade quando são feitas alterações no armazenamento (como autorizar ou desautorizar hosts para LUNs). A descoberta dinâmica garante que seu host detecte automaticamente qualquer alteração nos portais de destino.iscsiadm -m discovery -t sendtargets -p <ip-value-from-IBM-Cloud-console>Se as informações de IP e detalhes de acesso forem exibidas, a descoberta será bem-sucedida.
root@vsi4classicubuntu:~# iscsiadm -m discovery -t sendtargets -p 161.26.114.197 161.26.114.197:3260,1052 iqn.1992-08.com.netapp:stfdal1304 161.26.114.196:3260,1049 iqn.1992-08.com.netapp:stfdal1304 -
Configure o login automático.
sudo iscsiadm -m node --op=update -n node.conn[0].startup -v automatic sudo iscsiadm -m node --op=update -n node.startup -v automatic -
Efetue login na matriz iSCSI.
sudo iscsiadm -m node --login
Verificando a configuração
-
Valide se a sessão iSCSI foi estabelecida.
iscsiadm -m session -o showroot@vsi4classicubuntu:~# iscsiadm -m session -o show tcp: [3] 161.26.114.197:3260,1052 iqn.1992-08.com.netapp:stfdal1304 (non-flash) tcp: [4] 161.26.114.196:3260,1049 iqn.1992-08.com.netapp:stfdal1304 (non-flash) -
Valide se existem caminhos múltiplos.
multipath -llEsse comando relata os caminhos. Se estiver configurado corretamente, cada volume terá um único grupo, com um número de caminhos igual ao número de sessões do iSCSI. É possível conectar um volume usando um único caminho, mas é importante que as conexões sejam estabelecidas em ambos os caminhos para evitar interrupções no serviço.
root@vsi4classicubuntu:~# multipath -ll 3600a0980383056666424506a33426478 dm-0 NETAPP,LUN C-Mode size=500G features='3 queue_if_no_path pg_init_retries 50' hwhandler='1 alua' wp=rw |-+- policy='service-time 0' prio=50 status=active | `- 3:0:0:0 sdb 8:16 active ready running `-+- policy='service-time 0' prio=10 status=enabled `- 2:0:0:0 sda 8:0 active ready runningSe o MPIO não estiver configurado corretamente, o seu dispositivo de armazenamento poderá se desconectar e aparecer off-line quando uma indisponibilidade de rede ocorrer ou quando as equipes do IBM Cloud® executarem a manutenção. O MPIO oferece um nível adicional de conectividade durante esses eventos e mantém uma sessão estabelecida com o volume, com operações ativas de leitura e gravação.
No exemplo,
3600a0980383056666424506a33426478é o WWID que permanece válido enquanto o volume existir. Recomenda-se que seu aplicativo utilize o WWID. Também é possível atribuir nomes mais fáceis de ler usando as palavras-chave "user_friendly_names" ou "alias" em multipath.conf. -
Verifique
dmesgpara certificar-se de que os novos discos sejam detectados.dmesg
Criando uma partição e um sistema de arquivos (opcional)
Depois que o volume é montado e está acessível no host, é possível criar um sistema de arquivos. Siga essas etapas para criar um sistema de arquivos no volume recém-montado.
-
Crie uma partição.
$ sudo fdisk /dev/mapper/mpatha Welcome to fdisk (util-linux 2.34). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x92c0322a. Command (m for help): p Disk /dev/mapper/mpatha: 1 GiB, 1073741824 bytes, 2097152 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 65536 bytes Disklabel type: dos Disk identifier: 0x92c0322a Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): First sector (2048-2097151, default 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-2097151, default 2097151): Created a new partition 1 of type 'Linux' and of size 1023 MiB. Command (m for help): w The partition table has been altered. -
Crie o sistema de arquivos.
$ sudo mkfs.ext4 /dev/mapper/mpatha-part1 mke2fs 1.45.5 (07-Jan-2020) Creating filesystem with 261888 4k blocks and 65536 inodes Filesystem UUID: cdb70b1e-c47c-47fd-9c4a-03db6f038988 Superblock backups stored on blocks: 32768, 98304, 163840, 229376 Allocating group tables: done Writing inode tables: done Creating journal (4096 blocks): done Writing superblocks and filesystem accounting information: done -
Monte o dispositivo de bloco.
sudo mount /dev/mapper/mpatha-part1 /mnt -
Acesse os dados para confirmar se a nova partição e o sistema de arquivos estão prontos para uso.
ls /mnt
Desmontando volumes do Block Storage for Classic
Quando você não precisar mais do volume, desmonte-o antes de excluí-lo.
-
Desmonte o sistema de arquivos.
umount /dev/mapper/XXXp1 /PerfDiskPara obter mais informações, consulte os manuais Ubuntu-
umount. -
Se você não tiver nenhum outro volume nesse portal de destino, será possível efetuar logout do destino.
iscsiadm -m node -t <TARGET NAME> -p <PORTAL IP:PORT> --logout -
Se você não tiver nenhum outro volume nesse portal de destino, exclua o registro do portal de destino para evitar futuras tentativas de login.
iscsiadm -m node -o delete -t <TARGET IQN> -p <PORTAL IP:PORT>Para obter mais informações, consulte os manuais Ubuntu-
iscsiadm.