Configuração básica de um iSCSI Initiator

Por: Fernando Lanner Cardoso

No nosso blog anterior “iSCSI: O que é e para que serve”. tivemos uma introdução ao iSCSI. Neste artigo estamos dando o próximo passo: como configurar o Microsoft iSCSI Initiator. A configuração do iSCSI Initiator é algo bastante simples de ser implementado. Recomendamos executar esta configuração pela interface de configuração “iSCSI Initiator Properties” sempre que possível. Primeiro procedimento descrito neste artigo. O segundo procedimento, configuração via linha de comando, fica como exercício. Ou caso estejamos conectando um Windows Server Core 2008. Vale lembrar que a interface gráfica foi adicionada no Windows Server Core 2008 R2, acessível via comando iscsicpl.exe.

Pré-requisitos

Antes de iniciarmos a configuração do iSCSI Initiator, temos que nos assegurar que os seguintes pré-requisitos sejam satisfeitos.

iSCSI Subnet

A rede ethernet por onde trafegará iSCSI deve ser fisicamente isolada. Em outras palavras, não podemos ter outro tráfego que não seja iSCSI compartilhando o mesmo meio físico. Claro que VLANs também são válidas, Uma vez que o tráfego estará sendo isolado da mesma forma. Levando em conta que a rede é isolada, é pouco provável a presença de um firewall. Mesmo assim, caso necessário, temos que nos assegurar de que a porta TCP/IP 3260 não está bloqueada. O mesmo vale para o firewall do Sistema Operacional. Antes de iniciar a configuração podemos testar conectividade via ping no IP do Target bem como um telnet na porta 3260. (O Telnet Client no Windows Server 2008 e R2 é uma feature. Se necessária deve ser adicionada).

O comando para teste, tanto via cmd.exe como via Powershell é:
telnet <endereço IP do target> 3260
Cursor piscando sozinho na tela indica conexão bem sucedida.

LUN Mapping

Do lado do iSCSI Target temos que promover permissão para que este o SCSI Initiator que estamos configurando acesse uma determinada LUN (Unidade Lógica). LUN Mapping e o processo através do qual atribuímos LUNs para hosts. Em outras palavras, estamos dizendo que servidores (Initiators) tem acesso à que LUNs. Neste processo geralmente vamos informar o IQN do Initiator a fim de identificá-lo no lado do Target. O IQN do Initiator pode ser copiado do campo “Initiator Name”, guia “Configuration”.

Versões pré-R2

A configuração do iSCSI Initiator pela interface gráfica nos SOs Windows Server 2003 e 2008 (não R2) é diferente da descrita neste documento. E estas por sua vez são levemente diferentes entre si. Caso você esteja executando a configuração em um Windows Server 2003 o Microsoft iSCSI Initiator deve ser instalado como um pacote independente. O download da versão 2.08 pode ser feito do Microsoft Download Center. No caso do Windows Server 2008, o Initiator vem embarcado com o SO.

Ainda assim, os conceitos descritos neste artigo são igualmente válidos. A diferença mais importante a ser salientada é que no Windows 2003 utiliza-se a nomenclatura Persistent Targets ao invés de Favorite Targets.

Configuração

Vamos ao procedimento:

Assegurar-se de que interface conectada na subnet iSCSI está com a configuração IP apropriada. Feito isso podemos fazer o teste descrito na sessão “iSCSI Subnet”, acima.

Nesta interface deixamos somente o TCP/IP habilitado. Por exemplo:

clip_image002

E desabilitamos o update dinâmico de DNS:

clip_image003

Bem como o NetBIOS sobre TCP/IP

clip_image004

(Ambas as opções acima acessíveis via configurações avançadas do TCP/IP)

Iniciar “iSCSI Initiator” em “Administrative Tools”.

Podemos simplesmente entrar o IP do Target e clicar “Quick Connect”. Esta opção encontra o Target e conecta.

Nas propriedades do iSCSI Initiator, guia Target, entramos o IP do Target (no nosso exemplo é 192.168.131.101). Clicamos “Quick Connect”. O Initiator encontra e conecta o target.

clip_image006

A mensagem na sobre falha no Persistent Login pode ser ignorada, uma vez que resolvemos no último passo deste procedimento. Fazendo bind dos volumes.

Nota: Este exemplo ainda considera que temos somente um Target disponível. Quando não for o caso, o que fazemos é descobrir os Target através da utilização do botão “Discover Portal”, na guia “Discovery”.

A partir deste momento os discos já estão acessíveis para uso no Disk Management. Simples assim. No screenshot abaixo vemos duas das cinco LUNs sendo apresentadas para este servidor. A partir desse momento basta colocá-las em online, particionar (MBR, GPT) e formatar.

clip_image008

Uma vez que tivermos um file system, com uma letra de driver designada, temos ainda que assegurarmos de que este drive estará disponível para o SO após uma reinicialização do servidor. Chamamos isso de persistência. No caso do Windows Server 2008 R2, Favorite Targets. Na configuração do iSCSI Initiator, guia “Volumes and Devices”, selecionar “Auto Configure”. A letra da unidade iSCSI deve aparecer na lista de volumes. Assim como o IQN do target na lista Favorite Targets, na guia de mesmo nome. Neste exemplo:

clip_image010

Está concluído.

Somente como dica adicional, a fim de documentar a configuração que você recém executou, a forma mais simples é via botão Report, na guia Configuration.

Command line

A quem eventualmente possa interessar, por linha de comando este procedimento seria o a seguir. Estamos levando em conta que o Microsoft iSCSI Initiator já está iniciado e configurado para start automático. Caso não esteja podemos iniciá-lo com:
C:\>net start msiscsi <- iniciar somente para esta configuração
C:\>sc config msiscsi start= auto <- ajustar para startup automático

Assegurar-se de que a porta iSCSI no firewall do Windows está aberta:
C:\>netsh advfirewall firewall set rule "iSCSI Service (TCP-Out)" new enable=yes

Iniciando a configuração propriamente dita. Primeiramente, adicionamos o Target.
C:\>iscsicli qaddTargetportal 192.168.130.101
Microsoft iSCSI Initiator Version 6.1 Build 7600

The operation completed successfully.

Aqui listamos o target, para pegar o IQN, que vamos utiliza no comando a seguir.
C:\>iscsicli listTargets
Microsoft iSCSI Initiator Version 6.1 Build 7600

Targets List:
    iqn.1991-05.com.microsoft:wudss2k3-acmecluster.iscsi.msft-Target
The operation completed successfully.

Fazemos o login no target. Que é o que vai tornar o disco disponível para o host.
C:\>iscsicli qloginTarget iqn.1991-05.com.microsoft:wudss2k3-acmecluster.iscsi.msft-Target
Microsoft iSCSI Initiator Version 6.1 Build 7600

Session Id is 0xfffffa800a109018-0x4000013700000008
Connection Id is 0xfffffa800a109018-0x12
The operation completed successfully.

A exemplo do procedimento anterior, a partir deste momento as LUNs já estão acessíveis pelo Disk Management. Ou pelo Diskpart, se for o caso de seguirmos via command line.

A fim de tornar a conexão persistente, ainda via command line, temos que utilizar o comando persistentlogintarget.

Temos que pegar o id da sessão:

C:\>iscsicli reporttargetmappings
Microsoft iSCSI Initiator Version 6.1 Build 7600

Total of 1 mappings returned
    Session Id : fffffa800a0e0018-4000013700000001 ß ID da sessão
    Target Name : iqn.1991-05.com.microsoft:wudss2k3-acmecluster.iscsi.msft-target ß Target name

The operation completed successfully.

Utilizar este ID para deslogar:
C:\>iscsicli logouttarget fffffa800a0e0018-4000013700000001
Microsoft iSCSI Initiator Version 6.1 Build 7600

The operations completed successfully.

E logar novamente com a opção de Persistent. Veja que estamos utilizando um parâmetro retornado pelo comando reporttargetmappings, acima. O Target Name. Seguidos dos parâmetros default: T + 15 stars + 0. Estes são os parâmetros default que são utilizados quando configurando pela interface gráfica (iSCSI Initiator Properties). A quem interessar possa, estes parâmetros estão descritos no apêndice C do Microsoft iSCSI Initiator Users Guide.

C:\>iscsicli persistentlogintarget iqn.1991-05.com.microsoft:wudss2k3-acmecluster.iscsi.msft-target T * * * * * * * * * * * * * * * 0
Microsoft iSCSI Initiator Version 6.1 Build 7600
The operation completed successfully.

Isso conclui o processo de configuração via command line.

Considerações finais

O iSCSI muitas vezes é a porta de entrada para soluções de alta disponibilidade. O custo reduzido quando comparado à outras arquiteturas bem como a familiaridade com redes ethernet são com certeza os fatores que mais contribuíram para tal. Esperamos ter contribuído em mostrar o quão simples pode ser a configuração para iniciarmos na utilização do iSCSI.

Muito obrigado!

 

Referências: