Baixe o app para aproveitar ainda mais
Prévia do material em texto
FreeNAS 8.3: Uma NAS simples de usar por Nemesis11 a 15 Setembro 2012 em Destaque, Guias Introdução Este artigo é sobre uma solução open source de NAS (Network Attached Storage) que é ao mesmo tempo, fácil de utilizar e poderosa a nível de funcionalidades. Este projecto é o famoso FreeNAS, na sua versão 8.3, que ainda se encontra em Beta. Com o aumento de dispositivos que se encontram ligados a uma rede local ou à Internet, é cada vez mais importante ter um local centralizado, que disponibilize vários serviços relacionados com ficheiros. Existem várias soluções para o mesmo problema, que até pode passar por uma empresa cloud externa, mas haverá sempre pessoas que preferem ter uma solução própria. É aqui que entra o Freenas, um sistema operativo baseado em FreeBSD que ajuda a criar e manter uma NAS pessoal. FreeNAS, na sua versão 8, é desenvolvida por uma empresa que trabalha muito com FreeBSD e que se chama iX Systems. Esta empresa aproveita a base do FreeNAS para criar uma solução empresarial com o nome de TrueNAS. O FreeNAS aproveita muito do software open source existente para criar uma solução de NAS. Alguns exemplos é o uso do nginx como servidor do portal de gestão, o django como framework web, entre muitos outros projectos. Uma das principais vantagens do uso do FreeNAS, é a utilização do sistema de ficheiros ZFS. Um sistema de ficheiros muito poderoso e que podem ler sobre ele, neste artigo do Portal. Para este artigo, usei uma versão que ainda se encontra em beta, mas que não tem muitos bugs visíveis e dá uma visão do que será a versão 8.3 quando for final. Instalação Para se instalar o FreeNAS, é preciso um computador com uma placa de rede, uma pen ou disco para instalação do sistema operativo (pen recomendada, com pelo menos 2 GB de espaço), disco ou discos para criar volumes usados pela NAS e um cd-rom. A nível de memória Ram, se for para utilizar ZFS, recomendo pelo menos 2 GB, sendo que ele funciona com menos, mas a performance sofrerá. É preciso também disponibilizar um ip para a máquina, que pode ser fixo ou por dhcp. São disponibilizadas imagens com versões 32 e 64 bit, sendo que para uso de ZFS é recomendado a versão 64 bit. Para a criação deste artigo, criei uma máquina virtual, com um cd-rom a apontar para o ficheiro iso de instalação, 2 GB de Ram, um disco de 2 GB para a instalação do FreeNAS, cinco discos de 200 GB, dois de 50 GB e um de 30 GB de disco para usar dentro do FreeNAS. A instalação do FreeNAS é muito simples. Arranca-se com o cd de instalação e aparece um menu com a opção “Install/Upgrade”. Escolhe-se essa opção. São listados todos os discos reconhecidos pelo sistema e escolhe-se aquele em que pretendemos instalar o FreeNAS. Neste caso é o disco que tem 2 GB de espaço. É perguntado se queremos efectuar uma instalação nova ou se queremos efectuar um upgrade de uma versão mais antiga. Neste caso é uma instalação nova. Aparece um quadro que nos informa que todas as partições no disco de instalação serão apagadas, que o disco de instalação não pode ser usado para dados dentro do FreeNAS e que de preferência devemos usar uma pen para o disco de instalação. Neste quadro confirmamos que queremos avançar. Durante pouco tempo é colocada a imagem do FreeNAS no disco de instalação e é-nos dada um status com a progressão da instalação. Somos informados que a instalação decorreu com sucesso. Devemos retirar o cd-rom e efectuar um restart à máquina. Somos dirigidos novamente para o ecrã inicial, onde temos a opção de “Reboot System”. Durante o processo de boot, conseguimos ver todas as mensagens do sistema operativo. De referir que para quem usa VMware, são incluídas as suas tools por defeito. No final temos uma menu em texto e o url com o endereço da consola Web para gerir o FreeNAS. Neste menu inicial temos várias opções para configurar a rede, rotas, dns, efectuar reset à password da consola Web de gestão, reset para as configurações iniciais, aceder à shell do computador e por fim efectuar um restart ou shutdown. Aqui fica a imagem de quando se escolhe uma das opções, neste caso aceder à shell do computador, para utilizadores mais avançados. De referir que dentro da consola de gestão Web, é possível aceder também à shell. No boot e por curiosidade, podemos ver que ele consome pouca memória Ram. Neste caso, 66 MB em memória activa. Account Settings Para acedermos à consola de gestão web, devemos aceder a http://ip da máquina. Quando se acede a primeira vez, não é pedido nenhum login e password. Acede-se à página e é-nos apresentado um resumo do sistema. No canto superior direito é apresentado uma luz vermelha a piscar, com um aviso, que serve para avisar o utilizador que precisa de mudar a password do utilizador “admin”. Quando se carrega na luz vermelha, é dada a informação que é um aviso critico e que devemos mudar o quanto antes a password de gestão. Dentro das opções de “Account” temos um quadro de “change password”, onde podemos também mudar a password do utilizador “root”. Num quadro ao lado temos um menu onde podemos adicionar utilizadores ao sistema. Outro quadro serve para criamos grupos e adicionarmos utilizadores a esses grupos. System Settings Dentro das opções de sistema a primeira opção é adicionar e gerir “cron jobs”. Para quem não sabe o que é o cron, é equivalente ao windows ao “schedule tasks”, onde podemos adicionar uma tarefa seja executada em certos períodos de tempo. Em seguida temos as opções de “ntp”, que serve para sincronizar a hora do computador a partir da internet. Por defeito, a opções está activada e usa os servidores do FreeBSD. Depois temos as opções de “reporting”, onde estão diversos gráficos de status do sistema, como utilização do processador, memória, rede, etc. O ponto a seguir serve para definir as opções do “rsync”. O “rsync” serve para sincronizar pastas e ficheiros entre dois ou mais computadores. Neste ponto podemos definir que pastas queremos sincronizar, em que sentido e com que período de tempo. No menu de “S.M.A.R.T.” podemos seleccionar vários testes a fazer aos discos da máquina para ver o seu estado e com opções de aviso, como o envio de um email. No tab de “settings” temos várias sub-categorias. A primeira, “general” temos várias opções simples da consola web de gestão, como o uso ou não de https, a porta onde corre, a linguagem usada, localização, etc. Em “advanced”, como o nome diz, temos opções mais avançadas, como mostrar mensagens de status no “footer” da página, ver sempre as opções avançadas nos diferentes quadros, etc. Temos em seguida as opções de email para que o sistema possa enviar emails. Em “ssl” temos as opções de gestão de certificados da máquina. Seguindo para a opção seguinte, temos os “sysctls” que são opções avançadas que se podem passar ao kernel de FreeBSD. As opções são passadas por texto e é preciso que o utilizador saiba bem o que está a fazer. Em “system information” temos o mesmo quadro que aparece quando acedemos a primeira vez à máquina e tem o resumo das propriedades de sistema. Por último, temos os “tunables”, que tal como o “sysctls” são comandos avançados, mas para o sistema de ficheiros ZFS. Network Settings Dentro das opções de rede, primeiro temos as opções gerais. Nome do computador, domínio, defailt gateway e servidores de dns. A opção seguinte é para juntar dois ou mais interfaces de rede, para ter mais bandwidth. De salientar que é preciso que o equipamento de rede também suporte esta opção. A opção seguinte é para criar rotas estáticas, caso seja preciso. Definição e configuração de Vlans de diferentes redes. Temos o resumo das definições de rede. Por fim, a opção para adicionar mais interfaces de rede. Storage SettingsEsta secção é a mais importante, dado que o FreeNAS é virado para storage de rede. O primeiro menu é uma visão geral dos discos. Podemos limpar os conteúdos de cada disco, editar as suas propriedades e ver as suas opções e a Smart. Em seguida temos uma visão geral dos volumes. Podemos ver cada volume, criar e importar um volume, de uma forma manual ou automática. Ao criamos um volume temos várias opções e este é um dos quadros mais importantes neste produto. O volume pode ser cria com o sistema de ficheiros UFS, que é o tradicional de FreeBSD, mas se queremos um sistema mais moderno e com muitas opções, devemos escolher ZFS, que é o caso deste exemplo. Aqui, escolhi os 4 discos de 200 GB para criar o volume de teste. Forço o uso de 4K por sector, que começa a ser o normal em discos mais modernos. Como tipo de volume, escolhi Raid-Z2. Este é um tipo de raid parecido com Raid 6, em que existe dupla paridade, mas que em quatro discos, se perde metade do espaço. Pode-se usar apenas Raid-Z, em que apenas pode falhar um dos discos ou Raid 0 ou 1. Escolhi para o volume ter deduplication. Esta é uma opção interessante, mas que consome bastantes recursos da máquina, por isso depende de volume para volume se faz sentido a sua utilização. Deduplication é uma forma de consumir apenas um ficheiro a nível de espaço em discos, mesmo que existam dois ou mais ficheiros iguais. Em casos de um file server com múltiplos utilizadores ou um servidor de email, pode haver ganhos consideráveis. Nas opções extra, em ZFS, pode-se colocar outros discos que não pertencem directamente ao volume, a fazer funções que ajudam à sua segurança e performance. Assim, coloquei um dos outros discos para ter só o Log do sistema de ficheiros e outro disco a fazer de cache. Pode-se ver assim que pode-se melhorar em muito a performance de um volume com discos mais rápidos, por exemplo Ssds. Por último adicionei o último disco para ser spare. Isto é, este disco fica em standby para o caso de um dos discos do volume principal avarie. Caso seja detectada uma avaria, este disco entra logo em funcionamento. Depois de criado o volume, na área de gestão de volumes, conseguimos ver o status, tamanho e ocupação do volume, além de ter vários botões que servem para efectuar algumas operações com o volume criado. Uma das opções server para editar outras propriedades do volume, como activar compressão, quotas, espaço reservado e opção de ter ou não atime activado. Outra opção está relacionado com as permissões. Quem é o owner do volume, o grupo, as permissões de escrita, leitura e execução e se queremos que as permissões sejam aplicadas de uma forma recursiva. Podemos ver o status do volume em si, para editar as propriedades de cada disco, colocar um disco offline ou substituir um disco. Importante é a possibilidade de criar um “Dataset”. Um dataset é como se fosse um espaço reservado dentro de um volume, que pode ter um conjunto de opções completamente diferentes do volume onde se encontra. Neste exemplo, activo compressão, espaço reservado e estabeleço uma quota para um dataset que se encontra por baixo de um volume. Outra opção muito importante é a possibilidade de criar um snapshot, de um volume ou dataset. Um snapshot serve para parar no tempo o estado e conteúdo do filesystem. Pode ser muito util para backups, sem que ocupem mais espaço. Neste menu podemos ver que snapshots temos e podemos aqui reverter para um snapshot. Podemos ainda clonar um snapshot que já se tenha. Ainda relacionado com snapshots, podemos criar um job que de X em X tempo cria um novo snapshot do sistema de ficheiros. Já a seguir explico porque isto pode ser importante. Neste quadro podemos ver o resumo dos snapshots periódicos que são criados. Uma das razões que os snapshots periódicos podem ser importantes é para replicação. Isto é, podemos ter uma máquina de origem e uma de destino em que a máquina de origem, de X em X tempo exporta um snapshot, para um volume igual na máquina de destino, tendo assim replicação entre duas máquinas. Neste quadro podemos ver como se adiciona a replicação, com o nome do volume de destino, o nome da máquina a porta, etc. Aqui está a exibição do ou dos jobs que existem para efectuar um “scrub” a um volume. Um scrub é uma verificação e correcção detalhada de erros de um volume. Como é algo que requer bastante processamento, não convém estar sempre a ser feito. Por defeito, quando se cria um volume no FreeNAS, é criado um job de scrub de 35 em 35 dias. Este é o quadro para criar ou editar um job para scrub de um volume. Sharing Settings Na secção de partilha de ficheiros, temos três opções que estão ligadas aos três principais sistemas operativos no mercado. CIFS (Windows), AFP (OS X), NFS (Linux). No primeiro quadro, temos a possibilidade de criar um share de CIFS, com as opções normais de uma partilha em Windows. Depois de configurarmos um share, se o serviço não estiver ligado, ele pergunta se queremos ligar. Depois de iniciado o serviço, podemos ver o estado no painel de serviços. Acedendo à share, podemos começar a utiliza-la sem qualquer problema. No final, temos o status da share e o botão para editar as suas propriedades. Aqui temos o quadro para criar shares por NFS, com as suas diversas opções. E por fim, o quadro para criar shares AFP, onde tem-se bastantes opções. Services Settings Na secção de serviços podemos activar e configurar serviços que são opcionais de usar. É também nesta secção que se podem instalar e configurar plugins. O primeiro serviço é a integração do FreeNAS com uma Active Directory em Windows, para sincronização de contas de utilizadores, grupos e computadores. Segundo serviço é a configuração e activação de um dns dinamico, para quem tem um ip público que está em dhcp. Temos também um servidor de Ftp que tem dezenas de opções. Serviço de iSCSI, que permite, num dos casos, ter o computador como target de iSCSI. Outra hipótese é ter o FreeNAS como initiator de iSCSI. As opções gerais de colocar a máquina como target de iSCSI. Serviço de integração com uma directoria LDAP. Chegamos à parte dos plugins. Esta é uma secção um pouco complexa, talvez demasiado complexa para o utilizador normal, mas tecnicamente, penso que é a melhor forma de implementar uma secção de plugins. Os plugins não basta chegar a um menu, escolher e instalar. É preciso perceber como está implementado. Antes de instalar um plugin, é preciso instalar um “jail” de base. Um jail é um ambiente BSD virtual, que está isolado do sistema real. Dentro do ambiente virtual, é utilizado pacotes de PC-BSD, chamados pbis. Para tal, é necessário aceder ao site do FreeNAS, ir à parte de plugins e fazer o download o jail pbi. Nesta altura existem três plugins. Transmission, minidlna e firefly. Para este artigo, vou usar o Transmission. Primeiro é necessário escolher um local, num volume no FreeNAS onde possam ser colocados temporariamente os pacotes pbi. No passo 2, é necessário escolher um local onde ficam os plugins, que nome dar ao ambiente virtual (nome do jail), o endereço ip do ambiente virtual, que tem que ser um ip fixo, na mesma rede, mas diferente do ip do FreeNAS. A netmask da rede onde está o jail e por fim, o caminho do arquivo dos ficheiros dos plugins. O terceiro passo é escolher o pbi, que efectuamos download, do jail pbi e efectuar upload para o FreeNAS. Durante alguns minutos, é feito o upload e instalação do jail com as configurações que escolhemos. Só depois de acabar o setup do jail é que podemos instalar os plugins. Na página principal dos plugins, vai aparecer um botão “Install Glugin”. Carregando nessa opção podemos efectuar o upload do pbi do Transmission. Depois de instalado o Transmission,temos a opção de o iniciar como serviço. Nas opções deste plugin, temos todas as opções que podemos passar ao Transmission, que é um cliente de bittorrent. Depois disto, podemos aceder ao transmission pelo browser via http:// Em seguida temos as opções do serviço de SMART, para poder-se ver a condição em que se encontram os discos. O serviço seguinte é de SNMP que serve para ser usado com programas externos de monitorização. No serviço seguinte, podemos ligar o acesso via ssh e temos as principais opções deste serviço nesta página web. O serviço seguinte é para se poder ter um servidor de Tftpd. Por último, o serviço de configuração e comunicação com uma UPS. Processos e Shell via Web No final do menu temos duas opções interessantes. Primeiro é a possibilidade de ver os processos, com o comando top, dentro de uma janela, no portal de gestão. Automaticamente é feito um refresh a essa janela e pode-se ver o top em tempo real. Por último, a possibilidade de abrir uma shell dentro do ambiente web. Esta shell tem todas as funcionalidades de uma shell local na máquina. Conclusão O FreeNAS é um produto muito interessante de NAS em ambiente doméstico. Na verdade, com tantas opções e com o uso de ZFS, até é possível o seu uso em ambiente empresarial e de servidor. A sua instalação é muito simples, o portal de gestão é muito amigável, mas ao mesmo tempo tem quase todas as opções para alguém que conheça muito bem o que está a fazer. Pode-se até, neste ambiente web, passar parâmetros avançados ao kernel e ZFS. Talvez a única critica é o novo sistema de plugins, que para o comum utilizador não é muito amigável. No entanto, estamos perante um dilema, pois tecnicamente é fácil de perceber que a intenção é criar isolamento entre os plugins e o sistema real. O dilema é se deveria ser mais amigável desregrando a parte técnica. No final do dia ganhou a parte técnica. Talvez um dia consigam que mesmo assim, seja mais amigável. Por fim, espero que tenham gostado do artigo e que vos possa ser útil. FreeNAS 8.3: Uma NAS simples de usar Introdução Instalação Account Settings System Settings Network Settings Storage Settings Sharing Settings Services Settings Processos e Shell via Web Conclusão
Compartilhar