Administração e Configuração de Equipamentos


Cynthia María Tercero José Abelardo Sánchez
Departamento de Informática Departamento de Informática
UFPE UFPE
cmtr@di.ufpe.br jasc@di.ufpe.br


Abstract

The administration of heterogeneous networks is a complex task.
The present document describes some of the technics used to develop
tools for automating the system configuration and administration of
heterogeneous networks. Also, there can be found a short description
of some applications created to support the configuration task.

Introdução

Com o crescimento e a diversidade de equipamentos existentes em redes de grande porte, a manutenção e controle da informação correspondente aos mesmos tem-se tornado uma tarefa muito complexa. Com o objetivo de minimizar e facilitar a administração e configuração de equipamentos nestes sistemas, tem sido desenvolvidas ferramentas que oferecem mecanismos para que, de forma automática, possam ser incorporados, mantidos e/ou configurados os equipamentos com relativa facilidade.

O presente documento, apresenta uma descrição breve de algumas das ferramentas existentes para a administração e configuração de equipamentos em redes de grande porte, destacando as diferentes técnicas usadas, assim como algumas das vantagens e desvantagens no seu uso. Estas técnicas são apresentadas na seguinte secção. Uma breve descrição de algumas das ferramentas desenvolvidas é apresentada na secção Ferramentas de apoio à administração e configuração de equipamentos e finalmente, são apresentadas algumas conclusões obtidas na elaboração deste documento.

Técnicas para à manutenção das configurações

Muitos dos administradores dos sistemas realizam grandes esforços na tentativa de manter atualizadas as informações das configurações dos equipamentos das suas redes locais, porém, quando é precisso fazer uma consulta ou modificação da informação de um ou mais destes equipamentos, se apresenta o problema de que os dados estão espalhados em diferentes arquivos, possivelmente em diferentes hosts e muito provavelmente em diferentes formatos, o que tem como conseqüência, a possível inconsistência das informações. Estes problemas são estendidos em diferentes níveis de administração, desde a configuração física dos equipamentos, até a manutenção de serviços fornecidos, além de complicar o gerenciamento de usuários e aplicações. Nos seguintes paragrafos, são apresentadas algumas técnicas para facilitar o trabalho de administração e configuração de equipamentos.

Em geral, existem duas técnicas tradicionais para o gerenciamento e manutenção das configurações dos equipamentos. A primera técnica está baseada no uso de configurações individuais em cada equipamento e é chamada de configuração estática. A segunda técnica, está baseada no uso de sistemas centralizados de bancos de dados ou sistemas de arquivos ou pacotes e é chamada de configuração dinâmica.

Configuração estática

Como foi dito anteriormente, uma das principais características desta técnica é que está baseada no uso de configurações locais e individuais para cada equipamento. O anterior, significa que cada máquina mantem o controle das configurações dos recursos locais, assim como os arquivos de configuração e administração em geral ( como gerenciamento de usuários, sistemas de arquivos, etc. ). Para facilitar a administração de recursos locais, normalmente são usadas as ferramentas de administração e configuração que são fornecidas pelos fabricantes do equipamento. Alguns exemplos destas ferramentas são o smit da IBM e o admintool, da Sun.

As vantagens de usar esta técnica de administração são as seguintes:

Anderson [3] cita as principais desvantagens no uso desta técnica, as que são:

Configuração dinámica

Esta técnica, em diferença da anterior, permite o gerenciamento centralizado e a atualização dinâmica das configurações dos equipamentos distribuidos pela rede. Neste caso, quando um equipamento está fazendo boot, executa um script de inicialização que realiza as consultas necessárias ao banco de dados das informações requeridas para a configuração do equipo onde está rodando. As informações podem estar armazenadas num sistema de bancos de dados tradicional ( por exemplo Oracle ), ou num conjunto de arquivos com formato ASCII centralizados. Outra abordagem, sugere o uso das informações em arquivos espalhados pelo sistema, e organizados segundo o tipo de serviços fornecidos ( por exemplo, arquivos de configuração de X11 e Fonts ). Estes arquivos são chamados de pacotes e são administrados de forma centralizada.

As vantagens no uso desta técnica podem ser resumidas da seguinte forma:

As desvantagens são: Outras técnicas

Na atualidade, tem surgido novos enfoques sobre a administração de sistemas, os que levam em conta as melhores características das técnicas descritas anteriormente. Estas técnicas poderiam ser chamadas de híbridas.

Representação das configurações

As técnicas descritas anteriormente podem usar diferentes mecanismos para a manutenção da informação. Os mecanismos mais comumente usados são:

As metas

Algumas das metas que deverão ser atingidas pelos projetistas de sistemas para suporte automático de configuração de equipamentos são as seguintes:

Um fator importante a destacar, é o fato de que na maioria das redes de grande porte se apresenta um problema maior: a heterogeneidade das plataformas e ferramentas de administração. Uma das principais características que as ferramentas de apoio à administração de sistemas devem fornecer, é a independência de plataforma, apresentando ao administrador, uma interface padrão sobre as diferentes plataformas.

Na seguinte secção são apresentados alguns dos trabalhos desenvolvidos para facilitar a configuração e manutenção de equipamentos.

Ferramentas de apoio à administração e configuração de equipamentos

Nesta seção são apresentadas de forma breve, algumas das ferramentas desenvolvidas para facilitar à administração e configuração de equipamentos em redes heterogêneas de grande porte.

GeNUAdmin

O GeNUAdmin [1] é uma ferramenta desenvolvida na Alemânia, que fornece operabilidade entre as seguintes plataformas: SunOs, Ultrix, HP-UX, IRIX4/5, AIX-3.2.x, DEC-OSF1, BSD/386, Solaris e RiscOS.

Este sistema foi desenvolvido usando a linguagem de programação Perl, o que o faz portável nas plataformas anteriormente mencionadas e facilita a modificação para ser ajustado aos requerimentos locais de qualquer ambiente de rede. Os processos de configuração de equipamentos são suportados mediante a geração de pequenos programas shell scripts (Bourne Shell) os que ao ser executados atualizam ou criam novas configurações em função dos serviços que serão oferecidos pelo equipamento sendo configurado.

O GeNUAdmin utiliza um banco de dados centralizado para gerenciar as informações da rede. O banco de dados consiste de um conjunto de arquivos ASCII em formato Stanza onde são armazenadas as informações gerais dos equipamentos. Isto, facilita a modificação e consulta das informações contidas no BD, ainda que a máquina à qual a informação pertence, não esteja disponível.

Os diferentes níveis de apoio na administração e configuração de equipamentos são:

Uma vantagem colateral do uso do GeNUAdmin é que este elimina a necessidade da centralização das informações usando NIS, dado que este mantém uma base de dados centralizada de todas as informações do sistema, permitindo a mudança de password, grupos e outras informações nos níveis de administração e usuário.

syslogd

Em [2], encontramos a descrição de uma outra ferramenta de apoio à administração que foi desenvolvida nos Estados Unidos. O software descrito permite o reuso de ferramentas existentes nos diferentes sistemas operacionais, tais como o sysinfo e o syslog. Esta ferramenta, ao igual que o GeNUAdmin foi desenvolvida usando Perl, o que garante a sua portabilidade entre diferentes plataformas.

O syslogd consiste de três programas separados: logconfig, pruneconfig e o prconfig. O programa logconfig usa o sysinfo e outros utilitários para determinar a informação sobre os equipamentos na rede. O pruneconfig é executado periodicamente usando o comando cron numa máquina específica, conhecida como loghost. O prconfig é uma utilidade que apresenta as informações armazenadas nos arquivos de configuração num formato mais legível ao administrador.

As informações que são gerenciadas pelo syslogd incluim: o host id, o modelo das estações de trabalho, a quantidade de memória primária e virtual dos equipamentos, nome e versão dos sistemas operacionais, os endereços IP e ethernet, o espaço disponível em disco, além do espaço usado, localização do equipamento, usuário ou responsável, serviços fornecidos pelo equipamento, etc.. O leitor deverá ter notado, que algumas destas informações não são fornecidas automáticamente pelos equipamentos, pelo qual, o syslogd fornece a possibilidade de interagir com o administrador para modificar ou atualizar algumas destas informações.

lcfg ( Local ConFiGuration )

O lcfg [3], é uma ferramenta desenvolvida na Universidade de Edinburgh para à administração e o suporte da configuração de equipamentos. Este sistema usa a técnica de configuração híbrida ( dinâmica mais estática ) de equipamentos, apoiada fortemente pelo serviço fornecido pela Sun, chamado de Auto Install. As informações "dinâmicas" são armazenadas num banco de dados centralizado e as configurações estáticas são armazenadas em arquivos localizados em cada máquina, contendo os parámetros de configuração de baixo nível usados específicamente para cada máquina segundo o fabricante.

Na atualidade, aproximadamente 400 estações de trabalho são gerenciadas por este sistema de administração, e devido às semelhanças entre os equipamentos, se tem usado a técnica de cloning, pois as configurações são muitos parecidas para cada máquina.

Config

O sistema de automatização das configurações Config [4], foi desenvolvido na Universidade de Massachusetts. Esta ferramenta usa os serviços fornecidos pelo rdist para facilitar a distribuição e manutenção das configurações entre diferentes máquinas. As principais características deste sistema são:

As principais ferramentas nas que este sistema esta apoiado são: o código do sistema de controle CVS, o rdist, o GNU make e a linguagem de programação de scripts Perl.

O Config utiliza um sistema de bancos de arquivos distribuidos para armazenar a configuração dos equipamentos. Algumas das informações gerenciadas são: nome da máquina, nome e versão do sistema operacional, grupo administrativo, serviços fornecidos pela máquina e algumas utilidades para o gerenciamento de usuários, informações referentes à CPU, o disco, a memória principal e outras características físicas de cada máquina. O sistema gera scripts de configuração que são distribuidos usando o rdist. O Config fornece utilidades para garantir a recuperação das configurações após falha de algum dos equipamentos. Na figura 1, podem ser observados os componentes do sistema Config.

Configuração usada pelo sistema Config
Figura 1: Componentes do sistema Config

Um outro exemplo

Um trabalho mais recente, no instituto de Mining and Technology of New Mexico, foi desenvolvido por Michael Fisk [5] e consiste de uma ferramenta para a administração de redes heterogêneas. Segundo Fisk, o sistema desenvolvido pode ser executado praticamente em qualquer plataforma Unix, permitindo que as configurações dos equipamentos sejam mantidos sem ter que fazer mudanças nos arquivos de configuração de forma manual.

A estrutura geral do sistema tem três componentes principais:

Conclusões

No presente documento foram apresentadas algumas das técnicas de administração e gerenciamento de configurações de equipamentos em redes de grande porte. Foram mencionadas ferramentas para o gerenciamento estático e dinâmico das configurações.

Existem muitos esforços para a criação de aplicações que facilitem a administração destas redes, mas ainda não foram fornecidos padrões na definição das mesmas o que acrescenta dificultades no seu desenvolvimento e na sua utilização.

Segundo os autores consultados, a tendência no desenvolvimento de ferramentas de administração está baseada no uso das técnicas dinâmicas, com sistemas de bancos de dados centralizados e em alguns casos se prevê o uso de linguagens de alto nível na especificação das configurações e consultas de previsão de falhas.

Referências

[1] Central System Administration in a Heterogeneous Unix Environment: GeNUAdmin.
Dr. Magnus Harlander. On Proceedings of Lisa 94.
1994.

[2] Tracking Hardware Configuration in a Hetergeneous Network with syslogd.
Rex Walters. IBM Microelectronics Division. On Proceedings of Lisa 95.
1995.

[3] Toward a High-Level Machine Configuration System
Paul Anderson. University of Edinburgh. On proceedings of LISA 94.
1994.

[4] Config: A Mechanism for Installing and Tracking System Configurations
John P. Rouillard and Richard B. Martin. University of Massachusetts at Boston. On proceedings of LISA 94.
1994.

[5] Automating the Administration of Heterogeneous LANs
Michael Fisk. New Mexico Institute of Mining and Technology. On proceedings of LISA 96.
1996.