Monte o volume iSCSI no sistema operacional Ubuntu
Este tutorial o orienta sobre como 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.
Se estiver usando outro sistema operacional Linux®, consulte a documentação da sua distribuição específica e certifique-se de que o multipath ofereça suporte ao ALUA para prioridade de caminho.
Antes de Iniciar
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. É necessário um sistema de arquivos de disco compartilhado com reconhecimento de cluster para evitar perda de dados, como 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 sistema operacional de seu host.
É 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.
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.
Para obter mais informações sobre como o serviço iSCSI funciona no sistema operacional Ubuntu, consulte a documentação do iniciador(ou cliente)iSCSI.
Além disso, certifique-se de que o host que acessará o volume Block Storage for Classic esteja autorizado. Para mais informações, veja Autorizando o host no console Autorizando o host da CLI Autorizando o host com Terraform.
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.
-
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
-
Instale o
multipath-tools.sudo apt install multipath-toolsSe você quiser inicializar a partir do volume, o pacote
multipath-tools-boottambém precisará ser instalado.
Configurar os caminhos múltiplos
-
Depois de instalar o utilitário multipath, crie um arquivo de configuração vazio chamado
/etc/multipath.conf. -
Modifique os valores padrão de
/etc/multipath.conf.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 padrões iniciais do arquivo de configuração configura o sistema de modo que os nomes dos dispositivos multipath tenham o formato
/dev/mapper/mpathn, em quempathné o número WWID do dispositivo. Para obter mais informações, consulte os manuais Ubuntu-multipath.conf. -
Salve o arquivo de configuração e saia do editor, se necessário.
-
Inicie o serviço de caminhos múltiplos.
service multipath-tools startSe você precisar editar o arquivo de configuração do multipath depois de iniciar o daemon do multipath, deverá reiniciar o serviço
multipathdpara que as alterações tenham efeito.Para obter mais informações sobre como usar o recurso Device Mapper Multipath em Ubuntu 20, consulte Device Mapper Multipathing - Introduction.
Atualizar o arquivo /etc/iscsi/initiatorname.iscsi
Atualize o arquivo /etc/iscsi/initiatorname.iscsi com o IQN no console IBM Cloud®. Insira o valor como lowercase.
InitiatorName=<value-from-the-Portal>
Configurar credenciais
Edite as seguintes configurações em /etc/iscsi/iscsid.conf usando o nome de usuário e a senha do console IBM Cloud®. Use maiúscula para nomes de CHAP.
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>
Deixe as outras configurações do CHAP comentadas. O armazenamento IBM Cloud® usa apenas a autenticação unilateral. 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.
Descobrir o dispositivo de armazenamento e o login
O utilitário iscsiadm é uma ferramenta de linha de comando usada para a descoberta e o login em alvos iSCSI, além de acesso e gerenciamento do banco de dados 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.
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.
-
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 -
Ative os serviços necessários.
systemctl enable open-iscsi systemctl enable iscsid -
Reinicie o serviço iscsid.
systemctl restart iscsid.service -
Efetue login na matriz iSCSI.
sudo iscsiadm -m node --loginall=automatic
Verificando a configuração
-
Valide se a sessão iSCSI foi estabelecida.
iscsiadm -m session -o show -
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 iSCSI. É possível anexar um volume com um único caminho, mas é importante que as conexões sejam estabelecidas em ambos os caminhos para evitar a interrupção do serviço.
$ sudo multipath -ll mpathb (360014051f65c6cb11b74541b703ce1d4) dm-1 LIO-ORG,TCMU device size=1.0G features='0' hwhandler='0' wp=rw |-+- policy='service-time 0' prio=1 status=active | `- 7:0:0:2 sdh 8:112 active ready running `-+- policy='service-time 0' prio=1 status=enabled `- 8:0:0:2 sdg 8:96 active ready running mpatha (36001405b816e24fcab64fb88332a3fc9) dm-0 LIO-ORG,TCMU device size=1.0G features='0' hwhandler='0' wp=rw |-+- policy='service-time 0' prio=1 status=active | `- 7:0:0:1 sdj 8:144 active ready running `-+- policy='service-time 0' prio=1 status=enabled `- 8:0:0:1 sdi 8:128 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. A MPIO fornece um nível extra de conectividade durante esses eventos e mantém uma sessão estabelecida para o volume com operações de leitura/gravação ativas.
No exemplo,
36001405b816e24fcab64fb88332a3fc9é o ID universal persistente enquanto o volume existe. 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.