Este documento descreve como o Hospital São Sebastião implementou uma solução baseada em "thin clients" para otimizar seus computadores pessoais e terminais gráficos. A solução envolveu instalar uma versão reduzida do Linux nos clientes e configurar o boot remoto via rede para carregar os sistemas operacionais e aplicações de servidores centrais, melhorando o desempenho, gestão e reduzindo custos.
Implantação de Remote Boot no Hospital São Sebastião
1. Utilização de Computadores Pessoais optimizados para Terminais
Gráficos no Hospital São Sebastião
Nuno Lucas – nlucas@hospitalfeira.min-saude.pt
Rui Gomes – rgomes@hospitalfeira.min-saude.pt
Hospital São Sebastião, S.A – Rua Dr. Cândido Pinho, 4520 Santa Maria da Feira,
http://www.hospitalfeira.min-saude.pt, Tel: 256 379 700 Fax: 256 378 867
Abstract
Cada vez mais se tem verificado que nas empresas a utilização de plataformas de
sistemas operativos com acessos centralizados têm revertido substancialmente em
beneficios operacionais, melhorias na gestão e redução de custos. Assim tal como os
thin clients já são tidos como as plataformas por excelência dos interfaces de muitos
utilizadores de plataformas Windows ou UNIX, também o Hospital São Sebastião
adoptou uma solução do tipo. Neste contexto, este paper pretende mostrar, de uma
forma detalhada como a equipa operacional encontrou uma alternativa prática e
económica de reaproveitamento de todo o seu stock informático, à partida absoleto, para
ter postos de trabalho actualizados e fiáveis a serem utilizados pelos seus profissionais
de saúde. Palavras chave como boot remoto, Linux, PXE, CITRIX, Windows, entre
outras são as constantes do arrojado projecto que permitiu de uma forma generalizada
melhorar as velocidades de acesso às aplicações cliente/servidor e aplicações web
based, minimizar as intervenções tidas nas falhas de hardware, tornar os sistemas
operativos mais estáveis, garantir melhor protecção anti-vírus, reduzir substancialmente
o tempo necessário para a instalação ou reconfiguração de todo um sistema cliente e
obter melhorias consideradas relativas à gestão do parque informático.
Introdução para os equipamentos clientes foi
Tendo como objectivos a diminuição de testada uma instalação reduzida de uma
custos, a reutilização de equipamento distribuição de Linux (no caso a
informático obsoleto (evitando assim distribuição Red-Hat 9) no disco local
elevados investimentos em novos do cliente, e uma outra que efectuava o
equipamentos) e acima de tudo a boot2 remoto baseado também em
necessidade premente de fiabilidade e Linux. A distribuição Red-Hat 9,
simplicidade na gestão de um número mesmo reduzida era muito pesada para
cada vez maior de postos de trabalho, atingir os objectivos e levantava alguns
foi projectada e instalada uma solução problemas na parametrização quando se
baseada em Terminal Services e no pretendia disponibilizar um ambiente
conceito “Thin Client”1. windows3. Também este processo
Para o efeito, foram estudadas algumas obrigava ao investimento de um grande
soluções sempre tomando em conjunto de configurações em cada um
consideração que o novo ambiente do dos postos de trabalho.
utilizador deveria manter a estrutura
Windows por uma questão de
operacionalidades e para evitar algum 2
Arranque do sistema operativo
3
impacto na mudança para o utilizador Este acesso é suposto ser feito através de um
final. Ao nível do sistema operativo ICA Client. “Independent Computing
Architecture” – aplicativo para Linux - neste
caso - que viabiliza a connexão com servidor
1
Também conhecidos por “fit client” CITRIX.
2. Foi testada então outra alternativa um equipamento chamado WyseWeb7,
conhecida como remote-boot ou de dimensões bastante reduzidas, que
network boot. Este mecanismo consiste substituía um computador. Mas,
na implementação do boot via placa de colocava-se a questão - O que fazer com
rede. A ideia subjacente ao network o equipamento existente e o
boot é a de um computador desprovido investimento efectuado?
de recursos locais, nomeadamente
discos rígidos, poder “arrancar” Implantação do remote-boot
utilizando recursos remotos e
centralizados. Também aqui optamos O Departamento de Informática do
pela utilização do Linux, mas desta vez, Hospital São Sebastião, S.A. tinha já
apenas se usou o kernel (2.4) compilado adquirido algum know-how sobre o
apenas com os módulos necessários à conceito de thin client uma vez que, á
detecção do hardware dos clientes. cerca de seis meses atrás foram
Utiliza-se um cliente ICA para Linux, o implementados terminais gráficos Sun
que produziu uma imagem (initrd4 + Ray 100 da Sun Microsystems em
kerne5l) com cerca de 5Mb, alguns serviços do Hospital. Assim o
contrapondo os 400 a 500Mb Departamento de Informática do
necessários numa outra instalação. Foi Hospital deu início, em meados de
também necessário incluir o X Fevereiro de 2004, às pesquisas sobre
(XFree86 4.3) de forma a poder remote-boot. A princípio foram sentidas
suportar o ICA. algumas dificuldades devido á
inexperiência no ambiente Linux, á
O Projecto adaptação do sistema ás necessidades
O projecto inicial consistiu em reais do Hospital, á configuração do
disponibilizar através do Metaframe serviço de DHCP8, e em particular, á
FR36 um ambiente de trabalho compilação de imagens. Superadas as
produtivo e capaz de responder às dificuldades, o remote-boot trouxe
exigências que as aplicações utilizadas inúmeras vantagens quer a nível de
no Hospital faziam sentir à algum gestão quer a nível da manutenção dos
tempo, especialmente as aplicações de equipamentos. O remote-boot é um
imagem radiológica e prescrição processo dividido em três fases:
médica. Pretendia-se também dar início 1- Reconhecimento da informação sobre
a uma reforma do parque informático as configurações do cliente.
mais antigo, visto já não terem 2- Download de um ficheiro que vai ser
condições de por si só dar resposta às o responsável pelo controlo do boot
necessidades. A centralização da durante um período de tempo.
informação dos utilizadores e de uma 3 - Execução desse
grande parte dos processos, era também mesmo ficheiro para o
um objectivo antigo do Hospital, controlo temporário do
aumentando assim as vantagens de todo boot passando depois o
o sistema. Aliado a isto existia a controlo novamente para
necessidade de fiabilidade, uma vez que o BIOS do computador de forma a não
a manutenção e reparação de avarias comprometer o arranque de todo o
consome grande parte do tempo dos sistema.
recursos humanos do serviço de
informática. Foi proposto a utilização de
O Funcionamento do remote-boot
4
Initial Ram Drive
5 7
Núcleo do sistema operativo http://www.wyseweb.com
6 8
http://www.citrix.com Dynamic Host Configuration Protocol
3. simplesmente iniciar o boot quando é
executada pelo BIOS. Devem inicializar
os dispositivos e devolver o controlo ao
BIOS, sob pena de comprometer todo o
processo. O primeiro ficheiro recebido
da rede é conhecido por Network
Bootstrap Program (NBP11) que é
executado e assume o controlo das
operações.
Bootp/DHCP + TFTP
Embora existam algumas soluções
proprietárias, a mais usada é a que
utiliza os protocolos Bootp/DHCP e
TFTP (tendo sido usado o DHCP no
hospital). O seu funcionamento é
composto por algumas etapas como se
pode ver na figura seguinte.
1. O “software” residente na
EPROM emite um pedido de
Processo de remote-boot DHCP em broadcast.
2. O servidor de DHCP responde
Durante o arranque (inicialização) de enviando a informação
um posto de trabalho, antes do arranque necessária, entre ela o nome do
do sistema operativo (boot), são ficheiro de boot e o endereço IP
executados vários programas de do respectivo servidor TFTP.
inicialização residentes em ROM que 3. O cliente emite um novo pedido
fazem parte do BIOS do computador. mas desta vez de TFTP com o
Esta fase do arranque é designada de objectivo de obter o ficheiro de
“pré-boot”. Aproveitando esta boot.
característica é possível colocar uma 4. O ficheiro de boot é executado,
ROM no computador de tal modo que podendo apresentar várias
este em lugar de efectuar o boot de características (difere de sistema
forma tradicional (através de para sistema).
dispositivos locais), utilize serviços de 5. O ficheiro de boot emite um
rede para o efeito. Para isso algumas pedido TFTP para o servidor
placas de rede possuem um socket livre onde reside a imagem.
para a colocação de uma EPROM9 e 6. O servidor de TFTP envia a
permitem definir o endereço de imagem pedida e o cliente
memória onde essa ROM será coloca-a no local adequado.
“colocada”. As ROM´s de boot 7. Finalmente é desencadeado o
destinam-se a obter de um servidor de boot.
rede o sistema operativo para o boot,
contendo para isso, o driver apropriado O que é o PXE?
para a placa de rede, software de rede
(TCP/IP/UDP/IPX…) e um cliente de Em 1998, um grupo de fabricantes
rede para receber os ficheiros (TFTP10, formou um consórcio designado
NFS, …). Uma ROM de boot não pode
9 11
Erasable Progamable ROM Na realidade o NBP é um interpretador de
10
Trivial File Transfer Protocol comandos
4. WfM12. Foi liderado pela Intel e redes eram o grande obstáculo. De
composto pela 3Com, HP, Dell, qualquer forma, actualmente o PXE
Compaq, etc. Este consórcio formou constitui um standard o que permite
um standard, da indústria! O PXE13 que fabricantes quer de hardware
é uma parte da especificação WfM quer de software possam suportar e
que tem como objectivo a redução desenvolver esta arquitectura.
de custos e a simplificação da gestão Existem muitas vantagens em
dos computadores pessoais. O PXE utilizar este “método” de boot:
funciona numa placa de rede 1. Todos os computadores fazem
(NIC14) instalada no computador e boot da mesma maneira o que
torna essa placa de rede um permite um controlo mais
dispositivo de arranque (boot apertado pelo administrador.
device). O objectivo desta 2. A actualização do software é
especificação é tornar a placa de feita remotamente sem que um
rede um boot device standard, tal técnico tenha de se deslocar
como os discos rígidos, as disquetes, fisicamente ao local.
etc. O PXE faz “boot” dos clientes 3. Os backups dos documentos de
pela rede transferindo um ficheiro todos os utilizadores podem ser
que é uma imagem de boot a partir centralizados mais facilmente.
de um determinado servidor. Essa 4. Os clientes não são infectados
imagem pode ser um sistema por vírus (no caso da instalação
operativo (Linux, Unix, Windows, ser apenas em memória).
etc.), ou um “Pré-OS15”. O PXE não 5. O investimento em hardware é
é específico para um determinado drasticamente reduzido e em
sistema operativo, pode carregar alguns caso completamente
qualquer um através da rede. O PXE anulado.
está disponível em EPROM´S que
podem ser adicionadas às placas de Estas são algumas das vantagens, mas
rede (neste momento existe um certamente existem muitas outras que
grande número de placas que já poderão ser muito mais interessantes e
suportam PXE) e permitir assim que vantajosas, dependendo apenas do
estas suportem a especificação PXE. ponto de vista de cada um.
Actualmente a versão PXE
disponível é a 2.1.
Administração Zero
Vantagens do remote-boot A utilização deste tipo de métodos de
arranque, é muito vantajosa para
O network boot não é um conceito administradores de parques
tão recente como possa parecer. informáticos com elevado número de
Existem inclusive alguns métodos, postos de trabalho. Como os ficheiros
entre os quais o da Novell e da IBM do sistema operativo são obtidos a partir
que vêm sendo disponibilizandos de servidor, todos os postos arrancam
desde os anos 80. Nessa altura as de igual modo (como foi referido
anteriormente) e sob o controlo directo
12
do administrador. A actualização de
Wired for Management
13 todo o software, inclusive do sistema
Preboot Execution Environment
14
Network Interface Card operativo, é realizada num único posto e
15
Processo de carregar um sistema operativo colocada no servidor para
pequeno pré-compilado para executar posteriormente ser replicada para todo o
determinada função.
5. parque. Uma vez que se trata de um cliente vai procurar um ficheiro cujo
ambiente “pre-boot”, sem retirar a nome seja o seu endereço IP
EPROM, é impossível aos utilizadores (previamente atribuído) no formato
efectuar boot de uma forma diferente e hexadecimal. Caso não encontre esse
sem o controlo do administrador. Mas, ficheiro, vai procurar um outro sem o
muito embora se trate sem dúvida de algarismo mais à direita, caso não
uma solução de Administração Zero, encontre retira outro algarismo a direita
existem, como seria de esperar, alguns e assim sucessivamente até que fique
inconvenientes. O principal problema é apenas um e se mesmo esse não for
a existência de um parque informático encontrado, vai carregar um ficheiro
muito variado, o que obriga à criação de (que tem de existir) designado de
várias imagens, geralmente uma por default. Podemos ver um exemplo
cada tipo de computador, o que levanta concreto; ao MAC Address
problemas de gestão das mesmas. Um 00:04:75:FF:76:84 é atribuído pelo
outro problema é o facto de alguns servidor de DHCP o IP 192.168.5.22,
sistemas operativos não suportarem (ou que convertendo cada um dos quatro
serem muito pouco eficientes) números que compõem o IP
configurações dinâmicas, como por separadamente, ficamos com C0A8516.
exemplo a atribuição de um nome ou Neste caso, o primeiro ficheiro a ser
um IP ao cliente. Embora estes procurado será o ficheiro C0A8516.
problemas possam ser resolvidos,
acrescentam bastante complexidade a C0A8516 - 1 host
todo o sistema. Com a configuração C0A851 - 10 host´s
dinâmica pretende evitar-se que tenha C0A85 - 254 host´s
de se manter no servidor uma imagem C0A8 - 64516 hosts´s
por cada posto de trabalho, o que não C0A - ---
faria sentido. Uma solução aceitável C0 - ---
será manter no servidor uma imagem C - ---
por cada tipo de computador, embora o Default - Todos os hosts´s da rede
ideal seria ter apenas uma única imagem
para todos os postos. No Hospital, cada um destes ficheiros
contêm informação sobre o kernel a
Selecção da Imagem carregar pelo cliente, quais os
parâmetros a passar ao kernel (caso seja
O facto de existirem várias imagens necessário) e qual a initrd que deve ser
poderá levantar algumas dúvidas de carregada. Após esta selecção, o cliente
como é que o cliente “sabe” que dá inicio ao download do kernel e da
imagem carregar! A resposta a isso é o initrd, a qual é descompactada e
MAC Address, o IP, o nome ou até colocada em memória. Este processo de
mesmo um grupo. Para tentar selecção da imagem a carregar abre a
simplificar, segue-se um exemplo possibilidade de poder definir grupos
prático do que na realidade acontece uma vez que pode-se dizer que todos os
(por exemplo com o IP). computadores com o IP 192.168.5.xxx
Exemplo: No ficheiro de configuração (C0A85) vão fazer download da
do DHCP (no Hospital é utilizado imagem A e que os computadores com
DHCP static devido à facilidade de o IP 192.168.11.xxx (C0A8B), fazem o
gestão das impressoras) é atribuído um download da imagem B. Este processo
IP ao MAC Address de uma pode ser refinado até ao ponto de definir
determinada placa de rede. No momento um ficheiro para cada cliente, mas como
de seleccionar a imagem correcta cada foi referido anteriormente, o ideal seria
6. ter apenas uma única imagem e nesse no seu ambiente de trabalho que aponta
caso seria apenas preciso utilizar o para a NAS.
ficheiro default para todos os clientes.
Como será fácil de depreender, o
ficheiro default será o mais genérico
possível, depois vai especificando à
medida que o nome do ficheiro vai
aumentando (no exemplo a cima o
ficheiro default é o mais genérico e o
ficheiro C0A8516 é o mais específico
possível, já que diz respeito a uma
máquina em particular e essas
configurações não são carregadas por
qualquer outra máquina).
Equipamento Utilizado
Procedimentos de logística
Para a execução deste projecto o
Departamento de Informática do Para garantir o processo de
Hospital utilizou como clientes (postos transformação de um PC obsoleto e
de trabalho) computadores com cerca de “velho” num equipamento “novo”
6 anos. São computadores Pentium II a obriga a alguns procedimentos de
350MHz, com 32Mb de RAM, placas logística e configuração de software.
gráficas S3 com 4 a 8Mb de memória, Este paper pretende não só dar a
monitores de 15” e 17” polegadas e conhecer a eventuais interessados a
placas de rede SMC/3Com. Os discos solução adoptada mas também orientar
rígidos e os CD-ROM´s foram retirados os operacionais do Serviço de
ou desactivados. Por sua vez, o servidor Informática para os procedimentos a ter
de imagens (TFTP) é também o servidor na “reciclagem” deste equipamento.
DHCP. Este servidor é composto por É possível utilizar equipamentos
um Pentium 4 a 2.6GHz, 512Mb de informáticos, ditos PCs (“Personal
Ram, um disco de 40Gb e uma placa de Computers”) com 6 anos ou mais de
rede Intel. Utiliza o novo sistema vida em plataformas de full desktop
operativo Fedora16 Core 1. Os com capacidade de desempenho
servidores utilizados para disponibilizar semelhante ou melhor a um
o desktop são dois computadores Fujitsu microprocessador actual.
Simens com um processador Xeon a
2.8GHz e com 2.0GHz de memória
RAM. São compostos ainda com dois Operações de logística do hardware
discos de 40Gb. A solução conta ainda
com uma NAS17 com quatro discos Os seguintes procedimentos de logística
SCSI onde são armazenados todos os devem ser executados no início do
dados dos utilizadores, uma vez que processo de “reciclagem” de um PC a
cada um dos utilizadores tem um share terminal CITRIX.
1- Limpar o interior e exterior do
16
17
http://fedora.redhat.com PC;
Network Attached Storage
7. 2- Garantir unidade máxima de vai ser instalada bem como o tipo de
memória de 32Mb (embora equipamento.
possa funcionar com apenas 16);
3- Etiquetar o PC; 2- Assegurar que todos os dados e
4- Lacrar o PC; ficheiros existentes no disco local
5- Garantia de que o equipamento do computador, são colocados na
não é colocado no chão ou que NAS (Network Attached Storage),
tem protecção de esferovite; na pasta “Meus Documentos”
6- Activação da password da referente ao (s) utilizador (es) em
BIOS; causa, afim de assegurar toda a
7- Actualizar a base de dados de informação. Este procedimento deve
stock de equipamento ser efectuado também para os e-
informático. mails, favoritos e contactos
8- Informar o administrador de existentes no Outlook.
sistemas do MAC Address da
placa de rede colocada e de que 3- Informar o administrador de
tipo de PC se trata. sistemas Thin Client se o PC tem
impressora escrava ligada por porta
LPT1 ou, se é impressora partilhada,
Operações de configuração ou então se tem configurado uma
impressora baseada em PrintServer.
Por uma questão de redundância o
arranque poderá ser baseado em duas 4- Trocar a placa de rede por uma
alternâncias: tenha suporte PXE e reiniciar o PC.
Procedimento PXE 5- No momento em que o computador
Capacidade de arrancar está no processo de arranque
directamente a partir da interface de primem-se as teclas Ctrl + ALT + B
rede. Arranque mais rápido baseado para permitir o acesso ao Managed
na EPROM da placa de rede, e PC Boot Agent (MBA) da placa de
servidor de imagem/DHCP; rede; a configuração standard deve
ser a seguinte:
Procedimento HDD
Capacidade de utilizar o disco local. Boot PXE
A mais valia associada ao facto dos Method:
thin clients possuírem disco duro é o Config Disabled
facto de em caso de falha do Message:
servidor de imagens (embora exista Message 3 Seconds
rede) poderem arrancar por disco Timeout:
com uma imagem idêntica à Boot Failure Wait for
carregada remotamente. Prompt: timeout
Boot Next boot
Procedimento: PXE Failure: device
Tabela 1
1- Garantir com o administrador de
rede ou com o responsável, qual o
ponto de rede a que deve ser ligado 6- Após estas configurações deve
o futuro “thin client” e qual a sua premir-se a tecla F10 para
localização. Informar ainda qual o gravar as alterações.
MAC Address da placa de rede que
8. 7- Entrar no BIOS, mas desta vez 1- Garantir que o CD-ROM está em
do PC e alterar a sequência de perfeito funcionamento.
boot (inicialização) para: 2- Garantir que o disco está instalado e
em perfeito funcionamento.
Boot Sequense: 3- Inserir o CD-ROM denominado
“PXE-Image” no leitor.
1. [MBA UNDI (Bus0 Slot15)] 4- Alterar a boot sequense para que o
2. [Network] CD-ROM seja o primeiro a arrancar.
3. [Hard Disk] 5- Reiniciar o computador com o CD-
4. [Diskette] ROM inserido e aguardar que seja
5. [CD-ROM] iniciada a configuração
automaticamente.
Tabela 2 6- Executar o comando instalar e
aguardar que seja dada a mensagem
Após esta configuração, deve proceder à para reiniciar o computador.
gravação da mesma, normalmente com 7- Retirar o CD-ROM e colocar o
a tecla F10. Pode variar de BIOS para disco local na primeira posição do
BIOS. Reinicia-se o computador.
8- boot sequense (tabela 2) para testar
o seu funcionamento.
9- Confirmar que o arranque é feito
NOTA: É de salientar que para o convenientemente através do disco
processo de boot por HD (disco local), o local.
boot Sequence deve ter na primeira
posição a Disquete ou o CD-ROM 10- Colocar o boot sequense como
(consoante o suporte físico que vai ser descrito na tabela 2.
utilizado para o processo). Após o
processo ter terminado, deverá ficar
como a tabela 2 descreve.
Procedimento: (HD)
Conclusão
A principal vantagem da solução centralizada baseada em CITRIX Vs outra baseada em
Linux nativo ou Sun-Solaris prende-se com a continuidade de disponibilizar aos
utilizadores o mesmo ambiente de trabalho com que sempre estiveram habituados a
efectuar as suas tarefas, a arquitectura Win32, mas principalmente por garantir que
soluções de revendedores capazes de correr no servidor, nomeadamente sobre IE
(Internet Explorer) estão automaticamente habilitadas a correr nos clientes sejam eles
obsoletos ou não.
9. Continuamos empenhados em melhorar a experiência informática dos utilizadores, com
o menor custo e encontramo-nos à disposição para colaborar com outras instituições que
pretendam implementar soluções idênticas.
Referências
Red-Hat
http://www.redhat.com
Fedora
http://fedora.redhat.com
Bootix
http://www.bootix.com
XFree86
http://www.xfree86.org/
Citrix
http://www.citrix.com
Linux Terminal Server Project
http://www.ltsp.org
Intel
http://www.intel.com
WfM
http://www.intel.com/labs/manage/wfm/
WfM Especifications
http://www.intel.com/labs/manage/wfm/wfmspecs.htm
Argon Technology Corporation
http://www.argontechnology.com