Concep¸c˜ao de uma Plataforma de Gest˜aoIntegrada para Sistemas de Suporte `aComputa¸c˜aoDistribu´ıda

Sara Filipa Coutinho Barbas Valente (Licenciada)

Disserta¸c˜aopara obten¸c˜aodo Grau de Mestre em Engenharia Inform´aticae de Computadores

J´uri

Presidente: Professor Doutor Jos´eCarlos Alves Pereira Monteiro Orientador: Professor Doutor Jos´eLu´ısBrinquete Borbinha Orientador: Professor Doutor Miguel Leit˜aoBignolas Mira da Silva Vogal: Professor Doutor Andr´eFerreira Ferr˜aoCouto e Vasconcelos

Novembro 2011 Agradecimentos

Em primeiro lugar agrade¸coaos meus orientadores, Gon¸caloBorges, Prof. Jos´eBorbinha e Prof. Miguel Mira da Silva pela sua orienta¸c˜ao,apoio e disponibilidade durante este ´ultimoano.

Gostaria tamb´emde agradecer ao LIP, em especial ao Prof. M´arioPimenta, a hip´otesede continuar a minha forma¸c˜ao.

Agrade¸coaos meus amigos Rodolfo, Daniel e Alberto a ajuda prestada.

Por fim um agradecimento muito especial `aminha m˜aee ao Lu´ısMiguel pelo seu apoio incondicional.

i ii Resumo

Actualmente gerir uma empresa ou institui¸c˜aoseria imposs´ıvel sem utilizar Tecnologias de In- forma¸c˜ao.Fornecer servi¸cosde qualidade que permitem ao utilizador uma solu¸c˜aof´acile trans- parente no manuseamento da informa¸c˜ao´euma tarefa ´arduapara quem os providencia. E´ neste dom´ıniode elevada complexidade que a framework ITIL pode ajudar a encontrar solu¸c˜oescapa- zes de melhorar pr´aticasna gest˜ao,integra¸c˜aoe manipula¸c˜aoda informa¸c˜ao.A framework ITIL foca-se em descrever ”O QUE FAZER”e n˜ao”COMO FAZER”, explicando em detalhe todos os processos mas n˜aoindica como devem ser implementados.

Neste documento propusemos implementar os processos de Gest˜aode Configura¸c˜oese Gest˜ao de Altera¸c˜oesconsiderados priorit´ariospara suportar as opera¸c˜oesdi´ariasdecorrentes da gest˜ao da infra-estrutura de uma organiza¸c˜ao. Utilizando o m´etodo Action Research, esta tese foi aplicada numa associa¸c˜aocient´ıficae t´ecnicade utilidade p´ublicacujos projectos de investiga¸c˜ao, desenvolvimento e implementa¸c˜aos˜aocentrados sobretudo no dom´ıniodas infra-estruturas de computa¸c˜aodistribu´ıdae computa¸c˜ao grid.

Foi constru´ıdoum sistema prot´otipo, sendo poss´ıvel efectuar altera¸c˜oesrelativas `ainfra- estrutura de hardware de forma mais r´apida,onde cada interveniente no fluxo de trabalho conhece qual o estado da tarefa a realizar e existindo a garantia que no final da altera¸c˜ao,essa informa¸c˜ao´eregistada na CMDB de forma correcta e actualizada.

iii iv Abstract

Currently managing an enterprise or institution would be impossible without the use of In- formation Technology. Providing quality services that allow the user an easy and transparent handling of information is a daunting task for anyone who provides it. ITIL is a framework that can help to provide solutions that improve practice management, integration and manipulation of information. ITIL describes ”WHAT TO DO”and not ”HOW TO DO”, explaining in detail all the processes but does not indicate how they should be implemented.

In this document we proposed to implement Change Management and Configuration Ma- nagement processes considered to be a priority to support the daily management operations of an organization.

Using Action Research Method, this thesis was applied to a scientific and technical associ- ation of public utility whose research, development and implementation is also focused in the field of managing a distributed computing infrastructure.

A prototype system was built, and now is possible to make faster changes on the hardware infrastructure. There is also the guarantee that, by the end of the change, this information is recorded in the CMDB correctly and updated.

v vi Palavras Chave Keywords

Palavras Chave

ITIL Implementa¸c˜aoITIL Gest˜aode Altera¸c˜oes Gest˜aode Configura¸c˜oes CMDB Open Source

Keywords

ITIL ITIL Implementation Change Management Configuration Management CMDB Open Source

vii viii Acr´onimos

AUGER The Pierre Auger Cosmic Ray Observatory

CC Centro de C´alculo

CCTA Central Computer and Telecommunications Agency

CERN Organiza¸c˜aoEuropeia para a Pesquisa Nuclear

CMDB Configuration Management Database

EGI European Grid Initiative

ESA AgˆenciaEspacial Europeia

EXIN Netherlands IT Examinations Institute

FCCN Funda¸c˜aopara a Computa¸c˜aoCient´ıficaNacional

GA Gest˜aode Altera¸c˜oes

GC Gest˜aode Configura¸c˜oes

IC Item de Configura¸c˜ao

INGRID Iniciativa Nacional Grid

ITIL Information Technology Infrastructure Library

KPI Indicador Chave de Desempenho

LIP Laborat´oriode Instrumenta¸c˜aoe F´ısicaExperimental de Part´ıculas

NASA National Aeronautics and Space Administration

RfC Request for Change

RT

SNOLAB Sudbury Neutrino Observatory Laboratory

TI Tecnologias de Informa¸c˜ao

ix x ´Indice

1 Introdu¸c˜ao 1 1.1 Motiva¸c˜ao...... 1 1.2 Quest˜oesde Investiga¸c˜ao...... 3 1.3 M´etodo de Investiga¸c˜ao ...... 3 1.4 Estrutura da Tese ...... 5

2 Trabalho Relacionado 7 2.1 Gest˜aoda Infra-estrutura ...... 7 2.1.1 Gest˜aoe Opera¸c˜aoda Infra-Estrutura de Rede ...... 7 2.1.2 Gest˜aoe Opera¸c˜aoda Infra-Estrutura de Servi¸cosComputacionais . . . . 10 2.1.2.1 Aplica¸c˜oespara Gest˜aode Desempenho ...... 10 2.1.2.2 Produtos para Gest˜aode Eventos ...... 10 2.2 ITIL ...... 12 2.2.1 Areas´ Relevantes para a Gest˜aode um Centro de C´alculo ...... 13 2.2.1.1 Suporte aos Servi¸cos ...... 13 2.2.1.2 Benef´ıciosResultantes do ITIL ...... 15 2.2.2 Gest˜aode Configura¸c˜oes...... 15 2.2.3 Gest˜aode Altera¸c˜oes...... 18 2.3 Suporte `aGest˜aode Processos ITIL ...... 24 2.3.1 Software para Gest˜aode Configura¸c˜oes...... 24 2.3.2 Software para Gest˜aode Altera¸c˜oes ...... 26

3 Problema 29 3.1 Contextualiza¸c˜ao ...... 29 3.2 Causas e Problemas Principais nos Procedimentos do LIP ...... 30 3.3 Colec¸c˜aoe Caracteriza¸c˜aode Requisitos ...... 31 3.3.1 Requisitos de Neg´ocio ...... 31 3.3.2 Requisitos N˜aoFuncionais ...... 31 3.3.3 Requisitos Funcionais ...... 31

xi xii ´INDICE

4 Proposta 33 4.1 Sistema da Gest˜aode Altera¸c˜oes ...... 33 4.1.1 Modelo de Actividades ...... 33 4.1.2 Estados das Altera¸c˜oes...... 35 4.1.3 Categorias de Altera¸c˜oese Crit´erios de Avalia¸c˜ao...... 36 4.1.4 Identifica¸c˜aode Funcionalidades ...... 37 4.2 Sistema de Gest˜aode Configura¸c˜oes ...... 39 4.2.1 Modelo de Actividades - Planeamento ...... 41 4.2.1.1 Defini¸c˜aodos Itens de Configura¸c˜ao ...... 41 4.2.1.2 Modelo da CMDB e Fluxo Operacional de Implementa¸c˜ao . . . 41 4.2.2 Modelo de Actividades - Identifica¸c˜ao ...... 42 4.2.3 Modelo de Actividades - Especifica¸c˜ao ...... 44 4.2.4 Modelo de Actividades - Controlo da Configura¸c˜ao...... 46 4.2.5 Modelo de Actividades - Auditoria e Verifica¸c˜ao ...... 47 4.2.6 Identifica¸c˜aode Funcionalidades ...... 47

5 Concretiza¸c˜aoda Solu¸c˜ao 49 5.1 Request Tracker ...... 49 5.1.1 Arquitectura ...... 50 5.1.2 Modelo L´ogico ...... 51 5.1.3 Raz˜oesda Adop¸c˜aodo Request Tracker ...... 52 5.1.4 Configura¸c˜aodo Request Tracker ...... 54 5.1.4.1 Ticket Actuando como RfC ...... 54 5.1.4.2 Fluxo de Tarefas (Workflows) ...... 56 5.1.4.3 Ciclo de Vida de um Ticket ...... 57 5.1.4.4 Inser¸c˜aodas Altera¸c˜oesna Gest˜aode Configura¸c˜oes ...... 62 5.2 Zenoss ...... 62 5.2.1 Monitoriza¸c˜aoOrientada ao Modelo de Configura¸c˜ao...... 62 5.2.2 Principais Funcionalidades ...... 63 5.2.3 Arquitectura ...... 65 5.2.4 Modelo ...... 66 5.2.5 Raz˜oesda Adop¸c˜aodo Zenoss ...... 68 5.2.6 O Zenoss como Gestor de Configura¸c˜oesno LIP ...... 68 5.2.7 Modelo de Actividades do Processo de GC e sua Concretiza¸c˜aono Zenoss 68

6 Avalia¸c˜ao 71

7 Conclus˜ao 77 7.1 Trabalho a Desenvolver ...... 78 ´INDICE xiii

Bibliografia 79

A Simbologia Utilizada nos Diagramas do Processo da Gest˜aode Configura¸c˜oes85

B Descri¸c˜aodos Principais Casos de Uso do Sistema de Gest˜aode Altera¸c˜oes 87

C Descri¸c˜aodos Principais Casos de Uso do Sistema de Gest˜aode Configura¸c˜oes91

D Modelo L´ogicodo Request Tracker 93

E Request Tracker Ticket Template 95

F Scrips Configurados no Request Tracker 97

G Estrutura do Ficheiro XML Gerado pelo Processo de Gest˜aode Altera¸c˜oes 99 xiv ´INDICE Lista de Figuras

1.1 Fases da Investiga¸c˜ao-Ac¸c˜ao...... 5

2.1 Exemplo de Ferramentas de Monitoriza¸c˜ao,Alerta e Reac¸c˜aopara V´ariosRecur- sos e Servi¸cosde um CC...... 8 2.2 Quadrante M´agicoque Permite Avaliar um Fabricante de Produtos APM [14]. . 11 2.3 Quadrante M´agicode Produtos ECA [15]...... 12 2.4 Estrutura da Framework ITIL (ITIL V2) [11]...... 13 2.5 Modelo de Suporte aos Servi¸cos (ITIL V2) [11]...... 14 2.6 Gest˜aodas Altera¸c˜oese Outros Processos ITIL [14] ...... 19 2.7 Processo da Gest˜aode Altera¸c˜oes...... 20 2.8 Estados de um RfC [15] ...... 22 2.9 Software para Gest˜aode Configura¸c˜oes[17]...... 25 2.10 Avalia¸c˜aodo Software para Gest˜aode Configura¸c˜oes[17]...... 25 2.11 Avalia¸c˜aodo Software para Gest˜aode Altera¸c˜oes[17]...... 27

4.1 Processo de Gest˜aode Altera¸c˜oesAdoptado...... 34 4.2 Diagrama de Estados de uma Altera¸c˜ao...... 35 4.3 Casos de Uso do Sistema de Gest˜aode Altera¸c˜oes...... 39 4.4 Fases do Processo de GC, Proposto para o LIP...... 40 4.5 Fase de Planeamento da Configura¸c˜aoProposta para o LIP...... 41 4.6 Diagrama Entidade-Rela¸c˜ao(ER) Ilustrando um Esquema de Defini¸c˜aodos IC na CMDB Proposto por Baron et al.[28] ...... 43 4.7 Fase de Identifica¸c˜aoda Configura¸c˜aoProposta para o LIP...... 44 4.8 Fase de Especifica¸c˜aoda Configura¸c˜ao...... 45 4.9 Fase de Controlo da Configura¸c˜aoProposta para o LIP...... 46 4.10 Fase de Auditoria da Configura¸c˜aoProposta para o LIP...... 47 4.11 Casos de Uso do Sistema de Gest˜aode Configura¸c˜oes...... 48

5.1 Arquitectura do RT [29]...... 51 5.2 Modelo L´ogicodo RT...... 52

xv xvi LISTA DE FIGURAS

5.3 N´umeroe Estado de Tickets Existentes na Fila Hardware Change Request Criados a Partir de 13 Janeiro de 2011...... 53 5.4 Template de um Ticket no RT Configurado para Efectuar uma Altera¸c˜ao. . . . . 57 5.5 Ciclo de Vida um Ticket no RT - Parte 1 ...... 59 5.6 Ciclo de Vida um Ticket no RT - Parte 2 ...... 60 5.7 Ciclo de Vida um Ticket no RT - Parte 3 ...... 61 5.8 Vista de Alto N´ıvel do Zenoss [34]...... 63 5.9 Workflow: Monitoriza¸c˜aoOrientada ao Modelo de Configura¸c˜ao[34]...... 63 5.10 Mapa de Rede...... 64 5.11 Arquitectura em Camadas do Zenoss...... 65 5.12 Modelo de Dom´ıniodo Zenoss...... 66 5.13 Gr´aficosde Desempenho Disponibilizados pelo Zenoss...... 70

B.1 Casos de Uso do Sistema de Gest˜aode Altera¸c˜oes...... 90

C.1 Casos de Uso do Sistema de Gest˜aode Configura¸c˜oes...... 92 Lista de Tabelas

2.1 KPIs para os Processos da GA e Gest˜aoda Release [25]...... 23

4.1 Crit´eriospara Categoriza¸c˜aode Altera¸c˜oes: A = Altera¸c˜aoPrincipal, B = Al- tera¸c˜aoSignificante, C = Altera¸c˜aoMenor...... 37 4.2 Per´ıodo de Execu¸c˜aopara as Diferentes Categorias de Altera¸c˜oes ...... 37 4.3 Tipos de ICs definidos para o LIP e seus atributos...... 42

5.1 Rela¸c˜aoentre Pedido de Altera¸c˜aoe Ticket...... 54

6.1 As Caracter´ısticasdo RT Permitem Satisfazer os Requisitos de Neg´ocio,Funcio- nais e N˜aoFuncionais estabelecidos...... 72 6.2 As Caracter´ısticasdo Zenoss Permitem Satisfazer os Requisitos de Neg´ocio,Fun- cionais e N˜aoFuncionais estabelecidos ...... 74

xvii xviii LISTA DE TABELAS Cap´ıtulo1

Introdu¸c˜ao

1.1 Motiva¸c˜ao

A Internet ´ecada vez mais um ve´ıculo privilegiado para a partilha e processamento de in- forma¸c˜ao`aescala global. Os problemas com que a ciˆenciamoderna se depara s˜aode uma tal complexidade, que requerem grande tempo de c´alculo, e geram um tal volume de dados que se tornam incomport´aveis de resolver em tempo ´utilsem que se recorra a mecanismos de cola- bora¸c˜aoglobais. Algumas das grandes comunidades cient´ıficasactuais tais como o CERN e a NASA foram as principais impulsionadoras de solu¸c˜oes de computa¸c˜aodistribu´ıdadestinadas a resolver problemas de grande dimens˜ao,organizando-se de forma a partilharem os recursos computacionais de v´ariasinstitui¸c˜oes atrav´esda Internet.

Al´emda comunidade cient´ıficatamb´emempresas grandes e influentes, como a Google, a Amazon e a e-Bay, exploram j´amodelos de computa¸c˜aodistribu´ıdae come¸cama disponibilizar, sob a forma de servi¸cos acess´ıveis remotamente, a possibilidade de um utilizador requisitar tempo de computa¸c˜aoou espa¸code armazenamento para as suas aplica¸c˜oes.

E´ hoje poss´ıvel, para um utilizador, recorrer aos dois paradigmas de computa¸c˜aodistribu´ıda, Grid Computing [1] [2] e Cloud Computing [3], e usufruir de grandes capacidades de armazena- mento e processamento, de forma simples e transparente. O utilizador pode ainda ter acesso e manobrar remotamente instrumentos cient´ıficosde grandes dimens˜oessem ter que assegurar a gest˜aoe a manuten¸c˜aodos mesmos. No entanto, a disponibiliza¸c˜aode grandes infra-estruturas de computa¸c˜aodistribu´ıdaexige a opera¸c˜aode uma vasta gama de recursos e servi¸coscomplexos.

Com a adop¸c˜aoda computa¸c˜aodistribu´ıda,quer pelas empresas quer pelos investigadores, muitos Centros de C´alculo(CC) vˆeem-seagora acrescidos de uma maior complexidade e res- ponsabilidade. Para al´emda gest˜aolocal das suas infra-estruturas, s˜aotamb´emparte de redes mais abrangentes que podem ser privadas, nacionais ou mesmo globais. Neste contexto, s˜ao respons´aveis pela gest˜aodo equipamento (f´ısicoe virtual) e pelos servi¸cosque podem ser usados

1 2 CAP´ITULO 1. INTRODUC¸ AO˜

por vastas comunidades de utilizadores, e que devem ser permanentemente monitorizados de forma a garantir a qualidade de servi¸corequerida pelos clientes da infra-estrutura.

A opera¸c˜aoe o controlo de um parque de equipamentos t˜aovasto e diverso como o existente em qualquer CC actual ´ede extrema complexidade, dado o vasto n´umerode ferramentas, de plataformas e de hierarquias entre recursos. Consequentemente, para diminuir o esfor¸code opera¸c˜ao,´enecess´ariocompreender todos os componentes de um CC, por forma a identificar onde e como se podem optimizar recursos.

Um CC ´eum espa¸cof´ısicoque aloja v´ariascomponentes inform´aticas,e componentes n˜ao inform´aticas. Al´emdos sistemas que possibilitam o servi¸coprestado aos utilizadores (com- ponentes inform´aticas),existem servi¸cosque asseguram que todo o equipamento funciona de forma correcta e num ambiente adequado (componentes n˜aoinform´aticas).Ou seja, aos desafios t´ecnicose heterog´eneos,ocorrentes na gest˜aodos variados servi¸coscomputacionais, prestados pelo CC, outros desafios s˜aoimportantes: a adequada aloca¸c˜aodo espa¸coe dos equipamentos, a monitoriza¸c˜aodas condi¸c˜oesambientais, a vigilˆanciado espa¸co,bem como a manuten¸c˜aodos equipamentos s˜aoprocedimentos de opera¸c˜aot˜aov´alidoscomo a opera¸c˜aodos servi¸cospara a comunidade, e requerem a gest˜aode procedimentos de forma r´apidae eficaz.

Os dispositivos da rede (ex: routers, hubs, switchers, etc) devem manter-se operacionais. Tamb´emneste dom´ınioferramentas de monitoriza¸c˜aos˜aoutilizadas para detectar e produzir alarmes de forma que a equipa t´ecnicapossa ser notificada caso alguma anomalia na rede ocorra. A monitoriza¸c˜aodo tr´afegode rede ´etamb´emnecess´ariapor uma quest˜aode seguran¸canas organiza¸c˜oesactuais. As organiza¸c˜oessofrem ataques aos seus dados e aos seus equipamentos, a maioria deles atrav´esda rede. Monitorizar o tr´afegona rede ´euma das preocupa¸c˜oesde quem gere um CC, que para al´emda vertente de seguran¸ca,pretende tamb´emcontrolar os gastos econ´omicos.

As infra-estruturas f´ısicae de rede de um CC servem o prop´ositode fornecer servi¸cosaos utilizadores. Alguns servi¸coss˜aotransversais a qualquer tipo de organiza¸c˜ao,seja ela de grande, m´ediaou pequena dimens˜ao. Exemplos desses servi¸coss˜aoo DNS, o correio electr´onico,os servi¸cosweb, os servi¸cosde autentica¸c˜ao,os servi¸cosde bases de dados ou servi¸cosde reposit´orios, e cujo mau funcionamento p˜oeem risco todas as camadas de servi¸cossuperiores tais como os de computa¸c˜ao,de armazenamento e outros.

E´ neste dom´ıniode elevada complexidade que ´eo da gest˜aode um CC, que surge a framework ITIL (Information Technology Infrastructure Library Vers˜ao2) [4] [5] [6] [7] [8] [9] frequentemente referenciada como sendo o manual de boas pr´aticasna gest˜ao,integra¸c˜aoe manipula¸c˜aoda informa¸c˜aogerada num CC.

O ITIL Vers˜ao2 ´euma compila¸c˜aovasta, organizada em diversas ´areas,sendo a ´area do Suporte aos Servi¸cos,que trata dos processos necess´arios`amanuten¸c˜aodas opera¸c˜oesdi´arias, a primeira que deve ser concretizada. Desta ´areafazem parte dois processos intrinsecamente 1.2. QUESTOES˜ DE INVESTIGAC¸ AO˜ 3

ligados: Gest˜aode Altera¸c˜oese Gest˜aode Configura¸c˜ao,tornando-se imprescind´ıvel relacion´a- los. A CMDB (Configuration Management Database) ´eum reposit´oriodos dados relacionados com todas as componentes do sistema de informa¸c˜aode uma empresa/institui¸c˜aoe ´euma parte fulcral do processo de Gest˜aode Configura¸c˜oes.

1.2 Quest˜oesde Investiga¸c˜ao

O prop´ositodesta tese ´ecompreender como se efectua a Gest˜aoda Infra-estrutura F´ısica e de Rede de um CC: quais os processos envolvidos, quais s˜aopriorit´arios,quem s˜aoas pessoas respons´aveis pela execu¸c˜aode tarefas, como s˜aoexecutadas essas tarefas e quais os recursos envolvidos.

Faz parte ainda do ˆambito desta tese compreender que ferramentas existem no mercado e de que forma conseguem automatizar e concretizar os processos encontrados.

Em suma, esta tese tem que averiguar como se pode efectuar uma altera¸c˜aonuma institui¸c˜ao e como esta altera¸c˜aoafecta os recursos existentes.

Em suma o objectivo ´eencontrar uma resposta para as seguintes quest˜oes:

1. Quest˜ao1: Como desenhar o processo de Gest˜aode Altera¸c˜oes para permitir, de uma forma comum e coerente, gerir as altera¸c˜oesna infra-estrutura f´ısica,de rede e de servi¸cos do CC?

2. Quest˜ao2: Como desenhar o processo de Gest˜aode Configura¸c˜oese a CMDB, para que as informa¸c˜oessobre a infra-estrutura, assim como as rela¸c˜oesentre os seus diversos itens, sejam conhecidas, estejam globalmente acess´ıveis e num estado actualizado?

3. Quest˜ao3: Que ferramentas podem ser utilizadas e de que forma podem ser adaptadas para concretizarem os processos de Gest˜aode Altera¸c˜oese de Gest˜aode Configura¸c˜oes?

1.3 M´etodo de Investiga¸c˜ao

O m´etodo de investiga¸c˜aoutilizado no desenvolvimento desta tese ´eo designado como Inves- tiga¸c˜ao-Ac¸c˜ao (Action Research) [10]. Este m´etodo de investiga¸c˜aosurgiu nos meados do s´eculoXX e foi inicialmente utilizado nas ciˆenciasm´edicase sociais, quando se pretendia intro- duzir uma nova terapˆeuticae analisar os efeitos da´ıresultantes. Desde os finais dos anos noventa come¸coutamb´ema ser adoptado na ´areados sistemas de informa¸c˜ao.

Este m´etodo segue um abordagem orientada `amudan¸ca,pressupondo que os processos so- ciais complexos podem ser estudados atrav´esda introdu¸c˜aopropositada de altera¸c˜oes(entropia 4 CAP´ITULO 1. INTRODUC¸ AO˜

controlada), observando, `aposteriori, os efeitos resultantes dos factores exteriormente injectados no sistema. No m´etodo Investiga¸c˜ao-Ac¸c˜ao,o investigador pretende experimentar uma teoria com indiv´ıduosem ambientes reais, avaliando continuamente os resultados e introduzindo cor- rec¸c˜oesou novos dados, repetindo este processo at´eatingir um resultado considerado correcto.

Para ser poss´ıvel calcular o efeito da introdu¸c˜aopropositada de uma altera¸c˜aoe posteri- ormente a sua avalia¸c˜ao,´eseguido um processo de investiga¸c˜aosistem´aticoe iterativo, cujo conhecimento adquirido em cada itera¸c˜aopode ser colocado em pr´aticana itera¸c˜aoseguinte.

O dom´ınioideal de ac¸c˜aopara este m´etodo ´ecaracterizado por:

• um ambiente onde o investigador interv´emdirectamente no pr´opriosistema em estudo como um actor do mesmo, passando a fazer parte do objecto da investiga¸c˜ao.

• o conhecimento obtido poder ser imediatamente aplicado

• um processo de pesquisa c´ıclicoligando teoria e pr´atica

A Investiga¸c˜ao-Ac¸c˜aodeve estar definida por um plano de investiga¸c˜aoe um plano de ac¸c˜ao, ambos suportados por um conjunto de m´etodos e regras. S˜aoas chamadas fases do processo metodol´ogico. Assim, para se concretizar um processo de Investiga¸c˜ao-Ac¸c˜ao,ser´anecess´ario seguir quatro fases:

• Diagnosticar ou descobrir o problema.

• Construir o plano de ac¸c˜ao.

• Propor a execu¸c˜aodo plano e observar o seu funcionamento.

• Reflectir, interpretar e integrar os resultados. Construir um novo plano. 1.4. ESTRUTURA DA TESE 5

As fases da Investiga¸c˜ao-ac¸c˜aoassumem a configura¸c˜aoapresentada na Figura 1.1.

Figura 1.1: Fases da Investiga¸c˜ao-Ac¸c˜ao.

1.4 Estrutura da Tese

De seguida descreve-se a estrutura do documento:

1. O cap´ıtulo 1 introduz e descreve o problema que se pretende solucionar e apresenta o M´etodo de Investiga¸c˜aoutilizado na sua resolu¸c˜ao.

2. O cap´ıtulo2 apresenta o Trabalho Relacionado, incluindo a apresenta¸c˜ao/avalia¸c˜aodos produtos existentes de gest˜aoda Infra-estrutura f´ısicae de servi¸cosduma organiza¸c˜ao. Descreve os processos de Gest˜aode Altera¸c˜oese de Gest˜aode Configura¸c˜oes segundo a metodologia ITIL, e compara os diversos softwares existentes no mercado com base nas capacidades que possuem para concretizar esses mesmos processos.

3. No cap´ıtulo3 ´eapresentado um diagn´osticoda forma como s˜aoefectuados os procedimentos di´ariospara gerir o CC do LIP, e s˜aodefinidos os requisitos funcionais, n˜aofuncionais e de neg´ocioa satisfazer.

4. No cap´ıtulo4 s˜aoapresentados os processos de Gest˜aode Configura¸c˜oese de Gest˜aode Al- tera¸c˜oesque o LIP deve adoptar para satisfazer os requisitos pretendidos. Os diagramas de fluxo de processo inclu´ıdosneste cap´ıtuloutilizam a simbologia constante no ApˆendiceA. 6 CAP´ITULO 1. INTRODUC¸ AO˜

5. No cap´ıtulo5, ´edescrita a forma como as ferramentas seleccionadas (Request Tracker e Zenoss) podem ser utilizadas para concretizar os processos definidos no cap´ıtulo4.

6. Conclus˜aoe apresenta¸c˜aode Trabalho Futuro.

Esta tese executa um ciclo do M´etodo de Investiga¸c˜ao-Ac¸c˜ao: a Fase de Planifica¸c˜ao´e constitu´ıdapelos cap´ıtulos1, 2 e 3, a Fase de Ac¸c˜ao´econstitu´ıdapelos cap´ıtulos4 e 5 e a Fase de Reflex˜ao´eapresentada nos cap´ıtulos6 e tamb´emna Conclus˜ao.

O M´etodo de Investiga¸c˜ao-Ac¸c˜aoindica que o investigador deve experimentar uma teoria com indiv´ıduosem ambientes reais. O Centro de C´alculodo Laborat´oriode Instrumenta¸c˜aoe F´ısicaExperimental de Part´ıculas(LIP) ´ea organiza¸c˜aoonde se tenta responder `asquest˜oes levantadas nesta tese. O contexto desta institui¸c˜ao´eexplicado na Sec¸c˜ao3.1. Cap´ıtulo2

Trabalho Relacionado

2.1 Gest˜aoda Infra-estrutura

Os Centros de C´alculo(CC) s˜aorespons´aveis pela gest˜aodo equipamento (f´ısicoe virtual) e pelos servi¸cosque podem ser usados por vastas comunidades de utilizadores, e que devem ser permanentemente monitorizados de forma a garantir a qualidade de servi¸corequerida pelos clientes da infra-estrutura.

Para fazer a gest˜aodas m´ultiplas componentes de um CC existem ferramentas que propiciam uma opera¸c˜aocontrolada dos recursos. Na Figura 2.1 apresentamos alguns dos servi¸cost´ıpicos que funcionam sobre os diferentes tipos de infra-estruturas de CC: f´ısica, rede e de servi¸cos. A cada tipo de infra-estrutura e servi¸co, e dependendo da funcionalidade a vigiar, tenta-se configurar e adequar a ferramenta de monitoriza¸c˜aoe alerta que melhor encaixa na arquitectura e topologia do CC. Na presente Sec¸c˜aocomparam-se algumas das ferramentas de monitoriza¸c˜ao existentes, tanto open-source como comerciais, cuja funcionalidade ´ea monitoriza¸c˜aoda rede e dos servi¸cosexistentes num CC.

2.1.1 Gest˜ao e Opera¸c˜aoda Infra-Estrutura de Rede

A monitoriza¸c˜aodo tr´afegode rede ´euma das tarefas mais importantes a realizar num CC de forma a optimizar o fluxo de dados de acordo com os requisitos dos equipamentos e a largura de banda dispon´ıvel. Assume especial relevo na minimiza¸c˜aode poss´ıveis riscos de seguran¸ca,j´aque os ataques aos dados e aos equipamentos, provˆemna sua maioria atrav´esda rede. Para efectuar a monitoriza¸c˜aoutilizam-se sistemas de monitoriza¸c˜aoda rede cujo objectivo ´efornecer uma vis˜aocentralizada da rede e dos sistemas, para que os seus administradores consigam analisar as condi¸c˜oese evitar/corrigir os problemas rapidamente e de forma eficiente.

Trˆessolu¸c˜oesopen-source (Nagios, OpenNMS, Zenoss) para gest˜aode sistemas s˜aoavaliadas no estudo realizado por Jane Curry [12].

7 8 CAP´ITULO 2. TRABALHO RELACIONADO

Figura 2.1: Exemplo de Ferramentas de Monitoriza¸c˜ao,Alerta e Reac¸c˜aopara V´ariosRecursos e Servi¸cosde um CC.

O estudo conclui que o Nagios ´euma ferramenta bem testada, fi´avel e com uma grande comunidade de utilizadores. As notifica¸c˜oess˜aosimples de configurar, mas caso seja necess´ariaa produ¸c˜aode an´alisesbaseadas em registos fornecidos pelo Nagios talvez esta n˜aoseja a solu¸c˜aoa escolher. O Zenoss e o openNMS s˜aoprodutos com funcionalidades de discovery, monitoriza¸c˜ao da disponibilidade, gest˜aode problemas, gest˜aode desempenho e reporting. O Zenoss tem tamb´emalguma capacidade de topology mapping e tem melhor documenta¸c˜aoque o OpenNMS. O estudo revela que a arquitectura de eventos, alarmes e notifica¸c˜oesdo OpenNMS ´ebastante confusa. A autora refere o Zenoss como a melhor escolha, esperando que a comunidade Zenoss melhore alguns aspectos nomeadamente a documenta¸c˜ao.

No estudo, Monitoring Systems Comparison, de Scott Stone [13], comparam-se outras trˆessolu¸c˜oescapazes de monitorizar a rede: Hyperic, Lithium e o Zabbix. Todas possuem um modelo h´ıbridode licenciamento, ou seja tˆemuma vers˜aogratuita de base e uma vers˜ao comercial que presta suporte aos utilizadores consoante as suas preferˆencias. De seguida enumeram-se as principais caracter´ısticas de cada um destes sistemas de Monitoriza¸c˜ao, resultantes da avalia¸c˜ao[13] efectuada. 2.1. GESTAO˜ DA INFRA-ESTRUTURA 9

Hyperic: o ponto forte desta solu¸c˜ao´ea monitoriza¸c˜aodo desempenho de aplica¸c˜oes, sendo vasta a variedade de aplica¸c˜oesque esta ferramenta consegue monitorizar.Possui caracter´ısticas de auto-discovery muito desenvolvidas permitindo:

• a auto-detec¸c˜ao das aplica¸c˜oes a monitorizar e a configura¸c˜ao autom´atica de certos parˆametrosde monitoriza¸c˜aopara valores de omiss˜aobastante razo´aveis, que `aposteriori, o administrador pode modificar consoante a sua vontade.

• uma instala¸c˜aosemi-autom´aticacom interven¸c˜aom´ınimado administrador de sistemas1

Quando ´enecess´ariauma interven¸c˜aopor parte do administrador, esta ´efacilitada por uma interface web bem desenhada e escrita em java capaz de responder de forma r´apida,na qual ´ef´acil procurar informa¸c˜aopois os sistemas e servi¸coss˜aoorganizados de forma autom´atica.Os gr´aficos com os dados do desempenho das aplica¸c˜oess˜aof´aceisde interpretar, e com legendas apropriadas. N˜aopossui funcionalidades para a gera¸c˜aode relat´orios,no entanto, caso a informa¸c˜aofornecida pela interface de utilizador seja insuficiente, ´eposs´ıvel inquirir a base de dados SQL usando uma report-generating engine. Na edi¸c˜aocomercial (Enterprise edition) incorpora caracter´ısticasde gest˜aode altera¸c˜oes,ficheiros de log de monitoriza¸c˜aoe uma pol´ıticade alertas ”Policy-driven”.

Lithium: ´euma solu¸c˜aosimples de monitoriza¸c˜aodo estado e desempenho do hardware que utiliza exclusivamente o SNMP e que n˜aopossui qualquer capacidade da monitoriza¸c˜ao de aplica¸c˜oes. A vers˜aogratuita, vem com diversos perfis pr´e-constru´ıdosde SNMP para mo- nitoriza¸c˜aode hardware de rede tais como routers Cisco, switches Cisco, switches Foundry, firewalls Cisco, entre outros. Tem duas interfaces separadas, uma web based, e outra que ´euma solu¸c˜aonativa, mais agrad´avel e com mais funcionalidades. O Lithium tem diversos relat´orios pr´e-definidosque podem ser gerados, incluindo um relat´orioque indica o uso da largura de banda.

Zabbix: Zabbix ´eoutro bom exemplo de software da monitoriza¸c˜aoda rede, embora n˜ao t˜aocompleto quando comparado com o Hyperic em termos de monitoriza¸c˜aode aplica¸c˜oes. E´ uma solu¸c˜aoh´ıbridadas duas solu¸c˜oesdescritas anteriormente: baseia as suas verifica¸c˜oes tanto em SNMP como em agentes espec´ıficos do Sistema Operativo. No presente momento n˜aopossui Auto-Discovery embora tal funcionalidade esteja planeada. Duas das caracter´ısticas mais agrad´aveis s˜aoa capacidade de representa¸c˜aogr´afica: pode criar um mapa de rede que mostra a localiza¸c˜aof´ısicae l´ogicados dispositivos de rede e as suas dependˆencias. Os gr´aficos de desempenho s˜aoclaros, concisos, e f´aceisde ler. A interface de utilizador de Zabbix ´e completamente web based, sendo as caracter´ısticasde gerar relat´oriossimilares ao Hyperic.

1Para fazer o deploy do Hyperic, o administrador tem somente que instalar a console/servidor do software no n´ode gest˜aoe depois fazer o deploy dos agentes nos n´osa ser geridos(controlados). O c´odigodentro dos agentes far´ao auto-discovery apropriado e regist´a-lo-´aautomaticamente no servidor 10 CAP´ITULO 2. TRABALHO RELACIONADO

2.1.2 Gest˜ao e Opera¸c˜aoda Infra-Estrutura de Servi¸cosComputacionais

As infra-estruturas f´ısicae de rede de um CC servem o prop´ositode dar suporte a servi¸cos prestados aos utilizadores sendo alguns servi¸costransversais a qualquer tipo de organiza¸c˜ao, seja ela de grande, m´ediaou pequena dimens˜ao.Exemplos desses servi¸coss˜aoo DNS, o correio electr´onico,os servi¸cosde autentica¸c˜ao,os servi¸cosde bases de dados ou servi¸cosde reposit´orios, e cujo mau funcionamento p˜oeem risco todas as camadas de servi¸cossuperiores tais como os de computa¸c˜ao,de armazenamento e outros. Para monitorizar estes servi¸cosexistem ferramentas de monitoriza¸c˜aoque avaliaremos na presente Sec¸c˜ao.

2.1.2.1 Aplica¸c˜oespara Gest˜aode Desempenho

Aplica¸c˜oespara Gest˜aodo Desempenho (Application Performance Management - APM), s˜ao aplica¸c˜oesque se focam na monitoriza¸c˜ao,desempenho e disponibilidade do servi¸code aplica¸c˜oes de software. Segundo o estudo da Gartner de 2010 [14], no qual se analisam aplica¸c˜oesAPM (ver Figura 2.2), a gest˜aodas opera¸c˜oesde Tecnologias de Informa¸c˜ao(TI), realizadas pelos administradores de sistemas, tornou-se cada vez mais dependentes de aplica¸c˜oes,complexas de gerir. O estudo evidencia ainda que muitas vezes, uma organiza¸c˜aosente necessidade de ”misturar e combinar”ofertas de diferentes fabricantes para assim conseguir uma solu¸c˜aoque seja ajustada `assuas necessidades.

2.1.2.2 Produtos para Gest˜aode Eventos

As organiza¸c˜oesde Tecnologias de Informa¸c˜ao(TI) precisam de consolidar, analisar e responder aos eventos oriundos das componentes da Infra-estrutura, para assim conseguirem melhorar os servi¸cosprestados. Existem no mercado v´ariosprodutos, uns emergentes e outros mais maduros, que respondem a esta necessidade das organiza¸c˜oes. Tais produtos s˜aodenominados de Event Correlation and Analysis - (ECA) e os seus objectivos principais s˜aoajudarem as organiza¸c˜oes a lidar com o dil´uviode eventos que advˆemda infra-estrutura de TI pois conseguem eliminar sinais de eventos duplicados, filtrar os eventos de acordo com as opera¸c˜oesou de acordo com as prioridades e analisar os eventos conseguindo-se assim determinar a sua causa. Este tipo de produtos executam uma gest˜aopor excep¸c˜ao,ou seja, produzem uma alerta s´oquando uma excep¸c˜aoocorre, por exemplo em caso de falha ou de viola¸c˜aode um limite estabelecido, o que indica que a infra-estrutura n˜aoest´aa ter um comportamento normal. Este facto implica o conhecimento pela organiza¸c˜aodo que ´eum comportamento ”normal”.

A Gartner efectuou um estudo [15] no qual avaliou alguns destes produtos, e cujas con- clus˜oesse encontram ilustradas na Figura 2.3. Produtos posicionados no quadrante visionaries possuem uma vis˜aode futuro e s˜aogeralmente tecnicamente focados. Reconhecem e conseguem 2.1. GESTAO˜ DA INFRA-ESTRUTURA 11

Figura 2.2: Quadrante M´agicoque Permite Avaliar um Fabricante de Produtos APM [14]. responder `astendˆencias da gest˜aode eventos a longo prazo do mercado, faltando-lhes contudo reconhecimento, e for¸ca de mercado e de vendas.

No quadrante leaders est˜aocolocados os produtos com elevado grau de visibilidade no mer- cado e que conseguem oferecer aplica¸c˜oesaltamente robustas e escal´aveis capazes de prioritizar eventos oriundos de ambientes f´ısicose virtuais da infra-estrutura de TI. Possuem a vis˜aoes- trat´egicaque lhes permite atender de forma r´apidaaos requisitos, em constante evolu¸c˜ao.

Produtos novos no mercado de gest˜aode eventos, que se focam num segmento pequeno do mercado, mas que conseguem atingir grande profundidade nas funcionalidades nas suas ´areas de escolha est˜aocolocados no quadrante niche players.

No quadrante challengers encontram-se produtos que tˆemum bom desempenho em muitas organiza¸c˜oes.Alguns s˜aograndes produtos em termos de dimens˜aoe recursos financeiros, mas aos quais por vezes falta vis˜ao,inova¸c˜aoe percep¸c˜aoda evolu¸c˜aodas tendˆenciasdo mercado.

Podemos concluir que ´eextremamente dif´ıcilencontrar uma solu¸c˜aoque responda a todos os requisitos de um CC, e que normalmente n˜aos˜aosolu¸c˜oesintegradas, obrigando `autiliza¸c˜ao de diferentes plataformas e interfaces, consoante o problema que se pretende resolver. 12 CAP´ITULO 2. TRABALHO RELACIONADO

Figura 2.3: Quadrante M´agicode Produtos ECA [15].

Na tentativa de integrar toda a informa¸c˜aogerada pelas ferramentas de gest˜ao,configura¸c˜ao e monitoriza¸c˜aodos diferentes recursos, v´ariasorganiza¸c˜oesusam modelos de princ´ıpios de opera¸c˜aoque descreveremos na Sec¸c˜aoseguinte.

2.2 ITIL

A presente Sec¸c˜aoapresenta uma das solu¸c˜oesque permite integrar, manipular e gerir a informa¸c˜aogerada num CC: a framework ITIL (Information Technology Infrastructure Li- brary) [16] [4], sobre a qual nos debru¸caremosmais profundamente. No entanto, existem outras frameworks com objectivos similares tais como o COBIT [17] [18] e o CMMI [19].

A framework ITIL ´euma compila¸c˜aode boas pr´aticasde gest˜aode TI obtidas a partir de organiza¸c˜oesp´ublicase privadas. Foi desenvolvido originalmente pelo governo britˆanico atrav´es da CCTA, e actualmente ´emantido pelo EXIN.

Esta framework descreve os processos necess´ariospara gerir uma infra-estrutura de TI de forma eficaz e eficiente, garantindo os n´ıveis de servi¸coque os clientes tˆemque exigir e que os prestadores de servi¸codevem fornecer. Os principais objectivos desta framework s˜aoreduzir cus- tos, aumentar a disponibilidade, ajustar a capacidade, aumentar a eficiˆenciae efic´aciae reduzir 2.2. ITIL 13

riscos. A documenta¸c˜aoITIL foca-se em descrever ”O QUE FAZER”e n˜ao”COMO FAZER”. A framework ITIL ´ebaseada em processos em detrimento de uma estrutura hier´arquica. Isto significa que hierarquicamente poderemos ter uma pessoa de um departamento respons´avel por mais de um processo.

Ao longo dos anos, a framework ITIL foi evoluindo, e inclui as seguintes ´areasque se estruturam como representado na Figura 2.4 [20].

Figura 2.4: Estrutura da Framework ITIL (ITIL V2) [11].

2.2.1 Areas´ Relevantes para a Gest˜aode um Centro de C´alculo

Uma das ´areasde maior relevˆanciana gest˜aoe opera¸c˜aode um CC moderno ´ea Gest˜aode Servi¸cosque engloba a ´areado Suporte aos Servi¸cos[20]. O Suporte aos Servi¸cos, como ilustrado na Figura 2.5, trata dos processos necess´arios`amanuten¸c˜aodas opera¸c˜oesdi´ariase de suporte aos servi¸cosprestados pela organiza¸c˜ao.

2.2.1.1 Suporte aos Servi¸cos

A ´area do Suporte aos Servi¸cosfundamenta-se em cinco processos e uma fun¸c˜ao(Service Desk):

1. Gest˜aode Incidentes ´eo processo onde os incidentes s˜aodetectados e resolvidos. Um incidente ´eum evento que n˜aofaz parte da execu¸c˜aonormal de um servi¸coe que pode causar uma interrup¸c˜ao

2. Gest˜aode Problemas ´eo processo que detecta e remove da infra-estrutura de TI, atrav´es da determina¸c˜aoda origem e an´alisedo problema, a ocorrˆenciade incidentes de modo a maximizar a eficiˆencia.Tem como principal objectivo minimizar o impacto de incidentes e problemas no neg´ocio,prevenindo a sua ocorrˆenciae relatando os erros encontrados. 14 CAP´ITULO 2. TRABALHO RELACIONADO

Figura 2.5: Modelo de Suporte aos Servi¸cos(ITIL V2) [11].

3. Gest˜aode Altera¸c˜oes ´eo processo que controla a mudan¸cade todos os Itens de Confi- gura¸c˜ao(IC), garantindo que procedimentos apropriados s˜aoseguidos quando ´eefectuada uma mudan¸ca.

4. Gest˜aoda Release ´eo processo que ap´osuma altera¸c˜aoter sido aprovada pelo processo da Gest˜aodas Altera¸c˜oes,controla o armazenamento f´ısico e l´ogico,gest˜aoe distribui¸c˜ao de todo o hardware e software de forma a garantir que na infra-estrutura s´oexiste software e hardware devidamente aprovado e testado.

5. Gest˜aoda Configura¸c˜ao ´eo processo de rastreio de todos os itens existentes na infra- estrutura incluindo hardware, software e documenta¸c˜aobem como todas as rela¸c˜oesexis- tentes entre eles e que suportam os servi¸cos. Este processo envolve identificar, registar e descrever as componentes de TI, (IC), incluindo as vers˜oes,rela¸c˜oese componentes. A informa¸c˜aode todas os IC deve ser mantida numa base de dados modular e flex´ıvel.

Service Desk ´euma fun¸c˜aoque age como ´unicoponto de entrada entre o utilizador e a organiza¸c˜aode TI (SPOC - Single Point Of Contact), e cujo objectivo ´eajudar a resolver problemas e restaurar a normalidade das opera¸c˜oeso mais r´apidoposs´ıvel. 2.2. ITIL 15

2.2.1.2 Benef´ıciosResultantes do ITIL

A mudan¸ca´euma constante num CC. Rastrear, gerir e controlar as altera¸c˜oese o seu potencial impacto nos servi¸cosprestados torna-se, portanto, imperativo. Esta ´euma das principais raz˜oes pelas quais os gestores de um CC come¸cama olhar para os processos desta framework.

Esta Sec¸c˜aodescreve os benef´ıciosresultantes da implementa¸c˜aoda framework ITIL num CC que incluem uma melhor gest˜aodos recursos e a consolida¸c˜aodos dados existentes. A framework ITIL permite ainda um melhor entendimento dos recursos dispon´ıveis, rastrear das mudan¸cas na infra-estrutura do CC e quantificar o impacto de tais mudan¸casnos servi¸cosfornecidos.

Com opera¸c˜oescada vez mais complexas e mais orientadas ao servi¸co,os gestores sentem necessidade de criar processos que lhes permitam manter uma ordem na execu¸c˜aodas tarefas. A framework ITIL fornece uma disciplina, uma linguagem e processos comuns que depois de implementados introduzem coerˆenciapara todos os que trabalham num CC. O conceito principal que devemos ter em conta ´ea uniformiza¸c˜ao:uniformiza¸c˜aode um gloss´arioe termos comuns, que eliminem deficiˆenciasde comunica¸c˜aoentre o grupo de trabalho, e uniformiza¸c˜aode processos e m´etricasquantific´aveis que permitam um servi¸code elevada disponibilidade.

Devido `aenorme quantidade de servi¸cosabrangidos pela metodologia ITIL, implement´a-los parece uma tarefa gigantesca. Quem j´ao implementou afirma que a melhor maneira ´ecome¸car com as ´areasmais problem´aticasde um CC, que s˜aoas ´areasde Gest˜aode Problemas (GP), Gest˜aode Altera¸c˜oes(GA) e Gest˜aode Configura¸c˜oes(GC).

Na Sec¸c˜aoseguinte analisa-se em detalhe um sistema de Gest˜aode Configura¸c˜oes e que aspectos se devem ter em conta para atingir o sucesso, dado que esta ´ea pedra basilar de qualquer plataforma de gest˜aointegrada de recursos.

2.2.2 Gest˜ao de Configura¸c˜oes

O processo da Gest˜aode Configura¸c˜oes[4] ´erespons´avel por identificar, registar e relatar todas as componentes de TI, nomeadamente as suas vers˜oes,os seus constituintes e rela¸c˜oes,pertencentes `aorganiza¸c˜ao.Este processo ´eainda respons´avel por providenciar a todos os restantes processos, informa¸c˜aode configura¸c˜ao,correcta e actualizada.

Objectivos:

Os objectivos do processo de GC s˜ao:

• inventariar os recursos e configura¸c˜oesdentro da organiza¸c˜aoe tamb´emdos seus servi¸cos,

• fornecer informa¸c˜oesexactas da configura¸c˜aoe da documenta¸c˜aonecess´ariasaos processos de Gest˜aode Servi¸cos, 16 CAP´ITULO 2. TRABALHO RELACIONADO

• fornecer uma base s´olidapara os restantes processos que constituem o ITIL,

• Comparar os registos de configura¸c˜aocom a infra-estrutura e corrigir eventuais excep¸c˜oes.

Configuration Management Database

Configuration Management Database (CMDB) ´ea designa¸c˜aogen´ericado reposit´oriode toda a informa¸c˜aorelacionada com as componentes que existem numa organiza¸c˜aode TI. Os registos deste reposit´oriochamam-se Itens de Configura¸c˜ao(IC), sendo um IC qualquer componente que est´asob o controle do processo da Gest˜aode Configura¸c˜oes.A CMDB tamb´eminclui informa¸c˜ao sobre a rela¸c˜aoentre os IC, sendo este o aspecto que distingue a CMDB de uma base de dados tradicional.

Todos os IC s˜aounivocamente identificados por nomes, n´umerosde vers˜oese outros atribu- tos, variando em complexidade, tamanho e tipo. Um IC pode ser um servi¸coou pode consistir em hardware, software e documenta¸c˜aode um programa.

Actividades

S˜aocinco as actividades que constituem o Processo de Gest˜aode Configura¸c˜oes,e que garantem a qualidade e coerˆenciada informa¸c˜aoarmazenada durante o desenrolar do processo:

1. Planeamento Primeiro que tudo ´enecess´ariodefinir o ˆambito, a finalidade, os objectivos, prioridades e procedimentos para o processo de GC. E´ nesta fase que os tipos e atributos dos itens de configura¸c˜aos˜aodefinidos.

2. Identifica¸c˜ao Todos os activos (IC) da infra-estrutura, necess´ariospara providenciar um servi¸co,devem ser identificados, etiquetados e inseridos num reposit´oriode dados. Para cada tipo de recurso a profundidade da documenta¸c˜aoexigida deve ser definida. Para cada atributo de um dado activo armazenado, uma raz˜aov´alidatem que existir para legitimar o esfor¸code recolher e de manter a informa¸c˜ao.O grau de detalhe, usado para manter os IC, ´emuito importante para o sucesso da GC, dado que um grau de detalhe muito elevado aumentar´a o esfor¸conecess´ariopara manter o reposit´oriode informa¸c˜aoe n˜aopermitir´aum fluxo de dados efectivo. Tamb´em,adicionar atributos em falta ´emoroso e produzir´acustos elevados quando o sistema de GC estiver em produ¸c˜ao.

3. Controlo Esta actividade ´erespons´avel por garantir que a inser¸c˜aodos IC na base de dados ´eexecu- tada de forma controlada, isto ´e,que s´oIC autorizados e identificados podem ser inseridos. 2.2. ITIL 17

Faz parte desta actividade assegurar que nenhum IC ´eadicionado sem a existˆenciade do- cumenta¸c˜aoapropriada, (por exemplo, um pedido de altera¸c˜aoaprovado) e que, ap´osa inser¸c˜ao,exista documenta¸c˜aoactualizada.

4. Status accounting As altera¸c˜oesaos componentes devem ser documentadas e deve ser poss´ıvel visualizar e res- taurar vers˜oesantigas de uma entrada e das suas rela¸c˜oescom outras entradas. Juntamente com a altera¸c˜aoefectuada, a identifica¸c˜aoda pessoa respons´avel pela sua implementa¸c˜ao deve ser uma informa¸c˜aoa manter. Devem existir relat´oriosonde consta o estado presente e passado de um IC.

5. Verifica¸c˜aoe Auditoria Devem realizar-se verifica¸c˜oes peri´odicas aos dados armazenados que assegurem a existˆenciae exactid˜aoda informa¸c˜aoguardada. E´ necess´arioprovar que os IC e todos os atributos existentes est˜aocorrectos, e que as altera¸c˜oesforam realizadas de acordo com procedimentos estabelecidos. O reposit´oriode informa¸c˜aodeve conter apenas registos de IC que realmente existem, sendo necess´arioavalia¸c˜oesregulares que removam informa¸c˜ao desactualizada e/ou n˜aonecess´aria.

M´etricas

Existem indicadores chave de desempenho (KPI - Key Performance Indicators) para medir cada uma das actividades do processo de GC, existindo tamb´emKPI para medir todo o processo de GC. Alguns dos KPI s˜ao:

• N´umerode pedidos de correc¸c˜aoda configura¸c˜ao.

• N´umerode pedidos de configura¸c˜ao.

• Percentagem de pedidos de correc¸c˜aode configura¸c˜aopor n´umerode pedidos de confi- gura¸c˜ao.

• Percentagem de componentes de TI configurados via m´etodos automatizados versus com- ponentes de TI configurados manualmente.

• Percentagem de componentes registados com informa¸c˜aode configura¸c˜aoerrada durante um processo de auditoria.

Devem ser produzidos relat´oriose registos regularmente que suportem as medidas descritas anteriormente. 18 CAP´ITULO 2. TRABALHO RELACIONADO

2.2.3 Gest˜ao de Altera¸c˜oes

As mudan¸cas/altera¸c˜oespodem surgir como resultado da ocorrˆenciade problemas, mas tamb´em advˆem de uma procura constante em minimizar as interrup¸c˜oesno servi¸co e melhorar as opera¸c˜oesdi´ariasdas organiza¸c˜oesde TI. Para conseguir estes objectivos, ´enecess´arioque as organiza¸c˜oesse assegurem que as mudan¸casse fa¸camde forma controlada, ou seja, qualquer altera¸c˜aoa efectuar ou n˜ao,ter´aque ser avaliada, priorizada, planeada, testada, implementada e documentada. S´oassim, se consegue passar de um estado definido para outro estado definido.

Percebendo que ´enecess´ariogerir as mudan¸cas,a framework ITIL prop˜oeque as organiza¸c˜oes definam e implementem um processo denominado Processo de Gest˜aode Altera¸c˜oes.

Objectivos

A implementa¸c˜aoe defini¸c˜aodo processo de GA, deve ter em conta os seguintes objectivos:

• utilizar m´etodos e procedimentos padronizados

• registar as altera¸c˜oesna CMDB

• analisar riscos e avaliar o impacto das altera¸c˜oes:a framework ITIL enfatiza que o processo contemple a avalia¸c˜aorigorosa dos riscos provenientes das altera¸c˜oes,e prop˜oeque se responda a sete quest˜oes:

1. Raised - quem pediu a altera¸c˜ao?

2. Reason - qual a raz˜aopara a altera¸c˜ao?

3. Return - qual o retorno exigido da mudan¸ca?

4. Risk - quais os riscos envolvidos?

5. Resources - que recursos s˜aonecess´arios?

6. Responsible - quem ´erespons´avel por configurar, testar e implementar?

7. Relationship - que rela¸c˜oesexistem entre a altera¸c˜aoque se pretende e outras al- tera¸c˜oes?

N˜ao´econtudo, do dom´ıniodo processo da GA, a identifica¸c˜aode componentes afectadas pela altera¸c˜ao,ou pela release de componentes que tenham sido alterados [11], estando estas tarefas sob o dom´ıniode outros processos existentes, nomeadamente os processos de GC e Gest˜aoda Release. 2.2. ITIL 19

O processo da GA ´erespons´avel por procedimentos que lidam com a gest˜aode pedidos de altera¸c˜aoaos itens de configura¸c˜ao(IC) presentes na CMDB. Esses procedimentos envolvem:

• Hardware

• Servi¸cos

• Software

• Software de Sistema

• Aplica¸c˜oesde software em utiliza¸c˜ao

• Documenta¸c˜aoe procedimentos associados `amanuten¸c˜ao,suporte e execu¸c˜aodos sistemas

• Pessoas

O processo da GA ´evital para manter os dados na CMDB actuais e precisos, e conjuntamente com o processo de GC permitem avaliar o risco, custo e impacto das altera¸c˜oes.Por esta raz˜ao, muitas organiza¸c˜oesoptam por implementar os processos da GA e GC simultaneamente, para assim ganhar controle sobre a infra-estrutura. A CMDB interage com todos os processos, e possui os activos da organiza¸c˜ao,mas tamb´emdet´em as fontes de informa¸c˜aosobre os recursos utilizados por cada servi¸co e as suas dependˆencias.Quando uma mudan¸caprecisa ser executada, a CMDB mostra que componentes est˜aoligados ao componente alterado ou servi¸co,sendo assim poss´ıvel conhecer as consequˆenciase os problemas associados `amudan¸ca[22]. A Figura 2.6 ilustra a interac¸c˜aoentre o processo da GA e outros processos da framework ITIL.

Figura 2.6: Gest˜aodas Altera¸c˜oese Outros Processos ITIL [14] 20 CAP´ITULO 2. TRABALHO RELACIONADO

Pap´eisno Processo de Gest˜aode Altera¸c˜oes

O processo de GA dita a cria¸c˜aode um comit´ede pessoas, com diversas fun¸c˜oesdentro da orga- niza¸c˜ao,respons´aveis pela defini¸c˜aodo processo e por aprovar, avaliar e priorizar as altera¸c˜oes, constituindo a autoridade de decis˜ao,denominado Change Advisory Board - CAB. Na eventua- lidade de ocorrˆenciade problemas, pode ser imposs´ıvel reunir todas as pessoas que constituem o CAB, pelo que conv´emque as organiza¸c˜oesidentifiquem um conjunto mais pequeno de pessoas capazes de dar resposta a situa¸c˜oesde emergˆencia.Ou seja, deve existir tamb´emum emergency Committee - EC.

A framework ITIL prop˜oeainda a cria¸c˜aode um outro papel: Change Manager - CM, cujas principais responsabilidades consistem na defini¸c˜aodo objectivo do processo de GA e como quantificar e medir a sua eficiˆencia. Tamb´em´eda responsabilidade do Change Manager fazer o alinhamento entre o o processo de GA e o processo de GC. Dever˜aoefectuar-se planos que assegurem que um correcto interface existe entre estes dois processos.

Actividades

A Figura 2.7 ilustra um exemplo de actividades envolvidas no Processo de Gest˜aode Altera¸c˜oes:

Figura 2.7: Processo da Gest˜aode Altera¸c˜oes

A abordagem `asactividades do processo da GA podem depender das necessidades da or- ganiza¸c˜aoe da natureza do neg´ocio. No entanto, a seguinte cadeia de acontecimentos ´ena 2.2. ITIL 21

generalidade seguida:

1. E´ efectuado um Pedido de Altera¸c˜ao (RfC - Request for Change). O pedido pode ser efectuado por qualquer pessoa pertencente `aorganiza¸c˜ao,e ´eenviado por qualquer canal de comunica¸c˜aoao dispor (email, formul´ario web pr´opriona intranet, telefone, etc.).

2. O CM examina o pedido.

3. O CM avalia, classifica, e categoriza o RfC, baseando-se no impacto e urgˆenciada altera¸c˜ao proposta. Se considerar que a altera¸c˜ao´enecess´ariae exequ´ıvel, efectua um planeamento inicial da implementa¸c˜aoda altera¸c˜ao.

4. O RfC ´erejeitado ou aprovado para implementa¸c˜aopelo CM ou pelo CAB. A necessidade de aprova¸c˜aopor parte do CAB depende da quantifica¸c˜aodo impacto da altera¸c˜aona institui¸c˜ao,da quantidade de recursos necess´ariospara efectuar a implementa¸c˜aoe do risco relacionado com a implementa¸c˜aoda mudan¸ca.

5. O CM planeia a implementa¸c˜ao,definindo as tarefas a executar, o esfor¸conecess´ario, determinando os recursos, o or¸camento dispon´ıvel, e os crit´eriosde aceita¸c˜ao. O t´ecnico respons´avel por implementar a mudan¸cadefine um plano de implementa¸c˜aodo ponto de vista t´ecnicodefinindo uma solu¸c˜aot´ecnicaque engloba testes e uma plano de retrocesso.

6. A altera¸c˜ao´eefectuada de acordo com o plano de implementa¸c˜aoestabelecido.

7. A altera¸c˜ao´etestada verificando-se e avaliando-se o seu impacto. Posteriormente as al- tera¸c˜oesentram em produ¸c˜ao.Este processo, Release to production, envolve uma avalia¸c˜ao final que consiste em ponderar se a mudan¸ca´erealizada ou n˜ao,e se ´enecess´arioaplicar o plano de retrocesso.

8. O sucesso da implementa¸c˜aoda altera¸c˜aoe o seu impacto ´erevisto em coopera¸c˜aocom o CM. O RfC e toda a informa¸c˜aorelacionada ´eactualizada, e o RfC ´econclu´ıdo.

Estados de um RfC

De seguida descrevem-se poss´ıveis estados de um RfC, segundo duas perspectivas: a seguida pela framework ITIL e sugerida por Mattila [24]. A framework ITIL sugere que os estados dos RfC sejam: logged, assessed,rejected, accepted and sleeping. Por sua vez, Matilla prop˜oeos estados ilustrados na Figura 2.8. 22 CAP´ITULO 2. TRABALHO RELACIONADO

Figura 2.8: Estados de um RfC [15]

Categoriza¸c˜aodas Altera¸c˜oes

A avalia¸c˜ao de uma altera¸c˜ao passa tamb´em por integrar a altera¸c˜ao em categorias pr´e- estabelecidas e acordadas dentro do CAB. A framework ITIL prop˜oeque sejam categorizadas da seguinte forma:

• Mudan¸cascom grande impacto

• Mudan¸cascom impacto Significante

• Mudan¸cascom pouco impacto

M´etricas

A framework ITIL refere que as mudan¸casdevem ser avaliadas e que periodicamente devem ser facultados documentos, que circulem na organiza¸c˜ao,onde conste essa avalia¸c˜ao. Nesses relat´orios,sugere-se que se inclua a seguinte informa¸c˜ao:

• N´umerode mudan¸casimplementadas num determinado per´ıodo: no total, por IC, tipo de configura¸c˜ao,servi¸co,etc.

• Categoriza¸c˜ao/decomposi¸c˜aodas raz˜oesda mudan¸ca (solicitada pelo utilizador, devida a melhorias, servi¸copara resolver problemas/incidentes, melhoria de procedimentos). 2.2. ITIL 23

• N´umerode mudan¸casbem sucedidas.

• N´umerode mudan¸casque n˜aose realizaram, juntamente com as raz˜oes.

• N´umerode incidentes atribu´ıdosa altera¸c˜oes.

• N´umerode mudan¸casimplementadas e que necessitaram de ser revistas.

• Elevadas incidˆenciasde RfC relacionadas com IC.

• Compara¸c˜aocom gr´aficosde per´ıodos anteriores.

• N´umerode RfC rejeitados.

• Propor¸c˜aode mudan¸cas que n˜aoforam bem sucedidas (relativamente ao n´umerototal, e descriminadas por IC).

Num caso de estudo no qual a framework ITIL foi implementada e bem sucedida [25], os resultados constantes na Tabela 2.1, mostram de forma exacta e mensur´avel melhorias na Organiza¸c˜ao.

Anterior Posterior KPI `aImplementa¸c˜ao `aImplementa¸c˜ao ITIL ITIL

% de mudan¸casrealizadas de acordo 25 80 com o planeado % de mudan¸casefectuadas, mas n˜ao 10 95 aprovadas % de mudan¸casurgentes 60 35 % de mudan¸casfalhadas 18 6 % de software em utiliza¸c˜aosem 22 8 autoriza¸c˜ao % de Releases falhadas 13 10 % Releases urgentes 32 20

Tabela 2.1: KPIs para os Processos da GA e Gest˜aoda Release [25].

Um KPI ´euma m´etricaque ´eusada para ajudar a gerir um Processo, um Servi¸code TI ou uma Actividade. Muitas m´etricaspodem ser utilizadas, mas s´oas mais importantes s˜aodefinidas como KPIs e s˜aousadas para, de uma forma activa, gerir e reportar um Processo, Servi¸code TI ou Actividade. Os KPIs devem ser seleccionados de forma a garantir que a eficiˆencia,efic´acia, e rentabilidade s˜aogeridos.

Observando os valores dos KPIs, presentes na Tabela 2.1, anteriores e posteriores `aimple- menta¸c˜aodo processo de GA, podemos constatar os ganhos obtidos pela organiza¸c˜ao:o n´umero 24 CAP´ITULO 2. TRABALHO RELACIONADO

de mudan¸casfalhadas diminui, bem como a percentagem de mudan¸casurgentes. Tamb´ema percentagem de software em utiliza¸c˜aosem autoriza¸c˜aodiminui.

2.3 Suporte `aGest˜aode Processos ITIL

A framework ITIL foca a sua estrat´egianos processos de gest˜aode TI, mas o objectivo, ´eque muitos destes processos sejam concretizados em sistemas de software. N˜ao´edo ˆambito da framework ITIL orientar e divulgar a utiliza¸c˜aode ferramentas, e ali´asnem deve fazˆe-lo. A framework ITIL tamb´emn˜aoafirma que deva existir uma solu¸c˜ao´unicaque englobe todos os processos. A verdade ´eque existem solu¸c˜oesdiferentes, de vendedores diferentes, open source e comerciais, que se focam e especializam em determinados processos.

A seguinte avalia¸c˜ao,baseia-se na compara¸c˜aode caracter´ısticasde produtos que v˜aode encontro `asactividades relevantes para os Processos de Suporte, nomeadamente a GC e GA, de acordo com o descrito na framework ITIL V2 (A framework ITIL V3 foi lan¸cadoem 2007, mas a framework ITIL V2 ´eextensamente usado e constitui um padr˜aopara a maioria de organiza¸c˜oes). Este estudo foi realizado pela Microsoft e consta no artigo referido em [26].

Os produtos comparados s˜ao a solu¸c˜ao oferecida pela Microsoft e algumas solu¸c˜oes oferecidas pela comunidade open source. Como veremos, encontrar-se-˜aosemelhan¸cas, mas tamb´emdiferen¸casnas abordagens `asquest˜oesque a framework ITIL levanta.

Podemos, no geral, concluir que:

• Nenhuma solu¸c˜ao´unica,de forma total, cobre todas as necessidades da framework ITIL.

• A solu¸c˜aoda Microsoft ´erelativamente completa, mas demasiado centrada no Windows, e n˜aocontempla todas as actividades presentes na framework ITIL.

• A comunidade open source foca-se em actividades t´ecnicasparticulares da framework ITIL em detrimento de um servi¸comais abrangente que englobe todo o processo ITIL.

2.3.1 Software para Gest˜aode Configura¸c˜oes

Na presente Sec¸c˜aomostra-se e analisa-se algum software existente para concretizar o processo de GC. Vejamos como cada software, se aproxima ou afasta da framework ITIL, ou seja, em que medida, na sua implementa¸c˜ao,as actividades da GC (ver Sec¸c˜ao2.2.2)est˜aopresentes.

Um dos objectivos da GC ´efornecer uma base de conhecimento da configura¸c˜aodo hard- ware e software usados por uma organiza¸c˜ao,logo o software dever´acontemplar as seguintes funcionalidades: 2.3. SUPORTE A` GESTAO˜ DE PROCESSOS ITIL 25

• Descobrir dispositivos na rede.

• Determinar o host de um sistema operativo.

• Averiguar que aplica¸c˜oesse encontram em utiliza¸c˜aono sistema.

• Detectar altera¸c˜oesna configura¸c˜ao.

Todos os produtos listados na figura 2.9 implementam estas funcionalidades mas, no entanto, nenhum sozinho contempla todas as actividades da framework ITIL.

Figura 2.9: Software para Gest˜aode Configura¸c˜oes[17].

A Figura 2.10 fornece uma revis˜aoda capacidade de cada produto para endere¸caras acti- vidades da framework ITIL (ver Sec¸c˜ao 2.2.2) para a GC.

Figura 2.10: Avalia¸c˜aodo Software para Gest˜aode Configura¸c˜oes [17]. 26 CAP´ITULO 2. TRABALHO RELACIONADO

Podemos concluir o seguinte: a comunidade open source oferece uma vasta gama de solu¸c˜oes para a GC, da qual o Zenoss ´eum bom exemplo, para monitoriza¸c˜aoda infra-estrutura e gest˜ao das aplica¸c˜oes,pois utiliza um CMDB para manter a informa¸c˜aodos componentes existentes na rede. Contudo, tem suporte limitado para aplica¸c˜oesempresariais tais como o SQL Server, o que limita a sua capacidade para actividades tais como a de Verifica¸c˜aoe Auditoria. OneCMDB possui funcionalidades de modela¸c˜aoe descoberta, mas falta-lhe a capacidade automatizada de Auditoria. CMDBuild, ´eum um projecto italiano de c´odigoaberto interessante, mas falta-lhe documenta¸c˜aoem l´ınguainglesa, o que restringe o seu uso.

Por sua vez, o Microsoft Systems Management Server (SMS), n˜ao´euma CMDB com- pleta, mas consegue descobrir e monitorizar sistemas para um leque extenso de informa¸c˜aode configura¸c˜ao,tais como hardware, sistema operativo e vers˜aoe aplica¸c˜oes instaladas. Como ´ededicado `aplataforma Windows e `assuas aplica¸c˜oes,pode executar uma an´alisemuito de- talhada que permite armazenar uma vasta variedade da informa¸c˜aodos sistemas geridos pela organiza¸c˜ao.

2.3.2 Software para Gest˜aode Altera¸c˜oes

A menos que a mudan¸caseja controlada dentro de uma organiza¸c˜ao,os servi¸cosestar˜ao`amercˆe de modifica¸c˜oes ad hoc aos routers, aos utilizadores, e ao software. As mudan¸cas ad hoc podem e custam o rendimento das organiza¸c˜oes,e criam frustra¸c˜aodesnecess´aria,como por exemplo, utilizadores terem que esperar a conclus˜aode um melhoramento n˜aoanunciado ou o rollback de um patch falhado. Os produtos utilizados para concretizar o processo da GA dividem-se em duas categorias: Software de Workflow ou Deployment.

1. Software de Workflow usado para definir e rever o processo aprovado. Quando um RfC ´eemitido, o software de workflow distribui o RfC para as partes envolvidas para revis˜ao, teste e eventualmente instala¸c˜ao,permitindo monitorizar o processo de altera¸c˜ao. Um exemplo de software open source que suporta workflow ´eo Request Tracker, mas muitos produtos de Help Desk tamb´empossuem esta funcionalidade, possibilitando o seu uso para monitorizar o processo de mudan¸ca.

2. Software de Deployment, que diz respeito `aautomatiza¸c˜aoda implementa¸c˜aoda altera¸c˜ao at´eesta ser atingida. Para ser poss´ıvel atingir este objectivo, ´enecess´arioque o software possua as seguintes funcionalidades:

• Instale actualiza¸c˜oesde software e mudan¸casna configura¸c˜ao.

• Detecte erros durante o processo de actualiza¸c˜ao.

• Registe e relate quem iniciou o conjunto de altera¸c˜oes. 2.3. SUPORTE A` GESTAO˜ DE PROCESSOS ITIL 27

Figura 2.11: Avalia¸c˜aodo Software para Gest˜aode Altera¸c˜oes[17].

A Figura 2.11 fornece uma revis˜aoda capacidade de cada produto para endere¸caras acti- vidades da framework ITIL para o processo da GA (ver Sec¸c˜ao 2.2.3).

Podemos concluir que algumas das ferramentas mais avan¸cadasdispon´ıveis s˜ao open source, tais como bcfg2, cfengine, radmind, e . Todas prevˆeemdeterminados graus de controlo sobre a instala¸c˜aodas mudan¸cas,embora ferramentas como o Webmin, utilizem um ecr˜ade configura¸c˜aomanual, o que limita o seu uso em ambientes de grande dimens˜ao.Ferramentas que se centram na automatiza¸c˜ao,tais como o bcfg2 e cfengine, fornecem meios que asseguram de que as configura¸c˜oesn˜aos˜aoalteradas - toda a altera¸c˜aon˜aoaprovada ´erevertida automaticamente de volta ao original por um agente local do software. Por exemplo, se um servidor que ´e definido como servidor web e n˜aotem o software Apache instalado, os pacotes de gest˜aode altera¸c˜oescorrigem este desvio instalando e configurando o pacote Apache. Esta capacidade de definir regras de configura¸c˜aoe impor essas regras permite tanto ao bcfg2 como ao cfengine implementar um mecanismo potente para a actividade de GA.

No entanto, as capacidades de produzir relat´oriosdestes produtos ´elimitada. Apesar de fornecerem relat´oriosdas mudan¸casocorridas no sistema, n˜aoh´auma forma ´obvia de determinar que sistemas est˜aoou n˜aosincronizados para al´emde permitir que eles voltem a ficar sincroni- zados. Isto limita a capacidade de auditoria de altera¸c˜oesn˜aoautorizadas aos sistemas (embora este aspecto seja mais importante para a GC). Por sua vez, a solu¸c˜aoSMS da Microsoft, usada em ambientes windows tem as seguintes funcionalidades:

• Plano de Instala¸c˜ao: relat´oriosque fornecem a informa¸c˜aosobre hardware, software e vers˜ao.

• Instala¸c˜aobaseada em grupos: permite ao administrador de sistemas alocar software por diversos. grupos, onde um grupo pode ser definido usando propriedades como hardware, Active Directory(AD) e membros do grupo AD.

• Actualiza¸c˜oesde patch: automatiza a instala¸c˜aode patches para servidores e aplica¸c˜oes cr´ıticas. 28 CAP´ITULO 2. TRABALHO RELACIONADO

Existem solu¸c˜oesvi´aveis para concretizar o processo da GA em ambos os ambientes open source e Microsoft. A comunidade open source tem providenciando solu¸c˜oest´ecnicasrobustas (bcfg2 e cfengine), mas muitas vezes n˜aoimplementa actividades essenciais, tais como planear altera¸c˜oes(por exemplo, o software n˜aopermite facilmente que um administrador estime o impacto de uma mudan¸ca).Por sua vez, o SMS da Microsoft oferece uma solu¸c˜aomais abran- gente, mas ´elimitado no seu alcance por causa de seu foco ser o ambiente Microsoft e os produtos Windows. Assim, em qualquer empresa em que se executem sistemas Windows e UNIX devem funcionar normalmente dois produtos de gest˜aode altera¸c˜oesem paralelo. Cap´ıtulo3

Problema

3.1 Contextualiza¸c˜ao

O Laborat´oriode Instrumenta¸c˜aoe F´ısicaExperimental de Part´ıculas(LIP), criado em 1986 quando Portugal aderiu ao CERN, ´euma associa¸c˜aot´ecnicae cient´ıfica,que tem por objectivo a investiga¸c˜aono campo da F´ısicaExperimental de Altas Energias e da Instrumenta¸c˜aoAssociada.

As actividades de pesquisa do LIP, desenvolvidas no ˆambito de grandes colabora¸c˜oesinterna- cionais (CERN, ESA, SNOLAB, NASA, AUGER), tem como principais dom´ıniosde investiga¸c˜ao a F´ısicaExperimental de Altas Energias e Astropart´ıculas,a Instrumenta¸c˜aode Detec¸c˜aode Radia¸c˜ao,a Aquisi¸c˜aoe Processamento de Dados, a Computa¸c˜aoAvan¸cadae as aplica¸c˜oesdas radia¸c˜oes`amedicina.

Em Lisboa e Coimbra existem dois Centros de C´alculoalbergando a infra-estrutura de TI da organiza¸c˜ao.Para al´em da gest˜aodestes dois CC, a equipa de Computa¸c˜aoAvan¸cadado LIP ´etamb´emrespons´avel pela coordena¸c˜aoda opera¸c˜aoda Iniciativa Nacional Grid (INGRID) [40], no ˆambito do projecto europeu European Grid Initiative (EGI) [41], e opera o n´ocentral Grid (NCG) instalado na Funda¸c˜aopara a Computa¸c˜aoCient´ıficaNacional (FCCN).

No presente cap´ıtuloapresenta-se a institui¸c˜ao(LIP), identificam-se as principais causas e problemas nos procedimentos efectuados nos CC da institui¸c˜aoe finaliza-se com a descri¸c˜aodos requisitos que se pretendem implementar de modo a agilizar os processos realizados nos CC.

Apontar um caminho para melhorar a gest˜aodestes dois centros de calculo ´eo prop´osito deste trabalho.

29 30 CAP´ITULO 3. PROBLEMA

3.2 Causas e Problemas Principais nos Procedimentos do LIP

O LIP encontra-se envolvido em projectos cujas experiˆenciasnecessitam que se processem quan- tidades massivas de dados digitais, e nas quais existem milhares de utilizadores. Esta situa¸c˜ao implica que o pessoal t´ecnicoe especializado do CC do LIP tenha que gerir uma vasta gama de recursos computacionais. Em simultˆaneo,algumas parcerias que o LIP vem estabelecendo aumentam por sua vez a ´areade actua¸c˜aodo pessoal t´ecnicodo CC do LIP, aumentando as fun¸c˜oesque os mesmo n´umerode t´ecnicostˆemque desempenhar.

At´e`adata, o LIP tem conseguido manter o n´ıvel de servi¸coque satisfaz os utilizadores, mas o pessoal t´ecnicoencontra-se no limite do seu esfor¸co.

Atrav´esde um grande n´umerode entrevistas aos funcion´ariosdo LIP, e da an´alisedas opera¸c˜oesdi´ariaslevadas a cabo por cada elemento, tentou-se identificar as responsabilidades individuais, as responsabilidades conjuntas e o modo como a informa¸c˜aoflui no interior da institui¸c˜ao.

Ap´osa an´alise`asrespostas e procedimentos funcionais, chegou-se `asseguintes conclus˜oes:

• cada funcion´ario´erespons´avel pela manuten¸c˜aoe opera¸c˜aode determinados servi¸cos. Existem servi¸cosque podem ser suportados por dois ou mais elementos,

• a documenta¸c˜aosobre a opera¸c˜aode cada servi¸co´emantida numa wiki geral. O problema ´eque essa wiki n˜ao´eactualizada com a regularidade desejada,

• as entradas e sa´ıdasde componentes inform´aticas´erealizada de acordo com uma base de dados que se tornou obsoleta uma vez que deixou de estar actualizada,

• os registos de interven¸c˜oessobre componentes ´eainda mantido na forma de ficheiros de texto em ´areaspessoais de alguns funcion´arios,

• o planeamento das interven¸c˜oes´erealizado de forma ad hoc, com uma avalia¸c˜aodo impacto prec´aria,

• o Modus operandi da institui¸c˜ao,apesar de ainda conseguir satisfazer a qualidade de servi¸copretendida, confronta-se com o obst´aculoda n˜aoescalabilidade resultante da gest˜ao de um parque inform´atico cada vez maior, mais complexo e distribu´ıdo,estando os seus funcion´ariosno limite do seu esfor¸co.

O modo de funcionamento do CC de Coimbra ´esemelhante ao funcionamento de Lisboa, pelo que no primeiro ciclo do m´etodo Action Research s´oterei em considera¸c˜aoo CC de Lisboa. 3.3. COLECC¸ AO˜ E CARACTERIZAC¸ AO˜ DE REQUISITOS 31

3.3 Colec¸c˜ao e Caracteriza¸c˜aode Requisitos

O objectivo deste trabalho ´ea implementa¸c˜aode um sistema que optimize procedimentos e minimize o esfor¸cona opera¸c˜ao/manuten¸c˜aodo equipamento.

Atendendo ao diagn´osticoelaborado, apresentado na Sec¸c˜aoanterior, tendo em conta o contexto da institui¸c˜aoLIP, foi estabelecido um conjunto de requisitos funcionais, n˜aofuncionais e de neg´ocioque devem ser implementados de forma a agilizar e automatizar os processos realizados pelo CC do LIP. Estes requisitos foram aprovados pelo LIP.

3.3.1 Requisitos de Neg´ocio

R01. O sistema deve ser desenvolvido utilizando ferramentas open source.

R02. O sistema deve integrar, sempre que poss´ıvel, tecnologia e software em produ¸c˜aono seio da institui¸c˜ao.

R03. O fluxo de informa¸c˜aono desenrolar dos processos deve basear-se num sistema de noti- fica¸c˜oestrocadas entre os v´ariosintervenientes.

3.3.2 Requisitos N˜aoFuncionais

R04. A autentica¸c˜aono sistema deve ser efectuada via login/password ou via certificado digital.

R05. Os utilizadores s´opossuem permiss˜oespara enviar notifica¸c˜oes.

R06. O administrador do sistema possui permiss˜oespara criar, apagar e manipular informa¸c˜ao em todos os m´odulosdo sistema.

3.3.3 Requisitos Funcionais

R07. Planeamento de interven¸c˜oessobre componentes inform´aticos(adi¸c˜ao, substitui¸c˜aoe remo¸c˜ao).

R08. Registo de ac¸c˜oesefectuadas sobre componentes inform´aticosincluindo interven¸c˜oesde manuten¸c˜ao.

R09. Registo de ac¸c˜oesrealizadas pelos utilizadores e pelo administrador do sistema.

R10. Efectuar procuras sobre as ac¸c˜oesefectuadas sobre determinado componente.

R11. Elaborar relat´oriose estat´ısticasque possibilitem obter m´etricaspara os v´arioscompo- nentes inform´aticosda institui¸c˜ao. 32 CAP´ITULO 3. PROBLEMA

R12. Detectar e notificar a presen¸cade incoerˆencianos dados.

R13. Existˆenciade uma interface de acesso para todos os utilizadores.

R14. Existˆenciade uma interface que permita consultar os dados guardados.

R15. Invent´arioactualizado do equipamento de hardware existente no CC do LIP. Cap´ıtulo4

Proposta

Neste cap´ıtulos˜aoapresentadas as propostas para os processos de GA e GC tendo em conta os requisitos estabelecidos no ˆambito do LIP.

4.1 Sistema da Gest˜aode Altera¸c˜oes

Para gerir as altera¸c˜oesfoi necess´ariodefinir um processo de GA, que se ajuste aos requisitos da institui¸c˜aoe que formalize estados de mudan¸ca,nomeadamente de equipamentos e servi¸cos. O processo fixado ´ebaseado na framework ITIL. Neste sentido, foi necess´ariocriar crit´erios ajustados `arealidade da institui¸c˜aopara categorizar as altera¸c˜oes,decidir os seus estados, fixar m´etricaspara avaliar as altera¸c˜oese o seu impacto, e determinar as actividades relevantes no fluxo de execu¸c˜aodo processo.

4.1.1 Modelo de Actividades

A Figura 4.1 ilustra o processo proposto de GA, e que ´ecomposto pelas seguintes actividades:

1. Criar um RfC (Request for Change).

2. Avaliar/Classificar um RfC.

3. Autorizar RfC.

4. Concretizar.

5. Testar um RfC.

6. Aceitar/Rejeitar RfC.

33 34 CAP´ITULO 4. PROPOSTA

Figura 4.1: Processo de Gest˜aode Altera¸c˜oesAdoptado.

Este processo prop˜oea existˆenciade quatro pap´eisa desempenhar na institui¸c˜ao: Re- questador (qualquer utilizador e funcion´arioda institui¸c˜ao), Executante (os funcion´ariosque executam as tarefas t´ecnicasde implementa¸c˜aoda altera¸c˜ao), Coordenador (o respons´avel pela avalia¸c˜aoda altera¸c˜aoe pela coordena¸c˜aoda implementa¸c˜ao)e o Comit´ede Peritos (CPE que avalia e coordena altera¸c˜oesde grande impacto na institui¸c˜ao).

O processo inicia-se com a cria¸c˜aode um novo RfC, e pode ser realizado por qualquer utilizador na organiza¸c˜ao. A altera¸c˜ao´eposteriormente catalogada pelo Coordenador: caso 4.1. SISTEMA DA GESTAO˜ DE ALTERAC¸ OES˜ 35

seja uma altera¸c˜aoconfirmada como standard, ´eautomaticamente aprovada/aceite e pode ser executada. E´ nesta altura, que tamb´em´edefinido o IC sobre o qual a altera¸c˜ao´epretendida e recolhida toda a informa¸c˜aorelacionada, considerada ´utilpara avalia¸c˜aoda altera¸c˜ao.Caso seja uma altera¸c˜aoconsiderada n˜ao standard, o RfC tem que ser avaliado e classificado de acordo com o modelo de classifica¸c˜aode altera¸c˜oesproposto (ver Sec¸c˜ao4.1.3). O Coordenador pode dar seguimento `aaltera¸c˜aoou encaminhar o pedido para nova reavalia¸c˜aopelo CPE. Se o RfC for rejeitado, o processo termina e o porquˆeda decis˜aode rejei¸c˜ao´eguardado. Se o RfC ´eaceite, o(s) Executante(s), executam a altera¸c˜ao.O RfC entra ent˜aonuma fase de testes, e caso seja considerado v´alidoe n˜aocausar problemas inesperados, a altera¸c˜ao´efinalmente aceite. Caso contr´arioa altera¸c˜ao´erejeitada.

4.1.2 Estados das Altera¸c˜oes

No desenrolar das v´ariasactividades, um RfC passa por v´ariosestados que se encontram ilus- trados na Figura 4.2.

Figura 4.2: Diagrama de Estados de uma Altera¸c˜ao.

• New - Quando um RfC ´ecriado, este ´eo seu estado.

• Open - O RfC foi aceite para implementa¸c˜aopelo Coordenador ou pelo CPE. Encontra-se em implementa¸c˜aopelo Executante.

• Testing - Depois de implementar a altera¸c˜ao,o RfC entra numa fase de testes. Nesta fase avalia-se se a altera¸c˜ao´eou n˜aobem sucedida.

• Resolved - Este ´eum dos estados finais de um RfC. Significa que a altera¸c˜aofoi comple- tada e com sucesso.

• Rejected - O RfC foi avaliado pelo Coordenador ou por o CPE e foi decidido que n˜ao ser´aresolvido, mas por alguma raz˜ao,´ev´alidoque esta ac¸c˜aoseja registada no sistema. 36 CAP´ITULO 4. PROPOSTA

4.1.3 Categorias de Altera¸c˜oese Crit´eriosde Avalia¸c˜ao

Os objectivos da categoriza¸c˜aodas altera¸c˜oes´eperceber qual o m´etodo de aprovar e autorizar o pedido de altera¸c˜ao(RfC) e ter um c´alculopr´eviodo impacto da altera¸c˜aona institui¸c˜ao. Nesse sentido, para categorizar as altera¸c˜oesfoi decidido adoptar o modelo definido pela Pink Elephant,1 sendo fixadas as seguintes categorias:

1. Principal - Mudan¸casque envolvem:

• elevado tempo de prepara¸c˜ao/execu¸c˜ao

• impacto dif´ıcilde avaliar

• m´etodos procedimentais n˜aoconhecidos

• requerem obrigatoriamente uma avalia¸c˜aopor parte do CPE

• avultados custos monet´arios

2. Significante - Mudan¸casque implicam um tempo de prepara¸c˜aoe execu¸c˜aolongo. Re- querem avalia¸c˜aopor parte do CPE

3. Menor - Altera¸c˜oesque n˜aorequerem aprova¸c˜aopor parte do CPE e que requerem pouco tempo de prepara¸c˜ao/execu¸c˜ao.

Para categorizar uma altera¸c˜aoo Coordenador deve avali´a-lade acordo com os crit´erios apresentados na Tabela 4.1, e ter em considera¸c˜aoo seguinte modelo de classifica¸c˜ao: o valor mais elevado para todos os crit´eriosestabelece a categoria da altera¸c˜ao. Por exemplo, cinco classifica¸c˜oesC e um A significam automaticamente uma Altera¸c˜aoPrincipal.

1V´arioscolaboradores da Pink Elephant s˜aoco-autores do livro ITIL - Service Support da editora Best practice nomeadamente Michiel Berkhout, Brian Jonhson, Marc Van Goethem, Guus Velter 4.1. SISTEMA DA GESTAO˜ DE ALTERAC¸ OES˜ 37

A. Todos os utilizadores N´umerode utilizadores afectados B. Dois ou mais grupos C. Um grupo A. Elevado. Organiza¸c˜aofica Risco de n˜aoimplementar a altera¸c˜ao inoperacional B. M´edio.Parte das funcionalidades n˜aoser˜aodisponibilizadas C. Baixo. Sem implica¸c˜oes para a organiza¸c˜ao A. Todo o CC Recursos necess´ariospara preparar/implementar B. 3 t´ecnicos C. 1 - 2 t´ecnicos A. 2 dias ou mais Esfor¸co de Prepara¸c˜ao B. 8 - 48 horas C. ≤ 8 horas A. > 24 horas Esfor¸co de Implementa¸c˜ao B. 1 - 24 horas C. ≤ 1 hora A. Dif´ıcil Possibilidade de retrocesso B. Moderada (1 - 2 horas) C. F´acil

Tabela 4.1: Crit´erios para Categoriza¸c˜aode Altera¸c˜oes:A = Altera¸c˜aoPrincipal, B = Altera¸c˜ao Significante, C = Altera¸c˜aoMenor.

Sabendo qual o tipo de categoria, estabeleceram-se os seguintes tempos de implementa¸c˜ao:

Categoria da Altera¸c˜ao Prazo de Execu¸c˜ao

Principal 30 dias ´uteis

Significante 14 dias ´uteis

Menor 0-3 dias ´uteis

Tabela 4.2: Per´ıodo de Execu¸c˜aopara as Diferentes Categorias de Altera¸c˜oes

4.1.4 Identifica¸c˜aode Funcionalidades

O sistema de GA tem como objectivo principal gerir as altera¸c˜oesderivadas da Gest˜aodo CC do LIP. Para realizar este objectivo ´enecess´arioque este sistema disponibilize as seguintes funcionalidades: 38 CAP´ITULO 4. PROPOSTA

• Criar novo pedido de altera¸c˜ao.(Create New RfC ) O pedido de altera¸c˜aodeve estar associado a:

– Item de Configura¸c˜ao(IC)

– Requestador

– Executante(s)

– Categoria

– Prioridade

• Definir diferentes perfis de utilizador com permiss˜oese responsabilidades espec´ıficas,no- meadamente:

– Executante(s) - tem permiss˜oesde visualiza¸c˜aoe modifica¸c˜aoparcelar de RfC relaci- onados com tarefas sob a sua dependˆencia

– Coordenador - tem permiss˜oesde visualiza¸c˜ao/modifica¸c˜aode todos os RfC

– Requestador - pode unicamente visualizar o progresso (estado) do RfC que iniciou

• Permitir inser¸c˜aode coment´ariosnum dado RfC, por parte dos intervenientes na altera¸c˜ao.

• Rejeitar, aceitar e testar um RfC.

• Definir per´ıodo de execu¸c˜aode um RfC.

• Guardar um RfC.

• Consultar o registo hist´oricode ac¸c˜oesefectuadas sobre um RfC.

• Definir o fluxo de informa¸c˜aoentre os v´ariosintervenientes na altera¸c˜ao.

• Visualizar m´etricasde desempenho utilizando um ´unico dashboard.

• Criar relat´oriosque contenham informa¸c˜aosobre n´umerode pedidos de altera¸c˜ao,n´umero e percentagem de altera¸c˜oes,n´umerode pedidos rejeitados, n´umerode pedidos aprovados e frequˆenciade mudan¸cade um dado IC.

• Definir procedimentos de retrocesso, caso uma altera¸c˜aocause problemas.

Na Figura 4.3 apresentam-se os casos de uso do sistema de GA. A descri¸c˜aodetalhada de cada um dos casos de uso encontra-se no ApˆendiceB, apresentando-se para cada um, os cen´arios principais e alternativos. 4.2. SISTEMA DE GESTAO˜ DE CONFIGURAC¸ OES˜ 39

Figura 4.3: Casos de Uso do Sistema de Gest˜aode Altera¸c˜oes.

4.2 Sistema de Gest˜aode Configura¸c˜oes

O estudo dos processos executados no interior do LIP mostrou que o fluxo de informa¸c˜ao´ereali- zado de forma inadequada, dada a quantidade de dados a manipular e os agentes envolvidos que necessitam de aceder a essa informa¸c˜ao.Desta forma, mais do que um conjunto de tecnologias, ´enecess´ariocolocar em pr´aticaum modelo comum de procedimentos e actividades que visem centralizar a informa¸c˜ao,e agilizar a sua consulta ou altera¸c˜aode forma controlada.

O processo global de GC proposto para o LIP encontra-se representado na Figura 4.4, e ´e constitu´ıdopelas actividades de:

• Planeamento: defini¸c˜aodo modelo de GC.

• Identifica¸c˜ao: respons´avel por identificar a existˆenciade novas ocorrˆenciasa introdu- zir/remover na CMDB.

• Especifica¸c˜ao: constitu´ıdapor actividades que respondem a pedidos de altera¸c˜aoestru- turais da CMDB. 40 CAP´ITULO 4. PROPOSTA

• Controlo: constitu´ıdapor actividades que respondem a pedidos para alterar conte´udos da CMDB, n˜aoenvolvendo altera¸c˜oesestruturais na CMDB.

• Auditoria e Verifica¸c˜ao: constitu´ıdapor actividades que asseguram que os activos na CMDB s˜aoefectivamente os activos da institui¸c˜ao.

As ac¸c˜oesconstituintes da actividade de Planeamento s˜aomais orientadas ao in´ıciodo processo, em que ´enecess´ariovalidar o pr´opriomodelo adaptado para a CMDB e modific´a-lose necess´ario for. As actividades de Identifica¸c˜ao, Especifica¸c˜ao, Controlo, Auditoria e Verifica¸c˜ao s˜ao constitu´ıdaspor ac¸c˜oesorientadas para a opera¸c˜aodi´ariada infra-estrutura de computa¸c˜aodo LIP, e em que o planeamento do modelo ´eposto `aprova. Cada uma destas actividades encontra- se descrita em detalhe na presente Sec¸c˜ao,e pressup˜oea existˆenciade 2 pap´eisa desempenhar na institui¸c˜ao: Gestor da Configura¸c˜ao, respons´avel pela execu¸c˜aodas actividades de todas as fases do sistema de GC, `aexcep¸c˜aodas actividades da fase de Auditoria e Verifica¸c˜aoque ser˜aoexecutadas pelo Auditor.

Figura 4.4: Fases do Processo de GC, Proposto para o LIP. 4.2. SISTEMA DE GESTAO˜ DE CONFIGURAC¸ OES˜ 41

4.2.1 Modelo de Actividades - Planeamento

A actividade de Planeamento ilustrada na Figura 4.5 ´econstitu´ıdapela defini¸c˜aodos IC, do modelo para a CMDB e pelo fluxo operacional de implementa¸c˜aoda CMDB. Estes trˆesaspectos s˜aoendere¸cadospor Baron et al. [28]

Figura 4.5: Fase de Planeamento da Configura¸c˜aoProposta para o LIP.

4.2.1.1 Defini¸c˜aodos Itens de Configura¸c˜ao

Os IC podem ser qualquer item que a organiza¸c˜aoqueira gerir/controlar, incluindo itens in- tang´ıveis tais como licen¸cas,patentes, e itens de software e hardware. No caso espec´ıficodo LIP, o processo de GC pretende ser orientado a hardware com a agrega¸c˜aoda informa¸c˜aosobre os servidores de c´alculo,servidores de armazenamento e respectivas componentes, e dispositivos de rede. A Tabela 4.3, esquematiza os v´ariostipos de IC (e seus atributos) identificados.

4.2.1.2 Modelo da CMDB e Fluxo Operacional de Implementa¸c˜ao

Segundo o modelo idealizado para a CMDB, o sistema deve ser composto por uma base de dados com uma interface que permita ler, escrever e alterar os dados de configura¸c˜aoarmazenados. Pretende-se que os dados da GC estejam organizados segundo um esquema (ver Figura 4.6) que deve ter em conta os seguintes aspectos: 42 CAP´ITULO 4. PROPOSTA

Atributos Itens de Configura¸c˜ao Gerais Particulares MacAddress/Interfaces Rede IPs Localiza¸c˜ao(Rack) Servidor Data de Entrada Capacidade de Mem´oria Nome Tipo(Armazenamento ou Data Garantia Computa¸c˜ao) Modelo MacAddress/Interfaces Rede Controlador de Armazenamento Marca IP Grupo Capacidade Caixas de Expans˜ao Localiza¸c˜ao Capacidade N´umerode S´erie Localiza¸c˜ao(Servidor/ Discos Part Number Caixa de Expans˜ao) MacAddress/Interfaces Rede IP Router/Switcher Localiza¸c˜ao(rack)

Tabela 4.3: Tipos de ICs definidos para o LIP e seus atributos.

1. incluir uma entidade para registar os atributos dos IC (CI Attribute). Como esta entidade est´aseparada das restantes entidades permite suportar qualquer tipo arbitr´ariode atributo para um dado IC.

2. incluir uma entidade para rastrear rela¸c˜oesentre IC (CI Relationship), o que possibilita o suporte de complexas rela¸c˜oesentre IC.

3. se poss´ıvel, incluir entidades que agreguem informa¸c˜aosobre procedimentos referentes ao processo de GA e que levem `amudan¸cade atributos de IC. Conv´emreferir que, dada a complexidade inerente aos processos de GA e GC, ambos s˜aonormalmente implementados de forma independente nas institui¸c˜oes,e integrados `aposteriori na CMDB atrav´esde entidades espec´ıficasque permitem relacionar um dado pedido de altera¸c˜aocom dado IC.

O fluxo operacional na implementa¸c˜aoda CMDB implica:

1. Definir IC, tendo cada um ou mais atributos.

2. Guardar os atributos numa estrutura de dados (separada).

3. Identificar rela¸c˜oesentre IC.

4. Guardar as rela¸c˜oesidentificadas numa estrutura de dados separada.

4.2.2 Modelo de Actividades - Identifica¸c˜ao

Ap´oso Planeamento, e segundo o modelo adoptado, segue-se a actividade de Identifica¸c˜ao, que ´erespons´avel por identificar a existˆenciade novas ocorrˆenciasa introduzir na CMDB. 4.2. SISTEMA DE GESTAO˜ DE CONFIGURAC¸ OES˜ 43

Figura 4.6: Diagrama Entidade-Rela¸c˜ao(ER) Ilustrando um Esquema de Defini¸c˜aodos IC na CMDB Proposto por Baron et al.[28]

O modelo pressup˜oea possibilidade da informa¸c˜aopoder ser obtida/agregada atrav´esde fer- ramentas (Discovery tools) que permitem obter de forma autom´aticainforma¸c˜aosobre novos IC. No entanto, durante a opera¸c˜aodi´ariada infra-estrutura, a inser¸c˜aode um novo registo na CMDB deve ter sempre origem a partir do sistema de GA.

A Figura 4.7 apresentas as diversas ac¸c˜oesenvolvidas na fase de identifica¸c˜ao:

• 2.1) O Gestor da Configura¸c˜aoidentifica a existˆenciade novas ocorrˆenciasa inserir/remover da CMDB, como resultado das actividades de GA. Entre as ocorrˆenciasposs´ıveis temos:

1. Criar ou remover IC.

2. Criar ou remover atributos para um IC existente.

3. Criar ou remover instˆanciasde IC existentes.

4. Modificar valores dos atributos de instˆanciasdos IC. 44 CAP´ITULO 4. PROPOSTA

Figura 4.7: Fase de Identifica¸c˜aoda Configura¸c˜aoProposta para o LIP.

• 2.2) A` priori, o processo da GA pode dar origem a qualquer tipo de ocorrˆencia(descrita no ponto 2.1.), e o modelo deve estar adaptado para reagir em consonˆancia. A cada nova ocorrˆencia,o Gestor da Configura¸c˜aodeve avaliar o respectivo impacto na CMDB. Ocorrˆenciasdo tipo 3 e 4 n˜aotˆemimpacto estrutural no modelo adoptado para a CMDB pelo que podem ser realizadas de imediato.

• 2.3) Ocorrˆencias do tipo 1 e 2 levam a altera¸c˜oesestruturais da CMDB, que uma vez identificadas, levam `aemiss˜aode um RfC, e caso este seja aprovado, `aactividade de especifica¸c˜aono processo de GC.

4.2.3 Modelo de Actividades - Especifica¸c˜ao

A actividade de Especifica¸c˜ao, ilustrada na Figura 4.8 ´econstitu´ıdapor ac¸c˜oesque respondem a pedidos de altera¸c˜aoestruturais da CMDB, permitindo que a mesma se adeq´uea um ambiente em permanente mudan¸ca,sendo o tipo de pedidos contemplados nesta fase os pedidos do tipo 1 e 2 da fase de Identifica¸c˜ao.Nesta fase pressup˜oe-seque a valida¸c˜aodo conte´udodo pedido j´afoi executada durante o processo de GA pelo que a remo¸c˜aode um IC inexistente, ou de um atributo inexistente s˜aoac¸c˜oesque n˜aotˆemlugar durante esta actividade. 4.2. SISTEMA DE GESTAO˜ DE CONFIGURAC¸ OES˜ 45

Figura 4.8: Fase de Especifica¸c˜aoda Configura¸c˜ao.

O processo de alterar o esquema da CMDB consiste nos seguintes passos:

• 3.1) O Gestor da Configura¸c˜aorelaciona o IC com a baseline de configura¸c˜ao.

• 3.2) O Gestor da Configura¸c˜aoaverigua se o IC existe na CMDB.

• 3.3) Caso n˜aoexista, tem que alterar o esquema da CMDB de modo a suportar o novo IC e os seus atributos e rela¸c˜oes.

• 3.4) Caso o IC exista na CMDB, o Gestor da Configura¸c˜aoavalia se se trata de um pedido de remo¸c˜aode um IC.

• 3.5) Se for um pedido de remo¸c˜ao,ent˜aoo Gestor da Configura¸c˜aoremove o IC.

• 3.6) Se o IC existe e n˜aose trata de um pedido de remo¸c˜ao,o Gestor da Configura¸c˜ao averigua se ´epara remover ou criar atributos para esse IC. 46 CAP´ITULO 4. PROPOSTA

• 3.7) O Gestor da Configura¸c˜aocria os atributos do IC.

• 3.8) O Gestor da Configura¸c˜aoremove atributos do IC.

4.2.4 Modelo de Actividades - Controlo da Configura¸c˜ao

Na fase de Controlo da Configura¸c˜ao (Figura 4.9), o Gestor da Configura¸c˜ao responde a pedidos para alterar conte´udos da CMDB. O tipo de pedidos envolvidos nesta fase s˜aopedidos do tipo 3 e 4 descritos na fase de Identifica¸c˜ao.

Figura 4.9: Fase de Controlo da Configura¸c˜aoProposta para o LIP.

• 4.1) O Gestor da Configura¸c˜aorecebe um pedido para alterar conte´udosna CMDB.

• 4.2) O Gestor da Configura¸c˜aoavalia se o pedido ´ea cria¸c˜aode uma nova instˆanciade um IC.

• 4.3) Caso o pedido recebido n˜aoseja para criar um instˆancia,o Gestor da Configura¸c˜ao avalia se se trata de um pedido para remover uma instˆancia.

• 4.4) O Gestor da Configura¸c˜aoaverigua se o pedido consiste na modifica¸c˜aodos valores dos atributos.

• 4.5) O Gestor da Configura¸c˜aocria uma nova instˆanciade um activo.

• 4.6) O Gestor da Configura¸c˜aoremove a instˆancia.

• 4.7) O Gestor da Configura¸c˜aomodifica o valor dos atributos do activo na CMDB. 4.2. SISTEMA DE GESTAO˜ DE CONFIGURAC¸ OES˜ 47

4.2.5 Modelo de Actividades - Auditoria e Verifica¸c˜ao

Na fase de Auditoria e Verifica¸c˜ao (Figura 4.10), realizada pelo Auditor realiza-se uma compara¸c˜aoentre os registos dos IC presentes na CMDB e os itens f´ısicosexistentes.

Figura 4.10: Fase de Auditoria da Configura¸c˜aoProposta para o LIP.

Este sub-processo ´econstitu´ıdopelas seguintes ac¸c˜oes(figura 4.10):

• 5.1 O Gestor da Configura¸c˜aodetermina o ˆambito da auditoria.

• 5.2 O Gestor da Configura¸c˜aoexecuta a auditoria (fazendo um rastreio do produto, usando uma discovery tool, manualmente).

• 5.3 O Auditor avalia se existem diferen¸casentre os activos registados na CMDB e os activos da institui¸c˜ao.

• 5.4 Caso n˜aoexistam diferen¸casa auditoria termina.

• 5.5 Caso existam diferen¸cass˜aodeterminadas excep¸c˜oese prioridades.

• 5.6 As diferen¸casd˜aoorigem `aemiss˜aode um novo RfC.

4.2.6 Identifica¸c˜aode Funcionalidades

O sistema de GC tem como objectivo principal gerir da Gest˜aodo CC do LIP. Para realizar este objectivo ´enecess´arioque este sistema disponibilize as seguintes funcionalidades:

• introduzir/remover dispositivos de hardware de forma autom´aticae de forma manual.

• visualizar rede de dispositivos, suas rela¸c˜oese dependˆenciasexistentes. 48 CAP´ITULO 4. PROPOSTA

• visualizar eventos.

• criar relat´oriosque contenham informa¸c˜aosobre desempenho e disponibilidade dos com- ponentes inform´aticos.

• consultar o registo hist´oricode ac¸c˜oesefectuadas sobre os dispositivos de hardware.

A Figura 4.11 apresenta os casos de uso do sistema de GC. A descri¸c˜aode cada um dos casos de uso, dos cen´ariosprincipais e alternativos encontra-se no ApˆendiceC.

Figura 4.11: Casos de Uso do Sistema de Gest˜aode Configura¸c˜oes Cap´ıtulo5

Concretiza¸c˜aoda Solu¸c˜ao

Para concretizar o sistema de GA e o sistema de GC no LIP, optou-se pela utiliza¸c˜aode duas tecnologias open-source: o Request Tracker (RT) e o Zenoss. O RT ´eutilizado para concre- tizar o processo de GA e gerir o fluxo de trabalho na execu¸c˜aode tarefas, e o Zenoss ´eutilizado para concretizar o processo de GC.

Na presente sec¸c˜aoexplica-se a escolha destas ferramentas e o modo como se adequam aos modelos de GA e GC descritos nas Sec¸c˜oes4.1 e 4.2.

5.1 Request Tracker

O Request Tracker(RT), [29] ´eum sistema utilizado para coordenar tarefas e gerir solicita¸c˜oes (pedidos) entre v´ariosutilizadores. A primeira vers˜ao,editada em 1996, foi escrita por Jesse James, que mais tarde formou a empresa Best Practical Solutions LLC para desenvolver e distribuir o RT. Actualmente, encontra-se na vers˜ao4.0 e ´edistribu´ıdo sob a licen¸caGNU GPL [35]. O RT pode ser instalado sob as plataformas Unix, Linux, Windows e Mac OS e pode interoperar com v´ariasbases de dados: MySQL, POstgreSQL, ORACLE e SQLite. O RT foi desenvolvido em e pode utilizar os servidores Apache e web lighttpd [36] associado ao m´odulomod perl [37] e ao protocolo FastCGI [38] respectivamente.

No RT convencionou-se que cada pedido ou tarefa a executar ´egerida atrav´esde um ou mais tickets. A cria¸c˜aoe actualiza¸c˜aode tickets pode ser levada a cabo atrav´esdas v´ariasinterfaces:

1. uma plataforma web, dispon´ıvel tanto para utilizadores registados como para utilizadores convidados, facilmente configur´avel que permite a adi¸c˜aode campos personalizados. Pos- sibilita a modifica¸c˜aoda interface web sem a necessidade de muito esfor¸coe conhecimento, utilizando o mecanismo de Callbacks. [39]

49 50 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

2. uma interface de e-mail, muitas vezes a ´unicainterface que alguns utilizadores convidados tˆempermiss˜oespara visualizar.

3. interface REST que permite o acesso `abase de dados do RT a partir do exterior e cuja comunica¸c˜aoentre o cliente e a base de dados do RT se encontra encapsulada no protocolo HTTP. O endere¸coURL base para todos os pedidos ´e: https:///REST/1.0/.

4. uma CLI - Command Line Interface que permite manipular tickets e utilizadores numa linha de comandos UNIX e melhor adaptada para tarefas de automatiza¸c˜aoe integra¸c˜ao com outras ferramentas. Esta interface interage com o servidor do RT usando o protocolo HTTP. [29]

Atrav´esde cada uma da interfaces anteriores, os utilizadores e administradores podem (de acordo com as suas permiss˜oes):

• Abrir um ticket.

• Atribuir tickets a pessoas (pessoas respons´aveis pelos tickets).

• Rastrear altera¸c˜oesefectuadas a um ticket.

• Informar as partes interessadas sobre as altera¸c˜oesefectuadas ou sobre o estado de um ou mais tickets.

• Accionar actividades baseadas na prioridade e/ou estado de um ticket.

• Encerrar ou fechar um ticket.

5.1.1 Arquitectura

A Figura 5.1 ilustra a arquitectura em camadas do RT, [29] que de forma sucinta consiste na implementa¸c˜aodas seguintes camadas:

• Database: esta camada representa a capacidade que o RT possui de inter-operar com v´ariasbases de dados nomeadamente MySQL, POstgreSQL, ORACLE e SQLite.

• DBIx:Searchbuilder ´e a camada respons´avel por estabelecer a liga¸c˜ao entre uma aplica¸c˜aoorientada a objectos que ´eo caso do RT e a base de dados relacional adop- tada. 5.1. REQUEST TRACKER 51

Figura 5.1: Arquitectura do RT [29].

• RT core libraries. O RT possui dois tipos principais de livrarias:

– RT application platform libraries - livrarias respons´aveis, por exemplo, pela conectividade `abase de dados, pelo controlo de acessos, liga¸c˜oese infra-estrutura de registos. – RT ticketing system libraries - livrarias que providenciam funcionalidades pr´opriasde um sistema de ticketing.

handler ´eum wrapper para o sistema Mason [42], uma framework para a cons- tru¸c˜aode aplica¸c˜oesweb escrita em Perl. O Mason pode ser usado com o servidor Apache HTTP via mod perl (para o qual o Mason providencia o seu pr´opriohandler: HTML::Mason::ApacheHandler) ou ainda ser usado no servidor lighttpd.

• HTTP Clients. O RT tem trˆesclientes HTTP que s˜aoo Web Browser, Email gateway e a CLI (Command-Line Interface).

5.1.2 Modelo L´ogico

O Modelo L´ogicodo RT apresentado na Figura 5.2 ´econstitu´ıdopor duas partes principais: uma que ´erespons´avel por gerir os utilizadores e as as suas permiss˜oes,para assim poderem actuar no sistema, e outra respons´avel pela funcionalidades pr´opriasde um sistema de Ticketing.A unidade b´asicaadministrativa existente ´ea Fila (Queue), cuja estrutura permitir implementar um fluxo de trabalho a ser realizado por v´ariosintervenientes: as Filas s˜aocontentores nos quais se agrupam os tickets, se podem definir grupos de trabalho e definir condi¸c˜oese ac¸c˜oesa realizar por diferentes intervenientes. 52 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

Figura 5.2: Modelo L´ogicodo RT.

O Modelo e a sua descri¸c˜aopodem ser consultados no ApˆendiceD.

5.1.3 Raz˜oesda Adop¸c˜aodo Request Tracker

O RT foi adoptado pois ´euma ferramenta amplamente utilizada na comunidade para gest˜ao e controlo de tarefas, tanto em ambientes integrados, como em ambientes geograficamente dis- tribu´ıdos.Existe um bom suporte e apoio `aconfigura¸c˜ao,devido `avasta documenta¸c˜aoexistente e ampla comunidade de utilizadores. A sua estrutura bastante gen´ericapermite que o RT seja configurado de acordo com os workflows e casos de uso necess´ariospara uma dada organiza¸c˜ao.

Para al´emdas vantagens enunciadas, o RT possibilita satisfazer a maioria dos requisitos no contexto do LIP:

1. Cumpre requisitos de neg´ocio:o RT ´euma ferramenta open-source, que possui um meca- nismo de notifica¸c˜oese que permite informar todas as partes envolvidas sobre o estado de uma tarefa. E´ poss´ıvel notificar atrav´esde email e sms, os v´ariosintervenientes no desen- rolar de actividades decorrentes da execu¸c˜aode tarefas. Ou seja, cumpre os requisitos de neg´ocio R01 e R03 definidos.

2. Cumpre requisitos n˜aofuncionais: o RT possui como caracter´ıstica um mecanismo de 5.1. REQUEST TRACKER 53

ACL (Access Control Lists) implementando diferentes permiss˜oespara diferentes tipos de utilizadores, isto ´e,utilizadores diferentes ter˜aodiferentes direitos de actua¸c˜aono sistema. Este mecanismo permite satisfazer os requisitos n˜aofuncionais R05 e R06 definidos. No RT, a autentica¸c˜aono sistema ´eefectuada via login/password, permitindo satisfazer o requisito R04.

3. Cumpre requisitos funcionais: o RT permite definir fluxos de trabalho entre v´arios in- tervenientes, e registar essa informa¸c˜aona sua base de dados, permitindo satisfazer os requisitos R07 e R08. E´ uma ferramenta extremamente adapt´avel `aspreferˆenciasde uma organiza¸c˜ao:

• o seu modelo de dados gen´ericopermite uma categoriza¸c˜aosegundo a utiliza¸c˜aoque uma organiza¸c˜aopretenda. • O workflow e a l´ogicade neg´ocioque uma organiza¸c˜aoprecisa, pode ser ensinada ao RT.

O RT permite procurar tickets, segundo uma forma pr´e-estabelecida no interface web, ou usando um query language denominada TicketSQL, possibilitando ao utilizador a defini¸c˜ao da sua pesquisa, sendo assim cumprido o requisito R10. A partir desta funcionalidade simples, o RT permite a defini¸c˜aode Dashboards, ou seja, uma colec¸c˜aode informa¸c˜ao obtida atrav´esde pesquisas pr´e-definidas. Desta forma, os administradores e utilizado- res podem ser notificados periodicamente (diariamente, mensalmente) sobre o estado e o n´umerode tickets numa determinada queue. O RT permite ainda a gera¸c˜ao on demand de gr´aficos(ver Figura 5.3), demonstrativos da evolu¸c˜aodas diversas tarefas ao longo do tempo e do esfor¸cocomprometido na sua resolu¸c˜ao.Todas estas funcionalidades permitem concretizar o requisito R11.

Figura 5.3: N´umeroe Estado de Tickets Existentes na Fila Hardware Change Request Criados a Partir de 13 Janeiro de 2011. 54 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

5.1.4 Configura¸c˜aodo Request Tracker

Nesta Sec¸c˜aoapresenta-se como o processo de GA definido na Sec¸c˜ao4.1 foi concretizado usando o RT.

5.1.4.1 Ticket Actuando como RfC

Para a concretiza¸c˜aodo sistema de GA foi necess´arioajustar funcionalidades do RT, e esta- belecer conven¸c˜oesque se adaptem ao formalismo de um pedido de altera¸c˜ao,e `asactividades do processo. Uma das principais conven¸c˜oesbaseia-se na correspondˆenciaentre um pedido de altera¸c˜aoe um ticket RT numa fila que visa altera¸c˜oesna infra-estrutura de hardware, sendo por isso imediato que todas as altera¸c˜oesser˜aoactividades sobre atributos de v´arios dispositi- vos de hardware. O formul´ariode preenchimento destes tickets RT com campos pr´e-definidos (CustomFields), foi desenvolvido de forma a satisfazer todos os requisitos que devem constar num pedido de altera¸c˜ao.Adicionalmente ´eposs´ıvel explicitar sobre que item de configura¸c˜ao e sobre que atributo do item de configura¸c˜aovai ser executada a altera¸c˜ao.Entre os principais atributos a preencher temos informa¸c˜aoespec´ıficados dispositivos tais como a sua identifica¸c˜ao, localiza¸c˜ao,fabricante e tipo de produto, propriet´ario,entre outros.

A Tabela 5.1 sumariza os campos que constam no formul´ariode um ticket RT:

Formalismo RfC Ticket RT Preenchimento

N´umerodo RfC Ticket Id Autom´atico Data de Cria¸c˜ao Created Autom´atico Data Prevista In´ıcio Starts Autom´atico Data In´ıcio Started Autom´atico Data Prevista Fim Due Autom´atico Descri¸c˜ao Subject Manual/Obrigat´orio Prioridade Priority Autom´atico Urgˆencia Urgency Manual/Obrigat´orio Categoria N´ıvel 1 Category level1 Manual/Obrigat´orio Categoria N´ıvel 2 Category level2 Manual/Obrigat´orio Tipo da Altera¸c˜ao Change Type Manual/Obrigat´orio Nome do Dispositivo Device Name Manual/Obrigat´orio Tipo de Dispositivo Device Type Manual/Obrigat´orio

Tabela 5.1: Rela¸c˜aoentre Pedido de Altera¸c˜aoe Ticket. 5.1. REQUEST TRACKER 55

Observa¸c˜oesimportantes relativamente aos campos existentes no ticket RT:

• Category level1 Indica se a categoria da altera¸c˜ao´e Standard ou Non standard.

• Category level2 Se a categoria da altera¸c˜aoescolhida for do tipo Non Standard, ent˜aoeste campo permite indicar se a altera¸c˜ao´ePrincipal, Significante ou Menor. Se a categoria for Standard este campo n˜ao´eaplic´avel. A categoriza¸c˜aoda altera¸c˜aoimp˜oeuma data prevista para o fim (Due) da tarefa.

• Urgency A urgˆenciade uma altera¸c˜aopode ser classificada em: Not Urgent, Less Urgent, Urgent, Very Urgent e Top Priority.

• Priority A prioridade de uma altera¸c˜aodepende da urgˆencia:

– caso uma altera¸c˜aoseja classificada como Not Urgent a prioridade estabelecida ´ede 10/100. – caso uma altera¸c˜aoseja classificada como Less Urgent a prioridade estabelecida ´ede 30/100. – caso uma altera¸c˜aoseja classificada como Urgent a prioridade estabelecida ´ede 50/100. – caso uma altera¸c˜aoseja classificada como Very Urgent a prioridade estabelecida ´ede 70/100. – caso uma altera¸c˜aoseja classificada como Not Urgent a prioridade estabelecida ´ede 90/100.

• Due Na Sec¸c˜ao4.1.3 foram estabelecidos tempos de implementa¸c˜aode tarefas de acordo com a categoria de uma altera¸c˜ao.Tal ´econcretizado no RT, no campo Due (Data Prevista do Fim), que de acordo com a categoria da altera¸c˜ao(Change Category (level 2) - Principal, Significante, Menor) estabelece que a data prevista para o fim da tarefa ser´a30, 14 e 3 dias ´uteisrespectivamente.

• Change Type No RT, foram configurados trˆesTipos de Altera¸c˜ao:

1. Add Hardware - altera¸c˜aoque visa a introdu¸c˜aode um novo dispositivo de hardware (nova instˆancia). 2. Change Hardware - altera¸c˜aoque visa a modifica¸c˜aode valores dos atributos de um dispositivo de hardware existente. 56 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

3. Maintain Hardware - altera¸c˜aoque visa opera¸c˜oesde manuten¸c˜aode hardware j´a existente

• Device Name - Nome do dispositivo de hardware sobre o qual incide a altera¸c˜ao

• Device Type - Tipo de dispositivo de hardware tais como: servidores, controladores de armazenamento, caixas de expans˜ao,discos, routers e switchers de acordo com o definido na Tabela 4.3, Sec¸c˜ao4.2.1.1.

5.1.4.2 Fluxo de Tarefas (Workflows)

Uma altera¸c˜ao´econstitu´ıdapor um conjunto de tarefas, independentes ou dependentes entre si, realizadas por um ou mais intervenientes e que passa por v´ariosestados, desde a sua cria¸c˜ao at´e`asua resolu¸c˜ao.

Um conceito importante no RT, ´ea defini¸c˜aode transac¸c˜ao,que representa um conjunto de altera¸c˜oesefectuadas sobre um ticket. No contexto de uma transac¸c˜ao,(ou seja, quando um dado campo de um ticket ´ealterado), ´eposs´ıvel definir ac¸c˜oesexecutadas em resposta a dadas condi¸c˜oes(Scrips). No modelo adoptado, tira-se partido desta funcionalidade do RT para definir uma hierarquia de trabalho, e dependˆenciaentre tarefas. Desta forma, nos tickets na fila para gest˜aode altera¸c˜oesexistem campos que dizem respeito a um conjunto de actividades paralelas que necessitam de ser executadas visando o objectivo final.1. A execu¸c˜aodestas tarefas ´edesencadeada atrav´esde campos espec´ıficosdo ticket, que quando accionados geram tickets filhos, criando uma dependˆenciapara com o ticket original: o ticket pai n˜aopode ser resolvido sem que os tickets filhos sejam solucionados.

Na Figura 5.4 apresenta-se o template de um ticket no RT, onde constam campos referentes ao pedido de altera¸c˜ao,campos que descrevem o item de configura¸c˜aoe campos espec´ıficos que quando accionados levam `aexecu¸c˜aode um fluxo de trabalho previamente configurado. O template deste ticket, ´eainda apresentado no ApˆendiceE.

1Na figura que ilustra o ticket, os campos que representam as tarefas a serem efectuadas s˜ao:Configure DNS, Configure Nagios, Configure OS, Configure Amanda, Configure UPS, Configure Syslog 5.1. REQUEST TRACKER 57

Figura 5.4: Template de um Ticket no RT Configurado para Efectuar uma Altera¸c˜ao.

5.1.4.3 Ciclo de Vida de um Ticket

De seguida enumeram-se os pontos chave, do ciclo de vida de um ticket: 58 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

1. um pedido de altera¸c˜ao´eum ticket. O formul´arioinerente a um pedido de altera¸c˜ao´e implementado atrav´esdo preenchimento de um formul´ario web, com campos obrigat´orios ou autom´aticosde acordo com as escolhas do utilizador. Entre as mais importantes temos:

• a categoria de uma altera¸c˜ao´eobtida atrav´esda cria¸c˜aode dois campos denominados Change Category 1 e Change Category 2. • a caracteriza¸c˜aode um IC (e dos seus atributos) ´erealizada atrav´esda inser¸c˜aode campos em tickets agrupados numa fila. • a urgˆenciae a prioridade

2. rela¸c˜oesente tickets permitem definir hierarquia e dependˆenciade tarefas para realizar uma altera¸c˜ao.

3. o preenchimento de certos campos de um ticket despoletam ac¸c˜oes(Scrips) que podem ser a cria¸c˜aode tickets filhos e notifica¸c˜oesde utilizadores para a realiza¸c˜aode sub-tarefas.

As Figuras 5.1.4.3, 5.1.4.3 e 5.1.4.3 explicam como um ticket ´egerido durante o seu ciclo de vida quando na institui¸c˜aose pretende efectuar uma altera¸c˜aoque visa a instala¸c˜aode novo Hardware, ou seja, uma altera¸c˜aocuja categoria ´edo tipo AddHardware. 5.1. REQUEST TRACKER 59

Ticket Template in Queue Hardware Change Request FASE DO PROCESSO 1. Criação 2. Classificar e Avaliar RFC RfC RESPONSABILIDADE Owner Owner

INFORMAÇÃO MÍNIMA • Urgency A SER PREENCHIDA E • Starts (Automática) VALIDADA* • Priority (Automática) (De acordo com o processo • Subject proposto para o LIP) • Change Category Level 1 • Change Category Level 2 • Change Type = Add Hardware • Device Name STATUS New New WORKFLOW 1

CONDIÇES, ACÇÕES (Scrips)

Scrip33: Change Priority according to Urgency Quando o Owner do Ticket preenche o campo Urgency, é estabelecido a prioridade da Alteração (Priority)

Scrip34: Change Due Data according to Change Category Quando o Owner do Ticket preenche o campo Urgency, é estabelecido a data de início prevista para a alteração (Starts)

Figura 5.5: Ciclo de Vida um Ticket no RT - Parte 1 60 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

Ticket Template in Queue Hardware Change Request FASE DO PROCESSO 3. Autorizar a 4. Implementar Alteração RfC Alteração RESPONSABILIDADE Owner Executantes

INFORMAÇÃO A SER • Device Type • Completed PREENCHIDA E • HWManufacturer Configure DNS VALIDADA • HWProduct • Completed (De acordo com o • Part Number Configure OS processo proposto para o • Serial Number • Completed LIP) • Purchase Date Configure Nagios (Warranty) • Completed • Entry Date Configure Amanda • Ownership • Completed • Location Configure Syslog • Require Services: • Completed (DNS, OS, Nagios, Configure UPS Amanda, Syslog, UPS Configuration) (Após conclusão da tarefa) STATUS open open WORKFLOW (cont.)

Figura 5.6: Ciclo de Vida um Ticket no RT - Parte 2 5.1. REQUEST TRACKER 61

Ticket Template in Queue Hardware Change Request FASE DO PROCESSO 3. Testar a 4. Aceitar/Rejeitar a RfC Alteração Alteração RESPONSABILIDADE Owner Owner

INFORMAÇÃO MÍNIMA Nada a registar • Se alteração aceite, nada A SER PREENCHIDA E a registar VALIDADA • Comments (De acordo com o processo (Se alteração não aceite, proposto para o LIP) registar a razão) STATUS testing resolved, rejected WORKFLOW (cont.)

CONDIÇES E ACÇÕES Scrip 29: Write XML template Quando o owner, aceita a alteração, o estado do ticket é alterado para resolved. Nesta altura é efectuada uma acção que cria um ficheiro XML com a descrição do novo dispositivo de Hardware.

Figura 5.7: Ciclo de Vida um Ticket no RT - Parte 3

62 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

5.1.4.4 Inser¸c˜aodas Altera¸c˜oesna Gest˜aode Configura¸c˜oes

Um dos maiores desafios consistiu na defini¸c˜aode uma estrat´egiaque possibilite a interopera- bilidade entre o processo de GA e GC. As altera¸c˜oessobre determinado IC s˜aodisponibilizadas segundo um formato XML, gerado ap´osa resolu¸c˜aodo pedido de altera¸c˜ao.Com o fecho de um ticket, ´edespoletada uma ac¸c˜aoque visa disponibilizar o registo da altera¸c˜aonum servidor web `aferramenta de GC num formato bem determinado. No ApˆendiceB, apresenta-se a t´ıtulo de exemplo a estrutura do ficheiro XML, que ´egerado e onde consta a descri¸c˜aodo novo activo que deve ser inserido na base de dados, pelo processo de GC.

A ferramenta de GC ´ecapaz de aceder a esses conte´udos,valid´a-lose de forma autom´atica registar essa informa¸c˜aorelevante.

5.2 Zenoss

O Zenoss (Zenoss Core) [34] ´eum sistema para gest˜aode servidores e redes open source, ba- seado no servidor de aplica¸c˜oesZope (Zope [43] ´eum servidor, open source lan¸cadoem 1998, de aplica¸c˜oes web orientado a objectos e escrito em Python). Como ilustrado na Figura 5.8, atrav´esde um interface web, o Zenoss permite a gest˜aoe configura¸c˜aodo invent´ario(o Zenoss monitoriza toda a infra-estrutura de TI, incluindo a rede, os servidores, os sistemas de aque- cimento, ventila¸c˜ao,ar condicionado e at´emesmo aplica¸c˜oesde software), a monitoriza¸c˜aodo desempenho e da disponibilidade, e a gest˜aode eventos.

O desenvolvimento do Zenoss come¸couem 2002 e em Agosto de 2005 a empresa Zenoss, Inc foi fundada. Al´emda vers˜aoZenoss Core que ´egratuita, a empresa vende a vers˜aoZenoss Enterprise baseada na vers˜aoCore.

O Zenoss possibilita um invent´arioactualizado dos equipamentos, e simultaneamente deduzir o seu estado atrav´esda monitoriza¸c˜aodo seu desempenho e da sua disponibilidade. E´ portanto uma ferramenta adequada para a gest˜aode um CC complexo e em constante mudan¸ca.

5.2.1 Monitoriza¸c˜aoOrientada ao Modelo de Configura¸c˜ao

Como ilustrado na Figura 5.9, a monitoriza¸c˜aoorientada ao modelo, efectuado pelo Zenoss, inicia-se com a descoberta dos recursos existentes na infra-estrutura de TI (discover) [30], que preenche o modelo da Base de Dados (IT Configuration Database)2 (model). A este mo- delo constru´ıdo´eaplicado uma configura¸c˜aopr´e-definida(config) e a monitoriza¸c˜aocome¸ca (monitor). Esta configura¸c˜aoinicial pode contudo ser posteriormente afinada (tune).

2No modelo da base de dados constam os recursos descobertos, constitu´ıdospor um invent´ariocompleto dos servidores, redes e aplica¸c˜oesde software existentes, at´eao n´ıvel de detalhe dos interfaces, servi¸cos,processos, e software instalado existente. 5.2. ZENOSS 63

Figura 5.8: Vista de Alto N´ıvel do Zenoss [34].

Figura 5.9: Workflow: Monitoriza¸c˜aoOrientada ao Modelo de Configura¸c˜ao[34].

5.2.2 Principais Funcionalidades

As funcionalidades principais fornecidas pelo Zenoss (Core) s˜ao:

• Vis˜aoexacta e em tempo real dos dispositivos, das redes e das dependˆenciase rela¸c˜oes existentes na infra-estrutura de TI: 1. o Zenoss encontra e identifica os dispositivos e redes (de forma manual e autom´atica), e posteriormente constr´oium mapa da rede (ver Figura 5.10). 2. possibilita estabelecer rela¸c˜oesentre dispositivos e estabelecer liga¸c˜oesentre eles.

• Medir a disponibilidade de dispositivos de hardware (servidores, routers, etc.), e dos servi¸cospor eles providenciados (servi¸cosde mail, web, transferˆenciade arquivos).

• Possibilidade de medir o desempenho usando m´etodos como o SNMP, WMI, comandos de shell, e API. Ap´osefectuar a recolha dos dados, analisa-os de acordo com limites definidos pelo utilizador, e disponibiliza-os atrav´esde gr´aficos e relat´orios. 64 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

• Monitoriza¸c˜aoda gest˜aode eventos resultantes da ocorrˆenciade problemas provenientes dos dispositivos. Atrav´esde um mecanismo de notifica¸c˜oese escalonamento, as pessoas respons´aveis pela sua resolu¸c˜aoapercebem-se do estado desses mesmos problemas.

• Fornece relat´oriosresultantes do cruzamento de informa¸c˜aoentre objectos e com v´arios formatos e conte´udos.

Figura 5.10: Mapa de Rede. 5.2. ZENOSS 65

Figura 5.11: Arquitectura em Camadas do Zenoss.

5.2.3 Arquitectura

A Figura 5.11 ilustra a arquitectura do Zenoss [32], constitu´ıdapor quatro camadas:

1. Colec¸c˜ao- Collection Layer: compreende os servi¸cos que coleccionam os dados para a camada de dados. Estes servi¸coss˜aoprestados por daemons que executam fun¸c˜oes de gest˜aode modela¸c˜ao,monitoriza¸c˜aoe eventos.

2. Processamento - Processing Layer: camada respons´avel pela gest˜aodas comunica¸c˜oesentre a camada dos dados e a camada respons´avel por coleccionar os dados (Collection Layer).

3. Dados - Data Layer: A informa¸c˜aorelacionada com a configura¸c˜aoe colec¸c˜ao´eguardada nesta camada em 3 bases de dados separadas.

(a) ZenRRD - dados de desempenho dos sistema monitorizados. ZenRRD utiliza RRDTool, um sistema de base de dados round-robin criado por Tobias Oetiker sob a licen¸caGNU GPL. Foi desenvolvido para armazenar s´eriesde dados num´ericossobre o estado de redes de computadores, por´empode ser utilizado no armazenamento de qualquer outra s´eriede dados como temperatura, uso de CPU, etc. O RRD ´eum modo abreviado de se referir a Round Robin Database (base de dados round-robin). O RRDTool tamb´empode produzir gr´aficosque permitem ter uma ideia visual dos dados armazenados, os quais podem ser utilizados ou exibidos por outros sistemas. A ferramenta Cacti ´eum outro exemplo disso, para al´emdo Zenoss. (b) ZenModel - Constitui o modelo nuclear da configura¸c˜ao,constitu´ıda por dispositivos e pelas suas componentes, grupos e localiza¸c˜oes.Este modelo ser´aexplicado em detalhe na Sec¸c˜ao 5.2.4. (c) ZenEvents - Base de dados MySQL com os eventos gerados. 66 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

4. Utilizadores -User Layer: Esta camada ´eum portal web no qual o utilizador pode realizar as fun¸c˜oesdescritas na Sec¸c˜aoFuncionalidades.

5.2.4 Modelo

De seguida descreve-se o Modelo de Dom´ıniodo Zenoss (ver Figura 5.12), o qual permite carac- terizar o equipamento de hardware e tamb´emo software existente numa institui¸c˜ao/empresa.

Figura 5.12: Modelo de Dom´ıniodo Zenoss. 5.2. ZENOSS 67

1. Um dispositivo (device) ´eo objecto principal de monitoriza¸c˜aono sistema. E´ definido como uma combina¸c˜aode elementos de v´ariasclasses, entre as quais as de hardware e soft- ware. Exemplos de dispositivos s˜ao:servidores, routers, switchers. Todos os dispositivos tˆematributos pr´opriosque os caracterizam: Device Name, Serial Number, IP Address, Rack slot, Tag, Production State, Priority, Collector, Uptime, First Seen, Last Change, Model Time, Locking, Memory Swap, Comments

2. Tanto os elementos de hardware como de software s˜aotamb´emeles classes de produtos, com atributos pr´oprios.Desta forma um produto ´ecaracterizado pelos seguintes atributos: um tipo (Hardware ou Software), Name, Manufacturer Name, Description, Part Number.

3. A classe software tem como atributos: Name, Manufacturer Name, e Installation Date.

4. Todo o dispositivo do sistema pertence a uma Device Class, um tipo especial utilizado pelo zenoss para gerir como o sistema modela e monitoriza os dispositivos. Pertencendo a uma device class, um dispositivo herda propriedades comuns a essa classe.

5. Event Class permitem obter informa¸c˜aosobre o estado dos dispositivos. Esta informa¸c˜ao ´eposteriormente guardada na base de dados ZenEvents.

6. Process Class [31] permite a defini¸c˜aodos processos a monitorizar no sistema e a recolha da informa¸c˜aodo desempenho e disponibilidade dos processos monitorizados na base de dados ZenRRD

7. O Zenoss disponibiliza duas classes que permitem organizar os dispositivos da forma como o utilizador ache adequada `asua funcionalidade. Essas duas classes s˜aoa dos Grupos (Groups) e Sistemas (Systems)

8. Location class permitem indicar o local do dispositivo.

Efectuando um paralelismo entre o diagrama entidade rela¸c˜aoque ilustra um esquema de defini¸c˜aode IC na CMDB proposto por baron et al. [28], Sec¸c˜ao4.2.1 e o modelo de dom´ınio da CMDB do Zenoss podemos constatar que:

• um Configuration Item ´eum Device

• os atributos dos itens de configura¸c˜ao(CI Attribute, Attribute, Attribute Type) correspon- dem no Zenoss `asseguintes classes: Location, System, Group, hardware, OperatingSystem.

• As rela¸c˜oes entre IC (CI relationship) tamb´emexistem no Zenoss, pois ´eposs´ıvel estabe- lecer rela¸c˜oesentre devices.

Como se pode observar, o modelo oferecido pelo Zenoss permite ser adoptado para caracterizar um activo com os atributos previamente identificados e constantes definidos aquando da fase de Planeamento Sec¸c˜ao4.2.1. 68 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

5.2.5 Raz˜oesda Adop¸c˜aodo Zenoss

O Zenoss possibilita satisfazer os requisitos definidos pelo LIP, e constantes na Sec¸c˜ao3.3 e permite ser utilizado para manter os activos da institui¸c˜aoe ser integrado com o sistema da Gest˜aode Altera¸c˜oes.A parte relativa `aintegra¸c˜aoencontra-se descrita na Sec¸c˜aoabaixo. (Ver tamb´emSec¸c˜ao5.1.4.4)

5.2.6 O Zenoss como Gestor de Configura¸c˜oesno LIP

Larry Klosteboer [33] indica duas abordagens que podem ser utilizadas para introduzir os dis- positivos na CMDB: a primeira abordagem (waterfall) consiste em reunir o m´aximode dados poss´ıveis de todo o ambiente e depois integrar e ligar os dados, obtendo assim um sistema de GC completo. Esta ´euma abordagem mais directa e activa mas quase sempre resulta numa quantidade de dados muito elevada, o que torna a conclus˜aodesta tarefa demorada. A segunda abordagem (trickle) consiste em criar pontos de integra¸c˜aoem cada uma das ´areas-chave de processos operacionais que possam lidar com os dados de configura¸c˜ao.

Executando opera¸c˜oesnormais com estes pontos de integra¸c˜ao,os dados dos itens de con- figura¸c˜ao(IC) s˜aointroduzidos na CMDB na medida em que v˜aosendo alterados ou `amedida que v˜aocausando incidentes. Esta ´euma abordagem muito menos arriscado, mas que atrasa os benef´ıciosde ter uma imagem completa de gest˜aode configura¸c˜ao.De acordo com o modelo proposto para o processo de GC, a segunda abordagem de Larry Klosteboer foi adoptada: uma modifica¸c˜aode um dado IC ao abrigo do processo de GC surge sempre em resultado de um pedido de altera¸c˜aocertificado e aprovado, sendo posteriormente essa informa¸c˜ao(dados dos itens de configura¸c˜ao,IC e atributos) introduzida na base de dados do Zenoss.

5.2.7 Modelo de Actividades do Processo de GC e sua Concretiza¸c˜aono Zenoss

Identifica¸c˜ao,Especifica¸c˜aoe Controlo da Configura¸c˜ao

O Zenoss fornece um modelo de dom´ıniopara o reposit´oriode itens de configura¸c˜aobastante ajustado ao contexto deste trabalho. Apesar de ser poss´ıvel estender este modelo com a cria¸c˜ao inicial de novas classes de objectos, assume-se que essa necessidade surge naturalmente com o decorrer das actividades de Identifica¸c˜aoe Especifica¸c˜aode Configura¸c˜oes. Desta forma, cabe ao Gestor de Configura¸c˜oespercorrer todas as actividades propostas para o processo de GC, e avaliar de forma criteriosa que etapas devem ser levadas a cabo em cada actividade. Caso seja verificada a necessidade de estender o modelo de dom´ınio,o Zenoss proporciona m´etodos (Zenpacks) de estender as funcionalidades da ferramenta, nomeadamente a cria¸c˜aode novas classes de objectos e m´etodos de monitoriza¸c˜aodos mesmos. 5.2. ZENOSS 69

A actividade de Controlo da Verifica¸c˜aodeve apenas ser desencadeada pelo Gestor de Con- figura¸c˜oesdepois de se assegurar (percorrendo as outras actividades propostas) que n˜aoexistem incoerˆenciasentre a informa¸c˜aoque se pretende adicionar/modificar/remover e os conte´udosda CMDB.

A inser¸c˜aoda informa¸c˜aono Zenoss pode ser levada a cabo de trˆesformas:

1. atrav´esdo interface gr´afico

2. atrav´esdo interpretador interactivo executado na linha de comando, denominado Zendmd

3. atrav´esde uma API dedicada

De forma a automatizar o processo de inser¸c˜aode conte´udosno Zenoss, desenvolveu-se uma aplica¸c˜aoem python que recorre `asfuncionalidades disponibilizadas pela API do Zenoss. A aplica¸c˜ao´epresentemente capaz de inserir conte´udosXML (ver Sec¸c˜ao5.1.4.4) disponibilizada pelo RT via http. O Gestor de Configura¸c˜aopode, de forma simples e semi-autom´atica,executar a aplica¸c˜aona linha de comandos para iniciar liga¸c˜oes`abase de dados e inserir novos dispositivos. Como desenvolvimentos futuros pretende-se:

• estender a aplica¸c˜aopara a remo¸c˜aoe modifica¸c˜aode itens de configura¸c˜ao.

• estender a aplica¸c˜aopara a valida¸c˜aoautom´aticade conte´udos,dando uma vertente au- tom´atica`asactividades de Identifica¸c˜aoe Especifica¸c˜aode Configura¸c˜ao.

• a automatiza¸c˜aoda execu¸c˜aoda aplica¸c˜ao,(v´ariasvezes ao dia), alertando o Gestor de configura¸c˜aosempre que exista a ocorrˆenciade problemas

Auditoria

A pr´opriaferramenta Zenoss pode desencadear a actividade de Auditoria tendo em contas as capacidades de descobrir e monitorizar dispositivos.

O Zenoss possibilita v´ariasformas de descobrir/introduzir dispositivos e as suas compo- nentes. O m´etodo mais simples ´emanualmente (manual discovery), atrav´esdo interface do utilizador, e a´ıo Gestor de Configura¸c˜oespode especificar os v´ariosatributos do dispositivo. Esta solu¸c˜aocontudo quando se pretende introduzir um n´umeroelevado de dispositivos n˜ao´e a mais adequada. Uma outra forma de descoberta poss´ıvel a utilizar, ´eindicar uma rede, e o Zenoss consegue descobrir todos os dispositivos existentes nessa rede. 70 CAP´ITULO 5. CONCRETIZAC¸ AO˜ DA SOLUC¸ AO˜

Figura 5.13: Gr´aficosde Desempenho Disponibilizados pelo Zenoss.

No Zenoss existe o conceito de evento, e que representa uma manifesta¸c˜aode uma ocorrˆencia importante no sistema. Os eventos podem ser gerados internamente (ex: quando um limite es- tabelecido ´eultrapassado) durante o processo de descoberta e monitoriza¸c˜ao,ou externamente, (atrav´esde mensagens no syslog ou de armadilhas SNMP) capturadas por deamons especializa- dos do Zenoss.

Aos eventos podem associar-se regras dedicadas que controlam como os eventos s˜aomani- pulados assim que entram no sistema. Entre as regras e ac¸c˜oesposs´ıveis de configurar, temos as regras de alerta que permitem enviar emails ao administrador de sistema ou mesmo iniciar a execu¸c˜aode scrips pr´e-configuradasque minimizam o impacto de uma alerta.

Ap´oso processamento dos eventos (cujo historial ´emantido separadamente numa base de dados MySQL), s˜aoapresentados sob a forma de uma consola de eventos na interface web. Os v´ariosestados poss´ıveis para um evento s˜ao: Critical, Error, Warning, Info, Debug e Clear. Cap´ıtulo6

Avalia¸c˜ao

Neste cap´ıtulos˜aodiscutidos os resultados atingidos avaliando-se se as quest˜oesde investiga¸c˜ao colocadas na Sec¸c˜ao1.2 se encontram respondidas.

Quest˜ao1: Como desenhar o processo de GA para permitir, de uma forma comum e coerente, gerir as altera¸c˜oesna infra-estrutura f´ısica,de rede e de servi¸cos do CC?

Foi proposto um processo de GA, de acordo com a framework ITIL, tendo-se estabelecido quais as suas principais actividades, quais os respons´aveis pela sua execu¸c˜aoe quais os crit´erios de categoriza¸c˜ao.Foram identificadas as principais funcionalidades de um sistema de GA que im- plementa o processo proposto, e que esteja alinhado com as pr´aticascomuns e com os principais procedimentos da institui¸c˜aoonde se insere.

Para poder desenhar o sistema de GA foi necess´arioo conhecimento da institui¸c˜aoLIP: saber o contexto no qual se enquadra e como s˜aoefectuados os principais procedimentos no seu CC.

Quest˜ao2: Como desenhar o processo de Gest˜aode Configura¸c˜oese a CMDB, para que as informa¸c˜oessobre a infra-estrutura, assim como as rela¸c˜oesentre os seus diversos itens, sejam conhecidas, estejam globalmente acess´ıveis e num estado actualizado?

Foi proposto um sistema de GC, definidas as principais actividades, quais os seus interveni- entes e principais responsabilidades. Foram identificados os activos da institui¸c˜aoque ter˜aoque ser mantidos na CMDB, e qual o fluxo de implementa¸c˜aoda CMDB.

Quest˜ao3: Que ferramentas podem ser utilizadas e de que forma podem ser adaptadas para concretizarem os processos de Gest˜aode Altera¸c˜oese de Gest˜aode Configura¸c˜oes?

O sistema de GA foi concretizado atrav´esda ferramenta RT. A sua grande capacidade de

71 72 CAP´ITULO 6. AVALIAC¸ AO˜

ajuste a ambientes heterog´eneos, a sua flexibilidade na configura¸c˜aode workflows, e a sua facili- dade de configura¸c˜aopermitiu a implementa¸c˜aodo processo de GA alinhado com a framework ITIL. Ap´osa devida configura¸c˜ao,as funcionalidades da ferramenta permitem satisfazer os re- quisitos os requisitos apresentados na Sec¸c˜ao3.3, e comparados na Tabela 6.1.

Requisito Caracter´ısticasdo RT

1. Sistema desenvolvido utilizando * open-source, licen¸caGNU Neg´ocio ferramentas open-source GPL

2. Fluxo de informa¸c˜aobaseado num *Notifica¸c˜oesvia: email, sms sistema de notifica¸c˜oesentre os scrips v´ariosintervenientes

N˜aoFuncionais 1. Restri¸c˜aoe acesso Controlado *Sistema multiutilizador com mecanismo de autentica¸c˜ao Funcionais 1. Planeamento de interven¸c˜oessobre *Permite adaptar o workflow componentes inform´aticos(adi¸c˜ao, `aspreferˆenciasdo utilizador substitui¸c˜aoe remo¸c˜ao) *Permite criar rela¸c˜oesde dependˆenciasentre tarefas

2. Registo de ac¸c˜oesefectuadas sobre *Capacidade de rastrear o componentes inform´aticosincluindo hist´orico,Gest˜aode interven¸c˜oesde manuten¸c˜ao dependˆencias

3. Efectuar procuras sobre as ac¸c˜oes *TicketSQL Query Language efectuadas sobre determinado componente

4. Elaborar relat´oriose estat´ısticas *Dashboards, que possibilitem obter m´etricaspara *Extens˜aoRTX::Statistics os v´arioscomponentes inform´aticosda *Gr´aficos: on demand institui¸c˜ao

Tabela 6.1: As Caracter´ısticasdo RT Permitem Satisfazer os Requisitos de Neg´ocio,Funcionais e N˜aoFuncionais estabelecidos. 73

O Sistema de GC foi concretizado utilizando a ferramenta Zenoss. O seu modelo revelou-se adequado ao contexto a implementar na institui¸c˜ao,e as suas funcionalidades de monitoriza¸c˜ao e auditoria revelaram-se uma mais valia na implementa¸c˜aodo processo de GC. A compara¸c˜ao das caracter´ısticasdo Zenoss com os requisitos propostos encontra-se explicada na Tabela 6.2. 74 CAP´ITULO 6. AVALIAC¸ AO˜

Requisito Caracter´ısticasdo Zenoss

1. Sistema desenvolvido utilizando * Vers˜aoZenoss Core gratuita Neg´ocio ferramentas open-source

2. Fluxo de informa¸c˜aobaseado num * Existˆenciade regras de sistema de notifica¸c˜oesentre os notifica¸c˜ao(notifica¸c˜ao v´ariosintervenientes por email e sms) que podem ser definidas na ocorrˆencia de eventos definidos

N˜aoFuncionais 1. Autentica¸c˜aovia login/password * Sistema multiutilizador com mecanismo de autentica¸c˜ao

2. Administrador com permiss˜oespara * Manager: det´emtodos os criar, apagar e manipular informa¸c˜aoem privil´egios, ZenUser: todos os m´odulos do sistema permiss˜oesde visualiza¸c˜ao da informa¸c˜ao

Funcionais 3. Registo de ac¸c˜oesefectuadas sobre * Rastrear altera¸c˜oesfeitas componentes inform´aticos aos eventos, Controle de altera¸c˜oesfeitas `a monitoriza¸c˜aodos servi¸cos

4. Registo de ac¸c˜oesrealizadas pelos * Multiutilizador, Capacidade utilizadores e pelo administrador de rastrear o hist´oricodas do sistema altera¸c˜oes

5. Efectuar procuras sobre as ac¸c˜oes * Procuras por dispositivo, efectuadas sobre determinado (nome, endere¸coIP) componente

6. Elaborar relat´oriose estat´ısticas * Relat´orios:do invent´arioglobal, que possibilitem obter m´etricaspara do hist´oricocom as altera¸c˜oes os v´arioscomponentes inform´aticosda na rede, com os detalhes dos institui¸c˜ao dispositivos, dos problemas e da disponibilidade da rede existˆenciade gr´aficosque avaliam desempenho dos dispositivos (CPU, Free Memory)

7. Invent´arioactualizado do equipamento * Possui base de dados com um de hardware existente no LIP modelo do invent´arioe detalhes de configura¸c˜ao,capacidade de descoberta autom´aticade dispositivos

Tabela 6.2: As Caracter´ısticasdo Zenoss Permitem Satisfazer os Requisitos de Neg´ocio,Funci- onais e N˜aoFuncionais estabelecidos 75

Como os activos presentes na CMDB s˜aoprovenientes de altera¸c˜oesrelativas `ainfra- estrutura de Hardware, ´enecess´ariauma integra¸c˜aoestes dois processos. Para atingir este objectivo ´edescrita um forma autom´aticada introdu¸c˜aode altera¸c˜oesprovenientes do RT na CMDB do Zenoss. 76 CAP´ITULO 6. AVALIAC¸ AO˜ Cap´ıtulo7

Conclus˜ao

Neste cap´ıtulos˜aoapresentadas as conclus˜oese discutidas algumas possibilidades de desenvol- vimento.

Esta tese teve como objectivo o estudo de um sistema que vise a optimiza¸c˜aoda opera¸c˜ao e da gest˜aode um centro de c´alculode um instituto de F´ısicaExperimental de Altas Energias (LIP) cuja principal actividade ´eo fornecimento de servi¸cosde computa¸c˜aoe armazenamento a utilizadores locais, e a investigadores remotos integrados em infra-estruturas de computa¸c˜ao distribu´ıdas. A proposta incidiu sobre a implementa¸c˜aodos processos de Gest˜aode Altera¸c˜oes e de Gest˜aode Configura¸c˜oes,de acordo com a framework ITIL, considerados priorit´ariospara efectuar o suporte di´ario`asopera¸c˜oesda infra-estrutura.

Uma das fases mais importantes deste estudo consistiu em identificar os requisitos, e em avaliar os mecanismos ”ad-hoc”executados pelos v´ariosmembros do centro de c´alculo,atrav´es de uma s´eriede entrevistas e avalia¸c˜oes,e integr´a-los num procedimento global que minimize poss´ıveis interrup¸c˜oescom as actividades presentemente levadas a cabo.

O modelo para o processo de Gest˜aode Altera¸c˜oesdesenvolvido consistiu em identificar um modelo e um fluxo de actividades adequado, em identificar os pap´eisdos v´ariosinterlocutores e os diferentes casos de uso, em estabelecer os estados das altera¸c˜oes,e em estabelecer crit´erios para a categoriza¸c˜aoe avalia¸c˜aodas altera¸c˜oes.Tendo em conta os requisitos disponibilizados, a concretiza¸c˜aoda solu¸c˜aofoi desenvolvida sobre uma ferramenta denominada de Request Tracker, cujas funcionalidades e fluxos foram ajustados de acordo com o modelo aqui proposto.

O modelo para o processo de Gest˜aode Configura¸c˜oesconsistiu na identifica¸c˜aodas prin- cipais actividades, dos interlocutores, dos casos de uso e dos itens de configura¸c˜ao(hardware) a serem guardados, tendo em vista a minimiza¸c˜aoda existˆenciade informa¸c˜aoinconsistente ou incoerente. A introdu¸c˜aodos activos na CMDB ´eum passo importante do processo de GC. Sa- bendo que obter uma lista dos activos da institui¸c˜aoe das suas rela¸c˜oesentre si, seria uma tarefa dif´ıcilde concretizar e bastante demorada, devido `aenorme quantidade de activos existentes e

77 78 CAP´ITULO 7. CONCLUSAO˜

ao facto de estes estarem sob a responsabilidade de diferentes pessoas, optou-se pela abordagem definida por Larry Klosteboer que sugere que devem ser criados pontos de integra¸c˜aoem cada uma das ´areas-chave dos processos operacionais que possam lidar com os dados de configura¸c˜ao. Desta forma, em vez de se popular a CMDB com todos os activos de uma s´ovez, o que ori- gina quase sempre uma CMDB desactualizada, optou-se por ir alterando a CMDB `amedida que os activos v˜aosofrendo revis˜oes. E´ poss´ıvel, assim, manter uma CMDB permanentemente actualizada. A ferramenta Zenoss foi a seleccionada para a concretiza¸c˜aodo modelo dado a sua flexibilidade, extensibilidade e as suas propriedades de monitoriza¸c˜ao,muito adequadas `a actividade de auditoria.

A vantagens da implementa¸c˜aodestes dois processos no LIP s˜ao´obvias:

• O processo de GA possibilita determinar se uma dada altera¸c˜ao´eexequ´ıvel e o seu impacto, e estabelecer que o fluxo de tarefas realizado por v´ariosintervenientes seja efectuado de forma mais c´elere,possibilitando tamb´em,a cada interveniente no fluxo de trabalho, saber qual o progresso da tarefa e os passos definidos para a sua execu¸c˜ao.

• O processo de GC possibilita que, aquando da ocorrˆenciade uma altera¸c˜ao,se consiga saber de forma correcta e actualizada quais os recursos existentes na institui¸c˜ao.

A adop¸c˜aodas ferramentas (Request Tracker e Zenoss) revelou-se uma boa escolha, pois para al´emde conseguirem implementar os processos definidos, permitem ir mais longe: o RT permite a implementa¸c˜aodo processo de Gest˜aode Incidentes, e o Zenoss permite monitorizar os activos constantes na sua CMDB, isto ´e,monitorizar a infra-estrutura de rede e hardware do CC da institui¸c˜ao.

A implementa¸c˜aodos processos de GA e GC ´eum trabalho dif´ıcile longe de estar completo em qualquer institui¸c˜ao. A continua¸c˜aodeste trabalho contemplar´ao aumento do ˆambito do tipo de altera¸c˜oespermitidas, de forma a tornar o processo mais geral e abrangente a todo o tipo de altera¸c˜oescom impacto na institui¸c˜ao. A discuss˜aodeste t´opicoseguir-se-´ana sec¸c˜ao seguinte.

7.1 Trabalho a Desenvolver

Relativamente ao processo de GA, ´enecess´arioaumentar o seu ˆambito de forma a permitir ou- tros tipos de altera¸c˜oes, para alem daquelas j´acontempladas e que dizem respeito a altera¸c˜oes na infra-estrutura de hardware. Por exemplo ´enecess´ariogerir as altera¸c˜oesrelativas ao soft- ware existente. Esta generaliza¸c˜aopoder´alevar ao alargamento dos workflows j´aexistentes, ou `aposs´ıvel defini¸c˜aode novos workflows, o que poder´aresultar numa reestrutura¸c˜aodas confi- gura¸c˜oesimplementadas ao n´ıvel do RT. 7.1. TRABALHO A DESENVOLVER 79

Novas altera¸c˜oesimplicam a caracteriza¸c˜aode novos itens de configura¸c˜ao,com novos atri- butos que poder˜aon˜aoestar contemplados na CMDB do Zenoss. Desta forma, ´etamb´emne- cess´ariocontemplar a necessidade de expandir o Zenoss, e explorar as potencialidades oferecidas atrav´esdo seu m´odulode Zenpacks de forma a implementar novas funcionalidades e permitir a monitoriza¸c˜aode novos tipos de dispositivos.

O mecanismo de integra¸c˜aodos processos de GA e GC deve ser fortificado com o desen- volvimento da aplica¸c˜aode integra¸c˜aode forma a que algumas das actividades possam ser desenvolvidas de forma autom´atica,isto ´e,sem interven¸c˜aohumana.

Finalmente, o processo de Gest˜aode Configura¸c˜oesd´amuitas vezes origem a incidentes que geram novas altera¸c˜oes. Desta forma, um patamar que ainda falta implementar ´eum modelo de Gest˜aode incidentes que feche o ciclo estabelecido pelos modelos implementados. 80 CAP´ITULO 7. CONCLUSAO˜ Bibliografia

[1] Judith M. Myerson. Cloud Computing Versus Grid Computing. Service Types, Similarities and Differences, and Things to Consider, 3 March 2009,

[2] Foster Ian, Kesselman Carl. The Grid2: Blueprint for a New Computing Infrastructure. Elsevier Inc, 2004

[3] Chappell David. A Short Introduction to Cloud Platforms: An Enterprise-Oriented View. Chappell and Associates. 2008.

[4] Office of Government Commerce. Itil Service Support. The Stationery Office. 2000.

[5] Office of Government Commerce. Itil Service Delivery. The Stationery Office. 2000.

[6] Office of Government Commerce. Planning To Implement Service Management. The Statio- nery Office. 2000.

[7] Office of Government Commerce. Application Management. The Stationery Office. 2000.

[8] Office of Government Commerce. ICT Infrastructure Management. The Stationery Office. 2000.

[9] Office of Government Commerce. Security Management. The Stationery Office. 2000.

[10] Baskerville, Richard L. 1999. Investigating Information Systems with Action Research. Commun. AIS, 2, 4.

[11] Office of Government Commerce. Best Practice for Service Support, Managing IT Services. The Stationary Office. 2000

[12] Jane Curry. Open Source Management Options. White Paper, Skills 1st Ltd. September 30th, 2008.

[13] Scott Stone. Monitoring Systems Comparison White Paper. The Forbin Group. June 14, 2007.

[14] Will Capelli. Magic Quadrant for Application Performance Monitoring White Paper. Gart- ner RAS Core Research Note, G00173116. 18 February 2010. RA2 02222 011.

81 82 BIBLIOGRAFIA

[15] David Williams, Debra Curtis. Magic Quadrant for IT Event Correlation and Analy- sis White Paper. Gartner RAS Core Research Note, G00208774. 13 December 2010. RV3 A412152011.

[16] Long John: ITIL Version 3 at a Glance. Springer.

[17] COBIT student Book. IT Governance institute.

[18] Framework, Management Guidelines, Information Systems: Audit, Control Foundation and Objectives. COBIT Steering Committee and the IT Governance Institute. IT Governance Institute . COBIT R , 2000, E.U.A.

[19] Mary Beth Chrissis, Mike Konrad, Sandra Shrum. CMMI for Development: Guidelines for Process Integration and Product Improvement (3rd Edition). Addison-Wesley Professional, 20 March 2011

[20] ITIL course. Electronic Data Systems. 2004.

[21] ITIL Configuration Management Requirement Analysis and Prototype Implementation the- sis. Jurgen Langthaler. Universidade de Tecnologia de Viena 2007

[22] Greiner, Lynn. ITIL: The International Repository of IT Wisdom. netWorker, 11(4), 9-11. 2007.

[23] Van Bon. Foundations of IT Service Management based on ITIL V3. Zaltbommel: Van Haren Publishing. January 2007

[24] Mattila, Antti. Best Practices for Network Infrastructure Management - a Case Study of Information Technology Infrastructure Library (ITIL). M.Phil. thesis. Helsinki University of Technology. 2008.

[25] Spremic, M., Zmirak, Z., Kraljevic, K. IT and Business Process Performance Management: Case Study of ITIL Implementation in Finance Service Industry. Pages 243-250 of: 30th International Conference on Information Technology Interfaces. June 2008.

[26] ITIL: Microsoft and Open Source, White Paper. Microsoft Corporation, October 26, 2007.

[27] Filipe Crespo Martins. Implementing ITIL Change Management thesis. Instituto Superior T´ecnico,Universidade T´ecnicade Lisboa. 2010

[28] Anthony L.A.Baron, Woodinville, WA (US); Nigel G. Cain, Redmond, WA, (US). CMDB SCHEMA. United States Patent Application Publication. Pub. No.:US 2006/0004875 A1. Pub. Date: Jan.5, 2006.

[29] Jesse Vincent, Robert Spier, Dave Rolsky, Darren Chamberlain, Richard Foley. RT Essen- cials. O‘REILLY, 2005 BIBLIOGRAFIA 83

[30] Jane Curry. Zenoss Discovery and Classification White Paper. Skill 1st Ltd. February 2009

[31] Methods of monitoring processes with Zenoss White Paper, Jane Curry. Skill 1st Ltd. February 2009

[32] Zenoss Enterprise Architecture Overview, White Paper. Copyright 2010 Zenoss, Inc.

[33] Klosterboer, Larry. Implementing ITIL Configuration Management. IBM Press, 2008

[34] Zenoss Developer’s Guide Version 3.0. Zenoss, Inc.

[35] http://www.gnu.org/copyleft/gpl.html, 2011

[36] http://www.lighttpd.net, 2011

[37] http://perl.apache.org/start/index.html, 2011

[38] http://www.fastcgi.com/devkit/doc/fcgi-spec.html, 2011

[39] http://requesttracker.wikia.com/wiki/CustomizingWithCallbacks, 2011

[40] http://www.gridcomputing.pt, 2011

[41] http://www.egi.eu, 2011

[42] http://www.masonhq.com, 2011

[43] www.zope.org, 2011 84 BIBLIOGRAFIA ApˆendiceA

Simbologia Utilizada nos Diagramas do Processo da Gest˜aode Configura¸c˜oes

85 86APENDICEˆ A. SIMBOLOGIA UTILIZADA NOS DIAGRAMAS DO PROCESSO DA GESTAO˜ DE CONFIGURAC¸ OES˜

Forma de decis˜aoque indica um ponto de ramifica¸c˜ao(Sim ou N˜ao)no fluxo do processo, por exemplo, informa¸c˜ao proveniente do cliente est´acorrecta?

Forma que indica que o processo continua num diagrama diferente; o n´umeroindica a etapa do processo. Por exem- plo, o processo continua num diagrama diferente na etapa 2.1

Forma que indica uma sequˆenciade ac¸c˜oesque executam tarefas espec´ıficasembutidas dentro de um fluxo do pro- cesso externo, por exemplo, Gest˜aode Altera¸c˜oes.

Identifica bases de dados utilizadas nos fluxos de processo, por exemplo a CMDB.

Actividade a realizar no fluxo do processo, por exemplo, criar uma nova instˆancia na CMDB

Forma que indica fase inicial ou final do fluxo do processo. Por exemplo, Iniciar uma auditoria.

Forma que ilustra a sequˆenciade passos e a direc¸c˜aodo fluxo do processo. ApˆendiceB

Descri¸c˜aodos Principais Casos de Uso do Sistema de Gest˜aode Altera¸c˜oes

1. Criar RfC - Cen´arioPrincipal

• Pr´e-condi¸c˜oes:Coordenador registado e activado no sistema de GA • Cen´ario: (a) Preenchimento de campos personalizados obrigat´orios (b) Avalia¸c˜aodo estado do RfC (c) Categorizar o RfC • P´os-condi¸c˜oes: O RfC fica no estado new (em espera).

2. Criar RfC - Cen´arioAlternativo

• Pr´e-condi¸c˜oes:Coordenador registado e activado no sistema de GA • Cen´ario: (a) Preenchimento de campos personalizados obrigat´orios (b) Avalia¸c˜aodo estado do RfC (c) Categorizar o RfC • P´os-condi¸c˜oes: N˜aoprocessar o RfC. Altera¸c˜aodo estado do RfC para Rejected. • Outra informa¸c˜ao:O coordenador reavalia o RfC que foi criado e decide n˜aoprosse- guir com a sua implementa¸c˜ao,guardando-se a informa¸c˜aoda raz˜aodesta decis˜ao.

3. Processar RfC - Cen´arioPrincipal

• Pr´e-condi¸c˜oes:

87 88APENDICEˆ B. DESCRIC¸ AO˜ DOS PRINCIPAIS CASOS DE USO DO SISTEMA DE GESTAO˜ DE ALTERAC¸ OES˜

– Coordenador registado e activado no sistema de GA – Existe RfC no estado new • Cen´ario: (a) Requisita servi¸cosespec´ıficos,preenchendo campos personalizados definidos (b) Altera¸c˜aodo estado do RfC para open (c) Notifica¸c˜aoautom´aticadas pessoas respons´aveis pela execu¸c˜aode tarefas • P´os-condi¸c˜oes:Novos RfC gerados, dependentes do RfC original, que detalha a tarefa a ser implementada pelo executante

4. Fechar RfC - Cen´arioPrincipal

• Pr´e-condi¸c˜oes: – Coordenador devidamente registado e identificado no sistema – Existˆenciade todos os RfC filhos no estado resolved • Cen´ario:Coordenador avalia as altera¸c˜oese decide que a altera¸c˜aoentra em produ¸c˜ao, encerrando o RfC. • P´os-condi¸c˜oes:RfC resolved

5. Fechar RfC - Cen´arioAlternativo

• Pr´e-condi¸c˜oes: – Coordenador devidamente registado e identificado no sistema – Existˆenciade todos os RfC filhos no estado resolved • Cen´ario: (a) Coordenador avalia as altera¸c˜oesefectuadas pelos executantes (b) O coordenador decide n˜aoaceitar as altera¸c˜oes,e indica a raz˜aopela qual a altera¸c˜aon˜aose ir´aefectuar. • P´os-condi¸c˜oes:RfC n˜aoexecutado e altera¸c˜aodo estado para rejected.

6. Consultar informa¸c˜ao- Cen´arioPrincipal

• Pr´e-condi¸c˜oes: – Executante devidamente identificado e registado no sistema – Existˆenciade um novo RfC (RfC filho) derivado do RfC original que indica ao executante qual a sua tarefa e qual o estado do RfC original • Cen´ario:Visualiza qual a tarefa a desempenhar e o tempo que disp˜oe • P´os-condi¸c˜oes:Informa¸c˜aoconsultada

7. Processar tarefas - Cen´arioPrincipal 89

• Pr´e-condi¸c˜oes: – Executante devidamente identificado e registado no sistema – Existˆenciade um novo RfC (RfC filho) derivado do RfC original que indica ao executante qual a sua tarefa e qual o estado do RfC original • Cen´ario: – Implementa as tarefas solicitadas – Notifica o Coordenador que a tarefa est´aconclu´ıda • P´os-condi¸c˜oes:Tarefa conclu´ıdae RfC filho no estado resolved

8. Processar tarefas - Cen´arioAlternativo

• Pr´e-condi¸c˜oes: – Executante devidamente identificado e registado no sistema – Existˆenciade um novo RfC (RfC filho) derivado do RfC original que indica ao executante qual a sua tarefa e qual o estado do RfC original • Cen´ario: – N˜aoImplementa as tarefas solicitadas – Notifica o Coordenador que a tarefa n˜aoest´aconclu´ıda • P´os-condi¸c˜oes:RfC filho n˜aofechado 90APENDICEˆ B. DESCRIC¸ AO˜ DOS PRINCIPAIS CASOS DE USO DO SISTEMA DE GESTAO˜ DE ALTERAC¸ OES˜

Figura B.1: Casos de Uso do Sistema de Gest˜aode Altera¸c˜oes ApˆendiceC

Descri¸c˜aodos Principais Casos de Uso do Sistema de Gest˜aode Configura¸c˜oes

1. Definir Modelo da CMDB - Cen´ario Principal

• Cen´ario: (a) Definir IC e atributos (b) Definir Modelo da CMDB (c) Definir fluxo de implementa¸c˜aoda CMDB • P´os-condi¸c˜ao:Modelo da CMDB

2. Alterar estrutura da CMDB - Cen´arioPrincipal

• Pr´e-condi¸c˜ao:Sistema de GA emite um RfC. • Cen´ario: O RfC implica a necessidade de alterar a estrutura da CMDB pois ´ene- cess´arioadicionar IC ou atributos n˜aocontemplados at´eao momento ou remover IC ou atributos que se tornaram obsoletos. • P´os-condi¸c˜oes:Modelo da CMDB alterado.

3. Alterar Conte´udosda CMDB - Cen´arioPrincipal

• Pr´e-condi¸c˜oes:Sistema de GA emite um RfC. • Cen´ario:O RfC implica a necessidade de alterar conte´udosna CMDB. • P´os-condi¸c˜oes:Modelo da CMDB actualizado.

4. Realizar Auditoria `aCMDB - Cen´arioPrincipal

91 92APENDICEˆ C. DESCRIC¸ AO˜ DOS PRINCIPAIS CASOS DE USO DO SISTEMA DE GESTAO˜ DE CONFIGURAC¸ OES˜

• Cen´ario:O Gestor de Configura¸c˜aoexecuta a auditoria, fazendo um rastreio dos IC, seja manualmente seja usando uma ferramenta, avaliando se encontra diferen¸casentre os activos registados na CMDB e os activos da institui¸c˜ao. • P´os-condi¸c˜oes:Caso n˜aoexistem diferen¸cas,a auditoria termina

5. Realizar Auditoria `aCMDB - Cen´arioAlternativo

• Cen´ario:O Gestor de Configura¸c˜aoexecuta a auditoria, fazendo um rastreio dos IC, seja manualmente seja usando uma ferramenta, avaliando se encontra diferen¸casentre os activos registados na CMDB e os activos da institui¸c˜ao. • P´os-condi¸c˜oes:Existem diferen¸casentre os activos da institui¸c˜aoe os activos regis- tados na CMDB, sendo emitido um RfC para resolver esta diferen¸ca.

Figura C.1: Casos de Uso do Sistema de Gest˜aode Configura¸c˜oes ApˆendiceD

Modelo L´ogicodo Request Tracker

Na figura D est´arepresentado o modelo de dom´ıniodo RT. As principais tabelas e entidades encontram-se descritas a seguir:

• Users A tabela Users ´erespons´avel por guardar a informa¸c˜aorelativa aos utilizadores do RT, ou seja, quem realiza ac¸c˜oesno sistema.

• Groups A tabela Groups ´econstitu´ıdapor utilizadores e grupos aos quais podem ser concedidos direitos, nomeadamente o direito de visualiza¸c˜aode tickets, entre outros. Grupos podem conter utilizadores e grupos, mas n˜aose podem conter a si pr´oprios.

• Access Control List (ACL) Tabela que permite estabelecer diferentes tipos de permiss˜aoentre as v´ariasentidades existentes no RT (tickets, queues, groups, users).

• Transactions Tudo o que acontece a uma ticket ´eregistado nesta tabela, desde a sua cria¸c˜aoate `asua eventual resolu¸c˜ao.

• CustomFields Atrav´esdos CustomFields ´eposs´ıvel que tickets e queues possuam meta-dados, confi- gur´aveis pelos utilizadores. Existem v´ariostipos tipos de CustomFields no RT,1 e cada um deles pode aceitar um valor ´unicoou m´ultiplos valores.

1Tipos de CustomFields existentes no RT: Fill in wikitext area, Upload one image, Upload multiple images, Upload one file, Upload multiple files, Fill in one text area, Enter one value, Enter multiple values, Select or enter one box, Select one value, Select multiple values, Enter one value with autocompletition, Enter multiple values with autocompletition

93 94 APENDICEˆ D. MODELO LOGICO´ DO REQUEST TRACKER

• Tickets O RT ´eum sistema de Ticketing, sendo um dos seus principais objectos o Ticket. Tickets s˜aoagrupados em queues, e s´opodem pertencer a uma ´unica Queue. Tˆemos seguin- tes atributos: ID, Queue, Owner, Subject, Priority, Time, Status, Told, Started, Due, Resolved.

• Queues Uma Queue ´ea unidade b´asicaadministrativa do RT. Cada ticket ´ecategorizado e per- tence a uma queue. Controlo de acessos, l´ogicade neg´ocio(Scrips, Templates, Actions), notifica¸c˜oese campos personalizados s˜aoconfigurados nas queues, podendo depois ser apli- cados a tickets. Quando os tickets s˜aosubmetidos ao Request Tracker, s˜aoenviados para queues a fim de serem processados, constituindo uma forma de categorizar tickets por ´areasfuncionais.

• Scrips Scrips s˜aoo principal instrumento para configurar o comportamento, implementar work- flows e estender a l´ogicade neg´ociono RT. Cada scrip ´eum conjunto de Condi¸c˜ao,Ac¸c˜ao, Template e Stage. Se uma dada Condi¸c˜aose verifica, ent˜aoo RT prepara a Ac¸c˜aopara ser executada. Trata-se de um mecanismo muito geral e flex´ıvel que pode ser criado via o interface do RT ou ent˜aocriando m´odulos Perl para cada condi¸c˜aoe ac¸c˜aoa realizar. Os scrips podem ser aplicados a todas as filas a ou filas espec´ıficas.

• Templates Trata-se de texto ´eanexado a um scrip, quando uma dada ac¸c˜ao´eexecutada. ApˆendiceE

Request Tracker Ticket Template

95 96 APENDICEˆ E. REQUEST TRACKER TICKET TEMPLATE ApˆendiceF

Scrips Configurados no Request Tracker

97 98 APENDICEˆ F. SCRIPS CONFIGURADOS NO REQUEST TRACKER ApˆendiceG

Estrutura do Ficheiro XML Gerado pelo Processo de Gest˜aode Altera¸c˜oes

99