Este tópico tem o objetivo mostrar a configuração de uma unidade unidade iSCSI no FreeNAS e sua conexão ao host ESXi.
Como informado no inicio do artigo, assumimos as seguintes configurações neste tópico:
Servidor ESXi:
Host: vmsrv
IP LAN (NIC1 - "vmnic0"): 192.168.1.100
IP LAN (NIC4 - "vmnic4"): 192.168.2.100 (para conexão direta entre adaptadores de rede. Será abordado ao final deste tópico)
Servidor FreeNAS:
Host: storage
IP LAN (NIC1 - "re0"): 192.168.1.200
IP LAN (NIC2 - "re1"): 192.168.2.200 (para conexão direta entre adaptadores de rede. Será abordado ao final deste tópico)
Neste tópico não abordo a instalação do FreeNAS. Caso tenha dúvidas na instalação, sugiro analisar o artigo do colega "rick_G" aqui no VOL (
storage FreeNas 9216 - Instalação e configuração). Neste artigo, o "rick_G" aborda de forma bem simples a instalação do FreeNAS em máquina virtual com Virtual Box.
No caso deste estudo, instalamos o FreeNAS diretamente no servidor físico.
- HP ML 110 G7
- 16GB RAM
- 1 cartão CF 8GB (onde está instalado o S.O do FreeNAS)
- 3 HDs de 1TB SATA III 6gb/s 7200RPM (controladora SATA ONBOARD)
O nome do servidor FreeNAS é "storage" e a interface de rede "re0" (realtek) foi configurada com IP estático 192.168.1.200/24.
O volume criado no FreeNAS foi um POOL ZFS chamado de "Storage" com de 3 discos em Raid5, totalizando 1.8TB de armazenamento.
Informações demonstradas na figura abaixo:
Então, partindo da ideia que o FreeNAS já esta instalado na máquina física já com o volume "Storage" criado, partimos direto para a configuração do serviço de rede.
CONFIGURANDO O iSCSI
Para configurar o serviço, clicamos no ícone "SERVIÇOS" (ou na opção "Serviços" expandindo no "+") e clicamos sobre a opção iSCSI.
Na aba "Serviços" o botão de iSCSI esta na posição OFF. Clicamos então na chave ao lado "ferramenta" para abrir o painel de configurações do iSCSI.
Temos algumas opções de configurações nos menus: Configuração Global de Destino, Portais, Iniciadores, Acesso Autorizado, Targets, Extents e Destinos associados.
Abaixo vou indicando os campos e mostrando as informações ao qual preenchi para configuração neste estudo.
Note que você pode utilizar sua própria nomenclatura nas configurações.
Obs.: as opções que não cito foram deixadas com os valores padrão do FreeNAS.
1. Configuração Global
1.1. Nome base: iqn.2016-01.com.storageESXI.diskarray-zfs:storage-iscsi
2. Portais
2.1. Clicar no botão "ADD PORTAL"
2.2. Informar o comentário: Storage-iSCSI
2.3. IP Address: 192.168.1.200
2.4. Porta: 3260
3. Iniciadores
3.1. Clicar no botão "ADD Iniciador"
3.2. Iniciadores: preencher com "ALL" sem aspas
3.3. Redes autorizadas: preencher com "ALL" sem aspas. Você pode autorizar por IPs ou range de IPs. (Ex: 192.168.1.100 ou 192.168.1.100/24)
3.4. Comentário: Acesso sem restrição; Acesso autorizado para ESXi; Acesso autorizado para LAN;
4. Acesso Autorizado: antes de adicionar o usuário, você deve tê-lo criado previamente no menu "CONTA" opção "USUÁRIOS" (ou utilizar o usuário ROOT)
4.1. Clicar no botão "ADD Acesso Autorizado"
4.2. ID do Grupo: preencher com o ID do grupo, no caso "1" sem aspas
4.3. Usuário: preencher com o nome do usuário, no caso "usuario" sem aspas
4.4. Senha / Confirmar Senha: preencher com a senha do usuário
5. Targets:
5.1. Clicar no botão "ADD Destino"
5.2. Nome do Destino: preencher com "storage-iscsi" sem aspas
5.3. Nome do Destino: preencher com "Storage" sem aspas
5.4. Flag do Destino: leitura-escrita
5.5. ID do Portal Group: 1 (Storage-iSCSI)
5.6. ID do Grupo do Indicador: 1 (Acesso sem restrição)
6. Extents: Antes de criarmos o extent, devemos acessar o volume criado (Storage) e criar o arquivo manualmente. Para isso, vamos acessar a opção "SHELL" no menu lateral do FreeNAS. Se preferir, pode efetuar o acesso via SSH através de outra estação, desde que o serviço esteja ativado no FreeNAS (menu "SERVIÇOS" opção "SSH". Você deve marcar a opção "Logar como root com senha" e "Permitir autenticação por senha"). ATIVE O SSH no FreeNAS.
No SHELL do FreeNAS execute os seguintes comandos:
# cd /mnt/Storage (para acessar o volume)
# touch storage-iscsi.file (para criar o arquivo)
# exit
6.1. Com o arquivo criado, clique no botão "ADD Extent"
6.2. Nome Extent: preencher com "storage-iscsi.file" sem aspas (fazendo uma referência ao nome do arquivo que criamos. Você pode atribuir qualquer nome)
6.3. Tipo do Extent: Arquivo (file)
6.4. Caminho para o extent: /mnt/Storage/storage-iscsi.file (referencie o arquivo criado)
6.5. Tamanho do extent: preencher com "1800GB" sem aspas, que é o tamanho do volume Storage criado anteriormente (conforme demonstrado na primeira figura [1.8TiB])
6.6. Comentário: preencher com "Arquivo de dados: storage-iscsi.file"
7. Destinos associados
7.1. Clique em "Add Destinos / Extent"
7.2. LUN ID: auto
7.3. Destino: storage-iscsi
7.4. Extent: storage-iscsi.file
Retorne à tela dos "SERVIÇOS".
ATIVE O SERVIÇO: [iSCSI ON]
Se o serviço ativar sem problemas, o iSCSI foi configurado com sucesso.
DICA: abordei este tópico de uma forma direta, somente via texto e sem muitos detalhes, pois o intuito deste tópico é a conexão do FreeNAS com o ESXi via iSCSI. Porém, em caso de dúvidas em algum procedimento ou configuração sobre iSCSI, sugiro ler o passo-a-passo deste outro artigo do colega "rick_G" (Instalando FreeNAS 8.0.3 e criando Storage iSCSI - https://www.vivaolinux.com.br/artigo/Instalando-FreeNAS-830-e-criando-Storage-iSCSI/). Neste artigo ele aborda de forma bem detalhada e com imagens a instalação do FreeNAS e a configuração do serviço iSCSI.
CONECTANDO FREENAS AO ESXi VIA iSCSI
Acessamos via vSphere Client o servidor ESXi 192.168.1.100 para instalar o software do adaptador iSCSI no host, seguindo os passos abaixo:
- Clicar na aba "CONFIGURATION"
- Em "Hardware" clicar em "STORAGE ADAPTER"
- Em "Storage Adapter" clicar em "ADD"
- Em "Add Storage Adapter", marcar a opção "ADD SOFTWARE iSCSI ADAPTER"
- Clicar em OK.
Uma mensagem "Software iSCSI Adapter" informa que um novo software de adaptador iSCSI será adicionada à lista de adaptador de armazenamento . Depois de ter sido adicionado, selecione o software adaptador iSCSI na lista e clique em propriedades para concluir a configuração.
Abaixo as telas e os 5 passos demonstrados na figura.
O software do adaptador foi instalado. Ele é referenciado em "Storage Adapters" como "iSCSI Software Adapter" (vmhba** onde o asterísco significa a sequencia da numeração dos adaptadores. Neste caso, o adaptador ficou com a nomenclatura "vmhba34" do tipo "iSCSI" com WWN "iqn.1998-01.com.vmware:vmsrv-34519e4". Estas informações são atribuídas automaticamente pelo ESXi.
Para adicionarmos o FreeNAS via iSCSI ao host ESXi, devemos efetuar o seguinte procedimento:
Na tela do "Storage Adapters":
1. Clicar com o botão direito do mouse em cima do adaptador iSCSI "vmhba34" e selecionar a opção "PROPERTIES"
2. Selecionar a aba "Dynamic Discovery" e clicar no botão "ADD"
3. Na janela "Add Send Target Server" devemos preencher os campos conforme o indicado abaixo:
- iSCSI Server: 192.168.1.200 (o IP do servidor FreeNAS)
- Port: 3260 (ou a porta que você especificou no servidor FreeNAS)
4. Clique no botão OK para confirmar.
5. A mensagem "A rescan of the host bus adapter is recommended for this configuration change. Rescan the adapter?" Confirme clicando no botão SIM.
Com isso, o host ESXi estará conectado ao FreeNAS via iSCSI.
O próximo passo é adicionar o volume iSCSI (Storage) a lista de DATASTORE do ESXi.
Para isso, devemos seguir os passos abaixo:
1. Clicar na aba "CONFIGURATION"
2. Em "Hardware" clicar em "STORAGE"
3. Em "Storage" clicar em "ADD STORAGE"
4. Em "Add Storage", marcar a opção "DISK/LUN" e clicar em NEXT. Aguarde a busca da unidade.
5. Clicar em cima da unidade encontrada "FreeBSD iSCSI Disk (t10.FreeBSD_iSCSI_Disk_____..." e clique no botão NEXT.
6. Confirmar o tipo e a versão do sistema de arquivos. Vamos utilizar VMFS-5.
7. Clicar em OK e na tela "Add Storage" confirmamos as configurações em "Review the current disk layout". Note que uma mensagem em negrito abaixo informa que "UMA PARTIÇÃO SERÁ CRIADA E USADA". Clique em NEXT.
8. Nas duas próximas telas serão solicitados o nome do novo datastore e a capacidade da unidade.
- "Enter a datastore name": preencher com "VMBackup-NAS" sem aspas (ou utilize a nomenclatura de sua preferência).
- "Capacity": marque a opção "MAXIMUM AVAILABLE SPACE" para que seja utilizado a capacidade máxima do volume (1.8TB).
9. Após avançar, aguarde até que o ESXi adicione o volume a lista de DATASTORE.
Com isso, finalizamos a conexão do ESXi com o servidor físico FreeNAS via protocolo iSCSI.
É importante que a conexão de rede entre estes dois servidores seja Gigabit Ethernet (cabeamento CAT6 / 1Gbps), para evitarmos problemas de performance na cópia das VMs através desta conexão. Se você utiliza uma conexão de rede Fast Ethernet (cabeamento CAT5 / 100Mbps), a performance na cópia das VMs será afetada, mas irá funcionar normalmente.
Em testes no laboratório obtivemos os seguintes valores na cópia das VMs utilizando o script de backup ghettoVCB.sh:
- Máquina virtual: 350GB provisionados
- Copia completa (VM com 349,85GB de dados no disco virtual)
- à 100Mbp/s ~ 6,5 horas
- à 1Gbp/s ~ 45min
Dica: caso você não possua um ativo de rede (switch) gigabit, você pode conectar o FreeNAS (NIC2 "re1") diretamente a um adaptador de rede que esteja sobrando no ESXi (no caso, "vmnic4"). Como são servidores, os adaptadores de rede trabalham à 1Gbps. Basta você configurar os adaptadores de rede (nos dois servidores) na mesma faixa de IP e em faixas de IPs diferentes do utilizado na LAN e WAN.
Utilizando um segundo adaptador de rede no FreeNAS, você não perde a administração via LAN (http://192.168.1.200) e deixa a outra NIC (em outra faixa de IP. Ex.: FreeNAS - 192.168.2.200 / ESXi - 192.168.2.100) exclusiva para a conexão iSCSI entre os dois servidores.
Utilizo este cenário em clientes e se mostra tão eficiente quanto o cenário que propus neste tópico. Além da possibilidade de utilizar outros volumes criados no FreeNAS para outras funções como backup ou armazenamento de arquivos na faixa de rede 192.168.1.0/24.
Veja imagem abaixo:
CONFIGURANDO ADAPTADORES DE REDE PARA CONEXÃO DIRETA (VMNIC - RE1)
Para conectar um segundo adaptador do FreeNAS no ESXi, conecte um cabo de rede (CAT6 / 1Gbps) as duas NICs dos servidores.
FreeNAS:
- Acesse o FreeNAS digitando no browser http://192.168.1.200 (root/senha)
- Configurar o segundo adaptador de rede: clique em "Rede"
- Na aba "Configurações de Rede", clique na opção "INTEFACES" e clique no botão "ADD INTERFACE"
- Na opção "NIC" selecione o segundo adaptador de rede, neste caso "re1" (realtek)
- Em "Nome da Interface" digite "iSCSI-ESXi" sem aspas (ou utilize a nomenclatura de sua preferência)
- NÃO MARQUE a opção "DHCP"
- Em "Endereço IPV4" digite o endereço de IP estático desta NIC, neste caso "192.168.2.200" sem aspas
- Em "Máscara de Rede" selecione /24 (255.255.255.0)
- Por fim, clique no botão OK para finalizar a configuração
ESXi:
- Acesse o host ESXi com vSphere Client 192.168.1.100 (root/senha)
- Clique na aba "Configuration". Em "Hardware", clique na opção "NETWORKING" para acessarmos o mapa do Vsphere Standard Switch
- Clique em "ADD NETWORKING" e selecione a opção "VMKERNEL" (o VMkernel processa o tráfego para serviços como vMotion, iSCSI, NFS, gerenciamento do host etc)
- Selecione a opção "Create a vSphere standard switch"
- Em "Port Group Properties" preencha o campo "VMKernel": iSCSI (ou utilize a nomenclatura de sua preferência)
- Em "VMkernel - IP Connection Settings" selecione a opção "USE THE FOLLOWING IP SETTINGS" e preencha as opções: IP Address - 192.168.2.100 / Subnet Mask: 255.255.255.0
Com isso, temos o adaptador de rede "vmnic4" na mesma faixa de IP da "re1" do FreeNAS.
Para finalizar:
- Instalar o software do adaptador (se já não tiver feito)
- Conectar o target ao initiator nas propriedades do adaptador iSCSI "vmhba34"(informando o IP 192.168.2.200 em "Dynamic Discovery"), fazendo o Rescan
- Adicionar o volume iSCSI (Storage) a lista de DATASTORE do ESXi ("Rescan the adapter?", "ADD STORAGE", "DISK/LUN", "VMFS-5", "MAXIMUM AVAILABLE SPACE" etc)
Ou seja, seguir todos os passos descritos a partir do tópico CONECTANDO FREENAS AO ESXi VIA iSCSI.
Conforme o número de adaptadores de redes no FreeNAS, podemos conecta-lo diretamente a mais de um ESXi sem problemas.
Abaixo, um exemplo desta estrutura implementada em cliente, 100% funcional.