Criando um Storage barato com iSCSI no Debian Squeeze
Posted by Paulo Arruda | Posted in Linux | Posted on 04-02-2011
Tags:debian, iscsi, squeeze, storage
5
O objetivo deste artigo é preparar vocês para os próximos, onde falarei bastante sobre alta disponibilidade (HA) e virtualização de servidores, e utilizarei os conhecimentos aplicados aqui em alguns tutoriais. O lançamento do Debian Squeeze está bem próximo, então já começarei a basear meus artigos nesta versão ok? Vamos lá!
Uma grande dificuldade para quem está começando no mundo de infraestrutura é ter a oportunidade de testar seus conhecimentos e fazer experiências utilizando equipamentos caros como um Storage. Mas, felizmente, existe uma forma de criarmos um Storage de baixo custo com aquele computador antigo, de 1GB de RAM, um disco de 1TB e uma placa de rede Gigabit.
Importante:
1) Ao fazer a instalação do Debian Squeeze, certifique-se de deixar uma partição com o maior espaço possível para armazenas os dados, sendo o “disco” do Storage que estamos montando. Por exemplo, em um disco de 1TB, utilize 20GB para o sistema e todo o resto em uma partição no fim do disco.
2) Não é possível montar o mesmo disco iSCSI em mais de um servidor e acessá-lo simultaneamente. Logo, se você planeja conectar vários servidores no nosso Storage, sugiro que divida o espaço livre de armazenamento de acordo com o número de computadores que utilizarão o Storage, em partições lógicas ou utilizando LVM, adaptando os nomes dos dispositivos no procedimento deste tutorial.
3) Para fins didáticos, vou utilizar a partição /dev/sda3 como disco do Storage.
Vamos começar instalando os pacotes necessários:
apt-get install iscsitarget
No momento da criação deste post, não encontrei o pacote iscsitarget-module nos repositórios oficiais do Squeeze, logo, vamos compilar o módulo iSCSI utilizando o module assistant:
apt-get install iscsitarget-source module-assistant
m-a a-i iscsitarget
Se tudo correr bem, você será capaz de carregar o módulo com o comando:
modprobe iscsi_trgt
O serviço iscsitarget vem desabilitado por padrão. Para habilitá-lo, edite o arquivo /etc/default/iscsitarget e troque false por true:
ISCSITARGET_ENABLE=true
Agora vamos criar o target editando o arquivo /etc/iet/ietd.conf. Este arquivo armazena as informações dos discos que serão exportados via iSCSI.
O arquivo original vem com muita coisa comentada, o que pode dificultar seu entendimento. Vamos renomeá-lo e criar um novo.
mv /etc/iet/ietd.conf /etc/iet/ietd.conf.original
Crie o arquivo /etc/iet/ietd.conf com o conteúdo abaixo:
Target storage.2011-02.lan.dominio:disco1
User
Lun 0 Path=/dev/sda3,Type=fileio
O padrão iSCSI define que o “Target name” (o que vem logo depois da palavra Target) deve ser um nome único, seguindo a seguinte sintaxe:
nomeUnico.yyyy-mm.<nome.de.domínio.ao.contrário>[:NomeParaOdisco]
onde yyyy é o ano de criação do disco e mm é o mês.
Por padrão, o iscsitarget do Debian Squeeze aceita conexões provenientes de qualquer endereço IP, conforme visto na última linha do arquivo /etc/iet/initiators.allow. O ideal seria modificar, liberando apenas os IPs que vão ter acesso ao Storage. Basta trocar a linha “ALL ALL” por:
ALL x.x.x.x
trocando “x.x.x.x” pelo IP da máquina que terá acesso ao Storage.
Como o objetivo deste tutorial é ensinar a tecnologia, vamos deixar a configuração do arquivo initiators.allow em “ALL ALL” mesmo. Mas tome o cuidado de modificar esta configuração após seus testes com o iSCSI.
Existem outras formas de configurar este arquivo, por exemplo dando acesso a apenas um dispositivo para um certo IP, ou liberando toda uma rede para acessar o Storage. Para maiores informações, consulte a documentação que se encontra dentro do próprio arquivo /etc/iet/initiators.allow.
Finalizando, vamos reiniciar o serviço!
/etc/init.d/iscsitarget restart
Conferindo se ele está de pé:
netstat -natupe | grep ietd
tcp 0 0 0.0.0.0:3260 0.0.0.0:* OUÇA 0 31684 11709/ietd
tcp6 0 0 :::3260 :::* OUÇA 0 31685 11709/ietd
E assim termina nosso tutorial! Em breve publicarei um artigo ensinando a conectar um servidor Linux ao dispositivo criado por nós neste tutorial!
Dúvidas, comentários ou sugestões, serão bem vindas


Sabe aqueles momentos em que você morre de raiva porque não consegue abrir seu site favorito no Firefox? E quando você não consegue acessar o site do seu banco? Seus problemas acabaram!