Share via


Conectar-se a volumes Elastic SAN - Linux

Este artigo explica como se conectar a um volume de SAN (rede de área de armazenamento) elástica por meio de um cliente Linux. Para obter detalhes sobre como se conectar de um cliente Windows, confira Conectar-se a volumes do Elastic SAN – Windows.

Neste artigo, você vai adicionar o ponto de extremidade de serviço de armazenamento à sub-rede de uma rede virtual do Azure e vai configurar o grupo de volumes para permitir conexões da sub-rede. Por fim, você vai configurar seu ambiente de cliente para se conectar a um volume do Elastic SAN e estabelecer uma conexão.

Você deve usar um gerenciador de cluster ao conectar um volume de SAN elástico individual a vários clientes. Para obter detalhes, confira Usar aplicativos clusterizados do Azure Elastic SAN.

Pré-requisitos

Conectar-se a volumes

Configurar seu ambiente de cliente

Habilitar o iniciador iSCSI

Para criar conexões iSCSI de um cliente Linux, instale o pacote do iniciador iSCSI. Como o comando exato pode variar conforme a distribuição, consulte a respectiva documentação, se necessário.

Como exemplo, use sudo apt install open-iscsi com o Ubuntu, use sudo zypper install open-iscsi com o SUSE Linux Enterprise Server (SLES) e sudo yum install iscsi-initiator-utils com o Red Hat Enterprise Linux (RHEL).

Instalar o Multipath I/O

Para obter uma IOPS e uma taxa de transferência mais altas para um volume e atingir os limites máximos, você precisa criar várias sessões por meio do iniciador iSCSI para o volume de destino com base nos requisitos de desempenho e funcionalidades com multithread do aplicativo. Você precisa ter o Multipath I/O para agregar esses vários caminhos em um só dispositivo e para aprimorar o desempenho distribuindo de maneira ideal a E/S em todos os caminhos disponíveis de acordo com uma política de balanceamento de carga.

Instale o pacote do Multipath I/O para sua distribuição Linux. Como a instalação varia de acordo com a distribuição, recomenda-se conferir a documentação. No Ubuntu, por exemplo, o comando seria sudo apt install multipath-tools, para o SLES seria sudo zypper install multipath-tools e para o RHEL, seria sudo yum install device-mapper-multipath.

Depois de instalar o pacote, confirme a existência de /etc/multipath.conf. Se /etc/multipath.conf não existir, crie um arquivo vazio e use as configurações do exemplo a seguir para realizar uma configuração geral. Por exemplo, mpathconf --enable criará /etc/multipath.conf no RHEL.

Será necessário fazer algumas modificações em /etc/multipath.conf. Adicione a seção de dispositivos do exemplo a seguir. Observe que a seção de padrões nele define alguns padrões que geralmente são aplicáveis. Caso precise fazer outras configurações específicas, como excluir volumes da topologia Multipath, confira a página de manual de multipath.conf.

defaults {
    user_friendly_names yes		# To create ‘mpathn’ names for multipath devices
    path_grouping_policy multibus	# To place all the paths in one priority group
    path_selector "round-robin 0"	# To use round robin algorithm to determine path for next I/O operation
    failback immediate			# For immediate failback to highest priority path group with active paths
    no_path_retry 1			# To disable I/O queueing after retrying once when all paths are down
}
devices {
  device {
    vendor "MSFT"
    product "Virtual HD"
  }
}

Depois de criar ou modificar o arquivo, reinicie o Multipath I/O. No Ubuntu, o comando é sudo systemctl restart multipath-tools.service. No RHEL e SLES, é sudo systemctl restart multipathd.

Anexar volumes ao cliente

Use o script a seguir para criar suas conexões. Para executá-lo, você precisará dos seguintes parâmetros:

  • assinatura: ID da assinatura
  • g: nome do grupo de recursos
  • e: nome do Elastic SAN
  • v: nome do grupo de volumes
  • n <vol1, vol2,…>: nomes dos volumes 1 e 2 e outros nomes de volume dos quais você pode precisar, separados por vírgula
  • s: número de sessões para cada volume (definido como 32 por padrão)

Copie o script daqui e salve-o como um arquivo.py, por exemplo, connect.py. Em seguida, execute-o com os parâmetros obrigatórios. Veja um exemplo de como você executará o script:

./connect.py --subscription <subid> -g <rgname> -e <esanname> -v <vgname> -n <vol1, vol2> -s 32

É possível verificar o número de sessões usando sudo multipath -ll

Número de sessões

Você precisa usar 32 sessões para cada volume de destino, a fim de atingir os limites máximos da IOPS e/ou da taxa de transferência.

Próximas etapas

Configurar a rede do Elastic SAN