parte i – introdução a autonomic computing seminários 2007 – 2º semestre maíra gatti

29
Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

Upload: internet

Post on 17-Apr-2015

107 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

Parte I – Introdução a Autonomic Computing

Seminários 2007 – 2º Semestre

Maíra Gatti

Page 2: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

2© LES/PUC-Rio

Agenda

• Introdução

• Inspiração Biológica – Sistema Nervoso Humano

• Definição de Autonomic Computing (AC)

• Quatro Aspectos Fundamentais

• Elementos Fundamentais

• Arquitetura de AC

• Estado da Arte de AC

• Bibliografia

Page 3: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

3© LES/PUC-Rio

Introdução

• Explosão de serviços e aplicações sofisticadas

– Complexidade

– Heterogeneidade

– Dinamicidade

• Aplicações, ambientes de programação e infra-estruturas

– Frágeis, não gerenciáveis, não confiáveis

Page 4: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

4© LES/PUC-Rio

Introdução

• Solução: Autonomic Computing

Kephart, 2003

Page 5: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

5© LES/PUC-Rio

Introdução

• Origem:

– termo introduzido por Paul Horn em março de 2001 perante a Academia Nacional de Engenheiros da Universidade de Harvard

– Paul Horn era vice presidente de pesquisa de IBM.

• Objetivo:

– liberar os administradores de sistemas dos detalhes de operação e manutenção e prover aos usuários uma máquina que trabalhasse em desempenho 24/7.

– Investimento da IBM: U$2 bilhões

Page 6: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

6© LES/PUC-Rio

Introdução

• Tema recente de pesquisa que define sistemas que gerenciam a si próprios de acordo com os objetivos do administrador e sem a intervenção humana direta

– [Hennessy, 2002, IBM, 2003, Kephart et al., 2003]

• Explorado por algumas instituições como

– NASA [Clancy, 2002], Microsoft, Sun, Cisco, HP e IBM

Page 7: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

7© LES/PUC-Rio

Inspiração Biológica

• Sistema Nervoso Humano

– Exemplo mais sofisticado de comportamento autonômico que existe

– Cuida das funções vitais do corpo, mesmo diante de várias e diferentes condições externas

– Mantém constante o estado interno

– Prepara o corpo para as tarefas do momento

– Faz todas as tarefas sem nenhum reconhecimento ou esforço consciente das pessoas

Page 8: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

8© LES/PUC-Rio

Sistema Nervoso em trabalho

Page 9: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

9© LES/PUC-Rio

Motivação

• Precisamos de sistemas auto-gerenciáveis

– Comportamento especificado por administradores de sistema através de políticas de alto-nível orientada a negócios

– Sistemas e componentes precisam interpretar políticas

Page 10: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

10© LES/PUC-Rio

Definição de Autonomic Computing

• “Computing systems that can manage themselves given high-level objectives from administrators.”

Kephart; The Vision of Autonomic Computing; 2003

Page 11: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

11© LES/PUC-Rio

Quatro Aspectos Fundamentais

Kephart; The Vision of Autonomic Computing; 2003

Page 12: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

12© LES/PUC-Rio

Elementos Fundamentais

1 – Para ser autonômico, um sistema computacional deve “se conhecer” – e ser composto por componentes que também possuam uma identidade de sistema.

– Palavra-chave: self-knowledge

Page 13: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

13© LES/PUC-Rio

Elementos Fundamentais

2 – Um sistema computacional autonômico deve se configurar e reconfigurar em condições variáveis e imprevisíveis.

– Palavra-chave: self-configuration

Page 14: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

14© LES/PUC-Rio

Elementos Fundamentais

3 – Um sistema autonômico sempre procura maneiras de otimizar seus trabalhos.

– Palavra-chave: self-optimization

Page 15: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

15© LES/PUC-Rio

Elementos Fundamentais

4 – Um sistema computacional autonômico deve estar apto para recuperar-se de rotinas e eventos extraordinários que podem causar mal funcionamento em algumas de suas partes.

– Palavra-chave: self-healing

Page 16: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

16© LES/PUC-Rio

Elementos Fundamentais

5 – Um mundo virtual não é menos perigoso do que um mundo físico, portanto um sistema computacional autonômico deve ser um especialista em auto-proteção.

– Palavra-chave: self-protection

Page 17: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

17© LES/PUC-Rio

Elementos Fundamentais

6 – Um sistema computacional autonômico conhece seu ambiente e o contexto que cerca suas atividades, agindo de acordo com ele.

– Palavra-chave: self-awareness, self-adapting

Page 18: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

18© LES/PUC-Rio

Elementos Fundamentais

7 – Um sistema computacional autonômico não pode existir em um ambiente hermético.

– Palavra-chave: openess standards

Page 19: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

19© LES/PUC-Rio

Elementos Fundamentais

8 – Um sistema computacional autonômico antecipará os recursos de otimização necessários, enquanto mantém sua complexidade escondida.

– Palavra-chave: anticipation, support

Page 20: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

20© LES/PUC-Rio

Arquitetura de AC

• Cada elemento em um sistema autonômico consiste de 2 módulos

– A unidade funcional que realiza o serviço requisitado, e

– A unidade de gerenciamento que

• monitora o estado e o contexto do elemento,

• analisa seus requisitos correntes

– Performance, fault-tolerance, segurança, etc..., e

• se adapta para satisfazer aos requisitos

Page 21: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

21© LES/PUC-Rio

Arquitetura de AC

Page 22: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

22© LES/PUC-Rio

Arquitetura de AC

Page 23: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

23© LES/PUC-Rio

Arquitetura de AC

• Elemento Autonômico (EA)

– Sistemas individuais que contém recursos e provê serviços para humanos ou outros EAs

– Compõe os sistemas autonômicos

– Gerenciam seu comportamento interno e relacionamento com outros EAs de acordo com políticas estabelecidas por humanos ou outros elementos

Page 24: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

24© LES/PUC-Rio

Arquitetura de AC

• Elemento Autonômico (EA)

– Aspectos importantes:

• Tolerância a falhas

• Dinamismo

• Flexibilidade

• Autonomia, pró-atividade

• Consumidor X Provedor de serviços

– Ciclo de Vida

Page 25: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

25© LES/PUC-Rio

Estado da Arte de AC

• Grupo 1:

– Pesquisadores que descrevem tecnologias relacionada a AC

• Grupo 2:

– Pesquisadores que procuram implementar AC em um projeto unificado

P. Lin, A. MacArthur, J. Leaney. Defining Autonomic Computing: A Software Engineering Perspective. IEEE. Proc. of the 2005 Australian Soft. Eng. Conf. (ASWEC’05)

M. Parashar, S. Hariri; Autonomic Computing: An Overview. J.-P. Banâtre et al. (Eds.): UPP 2004, Springer, LNCS 3566, pp. 247–259, 2005.

Page 26: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

26© LES/PUC-Rio

Exemplos Grupo 1

M. Parashar, S. Hariri; Autonomic Computing: An Overview. J.-P. Banâtre et al. (Eds.): UPP 2004, Springer, LNCS 3566, pp. 247–259, 2005.

Page 27: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

27© LES/PUC-Rio

Exemplos Grupo 2

M. Parashar, S. Hariri; Autonomic Computing: An Overview. J.-P. Banâtre et al. (Eds.): UPP 2004, Springer, LNCS 3566, pp. 247–259, 2005.

Page 28: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

28© LES/PUC-Rio

Bibliografia

• Clancy, D. J. (2002). NASA Challenges in Autonomic Computing. Almaden Institute, IBM Almaden Research Center, San Jose, CA, April 10, 2002.

• Hennessy, J. (2002). Back to the Future: Time to Return to Some Long-Standing Problems in Computer Science. Almaden Institute, IBM Almaden Research Center, San Jose, CA, April 10, 2002

•  IBM (2003). Autonomic Computing – Creating Self-managing Computing Systems. Disponível em http://www-3.ibm.com/autonomic/index.shtml.

• Kephart, Jeffrey and Chess, David M.(2003). The Vision of Autonomic Computing. IEEE Computer Magazine 36(1): 41-50.

Page 29: Parte I – Introdução a Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti

Parte I – Introdução a Autonomic Computing

Seminários 2007 – 2º Semestre

Maíra Gatti