Mudanças entre as edições de "Minicluster:DRBL"
m (→O cliente possui placa rede PXE) |
m (→V. Additional usage for the DRBL environment) |
||
Linha 128: | Linha 128: | ||
Pronto! Basta reinicializar a máquina. | Pronto! Basta reinicializar a máquina. | ||
− | == | + | ==5. Uso adicional do ambiente DRBL== |
− | + | * Alguns scripts estão em /opt/drbl/sbin e /opt/drbl/bin no servidor. Dê uma olhada. Para descobrir como usar rode eles sem parâmetros. | |
− | + | * O comando mais útil é /opt/drbl/sbin/dcs que seta o modo de boot padrão dos clientes. | |
− | + | * Outro comando útil é drbl-SL.sh, que carrega um Linux pequeno (DSL, PuppyLinux, INSERT, PLD, Debian Live, GeeXbox, PUD-Linux...) no ambiente DRBL. Assim o cliente pode usar o Linux Pequeno depois de dar o boot via PXE. O cliente pode ser usado ainda que o cabo de rede seja desconectado. | |
− | |||
− | |||
− | |||
=6. Upgrade= | =6. Upgrade= |
Edição das 23h29min de 27 de outubro de 2010
Diskless Remote Boot in Linux (DRBL)
- Versão completa em inglês desta página: http://drbl.sourceforge.net/one4all/
Índice
- 1 Preamble
- 2 Setup the Diskless Remote boot in Linux (DRBL) Environment
- 3 6. Upgrade
- 4 7. Uninstall
Preamble
Este documento descreve como setup o ambiente "DRBL" em (para outros sistemas veja o original):
- Fedora Core 13
Setup the Diskless Remote boot in Linux (DRBL) Environment
I. Configuração do Servidor Linux
- Instale o Linux e configure todas as placas de rede. Neste texto, usamos eth0 para conectar a internet, enquanto que eth1, eth2, eth3 são para o DRBL (coloque o IP das placas de rede como IP privado (i.e. 192.168.x.x, no exemplo: eth1:192.168.101.254, eth2:192.168.102.254, eth3:192.168.103.254...)); IPs privados (e.g. 192.168.x.x) são usados para o ambiente DRBL. Se no seu Linux o serviço NetworkManager é iniciado automaticamente, é recomendado desligar ou remover. No Fedora você pode: chkconfig --del NetworkManager, chkconfig --del NetworkManagerDispatcher, e ligar o serviço de rede com "chkconfig network on". Suas regras para o firewall serão reescritas no servidor DRBL. Depois de completar o setup do DRBL e testar com sucesso, você pode reconfigurar o firewall. Lembre que os serviços NIS, tftp e dhcp são necessários, assim NÃO bloqueie eles no firewall.
- Para melhor performance (opcional):
- Se você usa o Gnome, pode apagar alguns arquivos de linguagem em /etc/gconf/gconf.xml.defaults/. Isto economiza espaço no servidor (Ex.: mantendo somente %gconf-tree.xml e %gconf-tree-zh_TW.xml economizará 40 MB (Com 16 clientes economizará 640 MB no servidor) e o carregamento no servidor NFS será menor.
- O sistema de arquivos reiserfs é recomendado (se disponível) por melhor performance (comparado com ext2/ext3).
- Depois de instalar o Linux no servidor, tenha certeza que o modo DMA está ativo. Isto acelera a velocidade de acesso ao disco do servidor. Use hdparm /dev/hdx para verificar se o modo está ativo ou não. Se estiver off, rode hdparm -d1 -c3 -k1 /dev/hdx para ativar. Troque /dev/hdx por /dev/hda se seu disco IDE para o sistema Linux está em "Primary IDE".
- Nota sobre Selinux: Desligue ao menos que entenda como usá-lo (senão poderá ter "Permission denied"). Para desabilitar SELinux, digite SELINUX=disabled em /etc/sysconfig/selinux or /etc/selinux/config e reinicialize sua máquina.
II. Configuração dos clientes
Nota: Este processo é feito no servidor para uso nos clientes.
Passo 2a
- Instale a DRBL key (ID: 1024D/D7E8DF3A, Key fingerprint = F532 A131 65AF 2168 1634 DB1B 4000 9511 D7E8 DF3A) no seu sistema rpm. Três modos de fazer isso:
rm -f GPG-KEY-DRBL; wget http://drbl.org/GPG-KEY-DRBL; rpm --import GPG-KEY-DRBL ou rm -f GPG-KEY-DRBL; wget http://drbl.nchc.org.tw/GPG-KEY-DRBL; rpm --import GPG-KEY-DRBL ou baixe a key do key server. O KeyID para DRBL é D7E8DF3A: gpg --keyserver subkeys.pgp.net --recv-key D7E8DF3A
e rode (para adicionar ao sistema rpm)
gpg -a --export D7E8DF3A > GPG-KEY-DRBL; rpm --import GPG-KEY-DRBL
- Baixe o arquivo drbl-1.9.6-35.i386.rpm (por exemplo, a versão estável está no Sourceforge)
- Se conecte como root su - root
- Instale o arquivo que você baixou:
yum install drbl-XXX.i386.rpm ou rpm -Uvh drbl-XXX.i386.rpm
- Nota: Um módulo perl é necessário (Algo como "perl-Digest-SHA1"). Usando yum baixará automaticamente, senão use
yum install perl-Digest-SHA1
Se usar rpm, instale com (Fedora 8)
rpm -Uvh http://opensource.nchc.org.tw/fedora/linux/releases/8/Fedora/i386/os/Packages/perl-Digest-SHA1-2.11-4.fc8.i386.rpm
PS. Os arquivos DRBL estão em http://ftp.twaren.net/local-distfiles/drbl-core/ ou http://free.nchc.org.tw/drbl-core
Passo 2b
Cenário 1 - Internet rápida:
Pressione Enter para aceitar a opção default:
/opt/drbl/sbin/drblsrv -i
Cenário 2 - Sem internet ou internet lenta:
Liste os pacotes necessários com
/opt/drbl/sbin/drblsrv-offline -r
Depois de instalar estes pacotes, se estiver certo que o kernel no servidor é compatível com a CPU do cliente, rode
/opt/drbl/sbin/drblsrv-offline -s `uname -r`
ou baixe o arquivo rpm do kernel apropriado (compatível com o cliente). Rode
/opt/drbl/sbin/drblsrv-offline -k $KERNEL_PKG
onde $KERNEL_PKG é o nome do arquivo rpm do kernel com o caminho. Na dúvida, tecle Enter para aceitar os valores padrões.
- Para ajuda e opções use
/opt/drbl/sbin/drblsrv-offline --help
Para o impaciente
Rode
/opt/drbl/sbin/drbl4imp
para terminar o passo 2b e 3a. drbl4imp usa os valores padrão para configurar o servidor DRBL. THIS IS VERY IMPORTANT! O padrão pode não ser o ideal, pois usa a opção range no servidor e assim seu cliente não terá sempre o mesmo IP (também é limitado a 12 clientes por placa de rede).
III. Configure o sistema de arquivos para o cliente no Servidor
- Arrume seu ambiente e tenha certeza que você o conhece.
- Temos um servidor e 16 clientes (mais um IP no switch?? O IP do ambiente DRBL (LAN) é 192.168.0.99. Os serviços DHCP, TFTP, NFS, etc rodam em [eth0].
[NIC ] NIC IP Clientes +------------------------------+ | DRBL SERVER | | | | +-- [eth1] 143.54.226.166 +- to WAN (rede da matemática) | | | +-- [eth0] 192.168.0.99 +- to clients group 0 [ 2 clients, their IP | | from 192.168.0.100 - 192.168.0.101] +------------------------------+
- Existem 4 modos no DRBL:
- Full DRBL e Full Clonezilla
- A banda e o espaço em disco necessários são maiores, mas a configuração do sistema será salva no servidor e cada cliente terá sua própria configuração.
- DRBL SSI (Single System Image)
- Uma única imagem para todos os clientes. A configuração individual é criada em run-time no momento do boot. Isto reduz o espaço em disco já que é necessário uma única imagem no disco. A desvantagem é que cada cliente NÃO pode ter sua configuração própria (Configuração do usuário será salva no servidor). Se novos clientes forem adicionados, a única coisa a fazer é modificar o arquivo de configuração dhcpd (dhcpd.conf). Use "/opt/drbl/sbin/dcs -> others -> gen_3N_conf" para criar ou rode "/opt/drbl/sbin/drbl-3n-conf generate", os arquivos necessário serão criados. Neste modo, uma placa de rede no servidor pode ter 253 clientes.
- Clonezilla Box
- É baseado no modo DRBL SSI, especialmente para o sistema clone. Se for usar o modo DRBL SSI, tenha certeza que o cliente tem memória grande (digamos > 512 MB) e que todo o equipamento (especialmente a placa gráfica) nos clientes é o mesmo.
- Antes do passo 3a, você pode fazer uma configuração personalizada:
- Se possui diretórios para compartilhar no servidor, tal como /home/export, então modifique o arquivo (Cuidado ao editá-lo)!!!
vi /opt/drbl/conf/drbl.conf
- e edite (Somente leitura _ro ou Leitura_e_escrita _rw)
diskless_root_dir_ro_user_add="/home/export" diskless_root_dir_rw_user_add="/home/export"
- Se os clientes possuem disco rígido local e a partição é formatada (por exemplo, /dev/hda1, com arquivo de sistema ext3), então possivelmente você quer que o cliente monte /dev/hda1 como /localwork quando inicializando. Portanto edite /opt/drbl/conf/client-append-fstab (a sintaxe é como /etc/fstab). Neste exemplo, podemos editar /opt/drbl/conf/client-append-fstab como:
/dev/hda1 /localwork ext3 defaults 0 0
(PS: Você não precisa criar o diretório /tftpboot/node_root/localwork no servidor DRBL manualmente; ele será criado mais tarde pelo drblpush.
- Para ter serviços extras no cliente (como apmd ou bluetooth) If you have extra services (such as apmd and bluetooth), edite
vi /opt/drbl/conf/client-extra-service
- e adicione
service_extra_added="apmd bluetooth".
- Se você quer renomear algum ou todos os hostnames criados automaticamente por "drblpush -i", edite agora
vi /opt/drbl/conf/client-ip-hostname
- Se as máquinas não estão designadas, drblpush usará o hostname criado automaticamente.
Passo 3a
Rode
/opt/drbl/sbin/drblpush -i
O programa auto-detecta o sistema para descobrir os argumentos. Se os argumentos não são dados no sistema, o sistema pedirá a você (veja no site).
- Nota!!! Se pacotes mais novos são instalados no servidor depois desse paso, você deve rodar (isto carrega as configurações salvas anteriormente)
/opt/drbl/sbin/drblpush -i ou /opt/drbl/sbin/drblpush -c /etc/drbl/drblpush.conf
- novamente tal que os novos pacotes sejam entregues aos cliente.
- Nota!!! Não é recomendado ativar o sistema de atualização automática. Se novos pacotes são instalados no servidor, sem rodar /opt/drbl/sbin/drblpush -i, o programa para o cliente pode não ser compatível com o mais novo no servidor. Se quiser deixar ativo o sistema de atualização, lembre de seguir o passo acima para atualizar os arquivos no cliente automaticamente.
IV. Configurando os clientes para usar o ambiente DRBL
Existem quatro cenários diferentes para dar o boot nos clientes (veja o original para usar Etherboot com 2)disquete , 3) CDROM ou 4) disco rígido).
O cliente possui placa rede PXE
- Edite o BIOS do cliente para dar o boot da "LAN" ou "network".
- anotado na sala.
Pronto! Basta reinicializar a máquina.
5. Uso adicional do ambiente DRBL
- Alguns scripts estão em /opt/drbl/sbin e /opt/drbl/bin no servidor. Dê uma olhada. Para descobrir como usar rode eles sem parâmetros.
- O comando mais útil é /opt/drbl/sbin/dcs que seta o modo de boot padrão dos clientes.
- Outro comando útil é drbl-SL.sh, que carrega um Linux pequeno (DSL, PuppyLinux, INSERT, PLD, Debian Live, GeeXbox, PUD-Linux...) no ambiente DRBL. Assim o cliente pode usar o Linux Pequeno depois de dar o boot via PXE. O cliente pode ser usado ainda que o cabo de rede seja desconectado.
6. Upgrade
Para upgrade para uma versão mais nova:
- Backup the important files, such as those files in /etc/drbl and /etc/dhcpd.conf or /etc/dhcp3/dhcpd.conf, etc...
- Run "/opt/drbl/sbin/drblsrv -u" to uninstall all the DRBL-related packages
- Follow the step II, download the drbl main program, re-install and configure it again (i.e. /opt/drbl/sbin/drblsrv -i and /opt/drbl/sbin/drblpush -i)
Algumas vezes, se as versões são próximas, podes tentar upgrade sem reinstalar e reconfigurar (i.e. somente yum upgrade). Entretanto, não é recomendado, pois alguns arquivos serão enviados aos clientes somente depois que drblsrv e drblpush são rodados.
7. Uninstall
Para desinstalar drbl e pacotes relacionados, rode:
/opt/drbl/sbin/drblsrv -u
e siga os passos.
References
- <a href="http://drbl.nchc.org.tw">http;//drbl.nchc.org.tw</a>
- <a href="http://drbl.sf.net">http://drbl.sf.net</a>
- <a href="http://free.nchc.org.tw">http://free.nchc.org.tw</a>
- <a href="http://www.study-area.org/">http://www.study-area.org/</a>
- <a href="http://etherboot.sourceforge.org/">http://etherboot.sourceforge.org/</a>
- <a href="http://www.rom-o-matic.net/">http://www.rom-o-matic.net/</a>
- <a href="http://www.ltsp.org/">http://www.ltsp.org/</a>
- <a href="http://www.tldp.org/HOWTO/Diskless-HOWTO.html">Diskless HOWTO</a>
- <a href="http://www.tldp.org/HOWTO/Diskless-root-NFS-HOWTO.html">Diskless-nfs-root HOWTO</a>
- <a href="http://www.tldp.org/HOWTO/Diskless-root-NFS-other-HOWTO.html">Diskless-nfs-root-other HOWTO</a>
- <a
href="http://www.tldp.org/HOWTO/Network-boot-HOWTO/index.html"
target="_top">Network-boot-HOWTO</a>
- <a href="http://www.tldp.org/HOWTO/NIS-HOWTO/index.html">NIS HOWTO</a>
- <a href="http://www.tldp.org/HOWTO/NFS-HOWTO/index.html">NFS HOWTO</a>
- <a href="./etherboot_doc">Etherboot User Manual</a>
- <a href="http://disklessworkstations.com/">http://disklessworkstations.com/</a>
- <a href="http://www.ltsp.org/documentation/eproms.txt">How to pick a bootrom</a>
- <a href="http://diet-pc.sourceforge.net/">DIET-PC</a>