curso grid globus monitoring and discovery service (mds)

46
Curso Grid Globus Monitoring and Discovery Service (MDS)

Upload: internet

Post on 17-Apr-2015

113 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Curso Grid Globus Monitoring and Discovery Service (MDS)

Curso Grid

Globus Monitoring and Discovery Service (MDS)

Page 2: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Autoria

• Autores– Alberto Egon

• Local– Instituto de Informática, UFRGS

– 1a versão• 2003, curso projeto Dell

– Revisões• v1

– Novembro de 2005

– C. Geyer

Page 3: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Roteiro● Visão Geral do MDS Características Gerais Benefícios Arquitetura Tipos de Informações Disponibilizadas GRIS e GISS

● Usando o MDS Grid-Info-Search (exemplos) Visualização dos Resultados Performance e Temporização

● Directory Information Tree (DTI) LDAP e DTI Consultas e Information Model

Page 4: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Bibliografia

• Documentação do MDS do GT2.4– http://www.globus.org/toolkit/docs/2.4/mds/

– várias páginas com informações estruturadas

• Manual do usuário do MDS– http://www.globus.org/toolkit/docs/2.4/mds/mdsu

sersguide.pdf

– feito para o GT2.2, mas válido para o GT2.4

• Hierarquias no MDS– http://www.globus.org/toolkit/docs/2.4/mds/

hierarchical_GIIS.pdf

Page 5: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

● Ambientes grid permitem que aplicações sejam integradas a:

instrumentos displays recursos computacionais

● Aplicações geralmente utilizam grande quantidade de dados/recursos gerenciados por diferentes organizações● Serviços de informações são necessários:

prover mecanismos para descoberta e monitoração dos recursos utilizados (infra-estrutura Grid)

Page 6: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Características Gerais do Monitoring and Discovery Service (MDS):

● Conjunto de componentes para serviço de informações● Mecanismo para publicação e descoberta de status (dados dinâmicos) e informações de configuração (dados estáticos) de recursos● Provê interface uniforme e flexível para os dados coletados (imagem única sobre recursos distintos)● Estrutura descentralizada permite escalabilidade

Page 7: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Benefícios do Uso do MDS:● Através do MDS são realizadas consultas para descobrir propriedades de computadores, redes e recursos em geral:

Quantos processadores estão disponíveis nesse momento? Qual a largura de banda provida? Qual o meio de armazenamento: fita ou disco?

● Usando um servidor LDAP, o MDS disponibiliza informações do middleware através de uma interface comum

Page 8: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDSArquitetura do MDS (1/3):

● O MDS possui uma estrutura hierárquica que consiste de 3 componentes principais:

Information Providers (IPs): coletam os dados do recurso e se comunicam com o GRIS (''sensores'') Grid Resource Information Service (GRIS): executa em um recurso e atua como um gateway de informações para esse recurso Grid Index Information Service (GIIS): provê um diretório agregado (indexador) de dados que facilita a descoberta e monitoração

Page 9: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Arquitetura do MDS (2/3):

Page 10: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Arquitetura do MDS (3/3):● Arquitetura flexível e hierárquica● Pode apresentar composição em diversos níveis de GIISs● Qualquer GRIS pode se registrar com qualquer GIIS, e qualquer GIIS pode se registrar com outro GIIS● Estrutura das informações segue o modelo LDAP

entidade é descrita por um conjunto de pares <atributo,valor>

Page 11: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Tipos de informações disponibilizadas pelo MDS (1/3):

● Core Information Providers: Conjunto de Informartion Providers (IPs) incluídos no MDS Utilizados para publicar vários tipos de informações padrão no MDS

● Custom Information Providers: IPs criados pelos próprios usuários Disponibilizam informações quaisquer

Page 12: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Tipos de informações disponibilizadas pelo MDS (2/3):

● Core Information Providers: Tipo de plataforma e arquitetura Nome e versão do sistema operacional CPU: tipo, número de CPUs, versão, velocidade, cache, etc... Memória (física e virtual): tamanho, espaço livre, etc... Interface de rede: nomes e endereços de hosts Sistema de arquivos: tamanho, espaço livre, etc...

Page 13: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Tipos de informações disponibilizadas pelo MDS (3/3):

● Custom Information Providers: Estender arquitetura através da criação de novos IPs:

➔Informações não disponibilizadas pelos IPs incluídos no MDS➔Publicar tipos específicos de dados que possam ser necessários por determinada aplicação

Especificação pode ser obtida no site do Globus:

➔ http://www.globus.org/mds/creating_new_providers.pdf

Page 14: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Princípios básicos do GRIS e GIIS (1/5):● Recursos executam um serviço de informação padrão (GRIS):

utiliza LDAP obtem informações sobre o recurso

● Um GIIS disponibiliza um serviço de indexação e 'caching':

também utiliza LDAP recursos se registram no GIIS quando clientes fazem alguma requisição:

➔ obtém a resposta através dos GRIS➔ utiliza a cache se estiver disponível

Page 15: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Princípios básicos do GRIS e GIIS (2/5):● GIIS exerce funções de indexação e procura de dados

Page 16: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Princípios básicos do GRIS e GIIS (3/5):● Grid Resource Information Service (GRIS):

Implementado como um servidor OpenLDAP➔ pode ser customizado com IPs específicos➔ responde queries pedindo informações (estáticas ou dinâmicas) sobre a máquina ou recursos locais

Autentica e processa cada requisição, e então a despacha para um ou mais IPs locais Resultados são combinados e enviados de volta para o cliente

Page 17: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDS

Princípios básicos do GRIS e GIIS (4/5):● Grid Resource Information Service (GRIS):

Comunicação GRIS-IP através de API bem definida O GRIS deve ser configurado com

➔ tipo de informação que IP irá disponibilizar➔ rotinas que IP define para implementar a API do GRIS

Resultados podem ser colocados em cache por um período de tempo configurável (TTL) Dados obtidos dos IPs são filtrados pelo GRIS

Page 18: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Visão Geral do MDSPrincípios básicos do GRIS e GIIS (5/5):

● Grid Index Information Service (GIIS): Implementado como servidor OpenLDAP para a construção de diretórios agregados Papel fundamental em relação à escalabilidade:

➔ descoberta mais eficiente pois não requisita novas consultas junto a cada recurso

Aceita requisições de registro de instâncias GRIS ou GIIS:

➔ combina esses servidores em um espaço de informações unificado

Page 19: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Monitoring and Discovery Service (MDS) pode ser usado para:

● Localizar Recursos: Onde estão os recursos com a arquitetura requisitada, os softwares instalados, capacidade disponível e largura de banda necessária?

● Determinar características de um recurso: Quais são as características físicas, conectividade e capacidades de um determinado recurso?

Page 20: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Comando grid-info-search:● Utilizado para consultar dados disponibilizados pelo MDS● Formato: grid-info-search [opções]● Onde as opções são as seguintes:

Page 21: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Comando grid-info-search (opções):● -config file: especifica um arquivo de configuração para o MDS● -mdshost host (-h): nome do host onde o servidor MDS está rodando (default é $GRID_INFO_HOST)● -mdsport port (-p): é a porta na qual o servidor MDS está rodando (default é $GRID_INFO_PORT)● -anonymous (-x): realiza o acesso ao servidor de forma anônima

Page 22: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Comando grid-info-search (opções):● -mdsbasedn branch-point (-b): local base na DIT para iniciar a busca (default é ${GRID_INFO_BASEDN})● -s scope: especifica o escopo da busca

base: nível base da DTI one: nível base da DTI + 1 nível abaixo sub: nível base da DTI + todos níveis abaixo

● -giisregistrationstatus: solicita status do servidor onde o GIIS está realizando a consulta● ''attribute'': especifica quais atributos serão apresentados no retorno da consulta (ex. MdsCpu)

Page 23: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Comando grid-info-search (opções):● ''filter'': define um critério para a consulta

''(attribute=value)'' ''(attribute>=value)'' ''(attribute<=value)'' ''(attribute~=value)'' ''(attribute=*)'' Procura pela presença de um item ''(attribute=*a)'' Procura por uma substring

● -mdstimeout seconds (-T): quantidade de tempo que alguém deve esperar pelo retorno de uma requisição (default é $GRID_INFO_TIMEOUT)

Page 24: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Exemplo grid-info-search (1):● Consultar todos os objetos em uma única máquina configurada como um GRIS:

grid-info-search -h giis-demo.globus.org -p 8463 -b 'Mds-vo-name=local, o=Grid'

➔ Consulta executa no host e na porta indicados➔ Não especifica atributos (consulta todos)➔ Mds-vo-name=local significa que a procura vai começar em um GRIS (observar uso da opção mdsbasedn)

Page 25: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Exemplo grid-info-search (1) - resultado:

SASL/GSI-GSSAPI authentication started SASL SSF: 56SASL installing layersversion: 2

## filter: (objectclass=*)# requesting: ALL#[...]Mds-Computer-isa: IA32Mds-Computer-platform: i686Mds-Computer-Total-nodeCount: 1Mds-Cpu-Cache-l2kB: 512[...]

Page 26: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Exemplo grid-info-search (2):● Consultar a quantidade de espaço livre no sistema de arquivos das máquinas de um GIIS:

grid-info-search -x -h giis-demo.globus.org -p 8422 -b 'Mds-Vo- name=site, o=Grid' Mds-Fs-freeMB

➔ A consulta utiliza amarração anônima (-x) e executa no host e na porta indicada➔ Mds-vo-name=site significa que a procura vai começar em um GIIS

Page 27: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Exemplo grid-info-search (2) - resultado:

# # filter: (objectclass=*)# requesting: Mds-Fs-freeMB#[...]# filesystems, jupiter.isi.edu, site, Griddn: Mds-Device-Group-name=filesystems,Mds-Host-hn=jupiter.isi.edu, Mds-Vo-name=site, o=GridMds-Fs-freeMB: 1075Mds-Fs-freeMB: 141Mds-Fs-freeMB: 1711Mds-Fs-freeMB: 2430Mds-Fs-freeMB: 3657Mds-Fs-freeMB: 4756[...]

branch-point

Distinguished name

Page 28: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDSExemplo grid-info-search (3):

● Consultar a velocidade e modelo da CPU em uma única máquina de um GIIS:

grid-info-search -x -h giis-demo.globus.org -p 8422 -b 'Mds-Vo-name=site, o=Grid' '(&(objectclass=MdsCpu)(Mds-Host-hn=lucky6.mcs. anl.gov))' Mds-Cpu-model Mds-Cpu-speedMHz

➔Utiliza amarração anônima (-x) e executa no host e na porta indicada➔Mds-vo-name=site significa que a procura vai começar em um GIIS➔Objectclass especifica a CPU em determinado host

Page 29: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Exemplo grid-info-search (3) - resultado:

# # filter: (&(objectclass=MdsCpu)(Mds-Host-hn= lucky6.mcs.anl.gov))# requesting: Mds-Cpu-model Mds-Cpu-speedMHz#

# lucky6.mcs.anl.gov, lucky6, site, Griddn: Mds-Host-hn=lucky6.mcs.anl.gov, Mds-Vo-name=lucky6, Mds-Vo-name= site, o=GridMds-Cpu-model: Intel(R) Pentium(R) III CPU family 1133MHzMds-Cpu-speedMHz: 1125

Page 30: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Browsers LDAP (1/2):● Navegadores LDAP proporcionam uma forma conveniente para consultar e examinar dados em um grid computacional● Softerra

Para sistema operacional Windows Interface semelhante ao Windows Explorer http://www.softerra.com

● Browser LDAP java-based Independente de plataforma; requisita versão Java 1.2.2 ou maior) http://www.mcs.anl.gov/~gawor/ldap

Page 31: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDSBrowsers LDAP (2/2):

NavegadordaSofterra

NavegadorbaseadoemJava

Page 32: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Questões sobre performance e temporização (1/3):

● Tempo de retorno dos resultados de um comando grid-info-search pode ser afetado por uma série de fatores:

Complexidade da hierarquia (GRIS e GIIS) Performance dos IPs acessados pelo GRIS:

➔ overhead para obter os dados (relacionado à forma de aquisição)➔ grande quantidade de dados

Performance dos GRIS acessados pelo GIIS TTL configurado para manter os dados em cache

Page 33: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Questões sobre performance e temporização (2/3):

Page 34: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Usando o MDS

Questões sobre performance e temporização (3/3):

● O arquivo grid-info-resource-register.conf informa:

Lista de servidores GIIS onde o GRIS deve ser registrado Parâmetro regperiod: intervalo para o envio de notificações de disponibilidade (heartbeats) Parâmetro ttl: intervalo para manter infos de existência dos "subordinados" (2 * regperiod) Parâmetro cachettl: usado para definir o tempo que os dados devem ser mantidos na cache

Page 35: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)

A estrutura de diretórios do MDS segue o modelo LDAP, que consiste de uma hierarquia DTI e definições de classes de objetos

Definição de LDAP (1/2):● Protocolo cliente-servidor para armazenar informações e responder consultas● NÃO é um banco de dados, mas um protocolo para acesso a bancos de dados e diretórios● Mantém pequenos registros de informação, em estrutura hierárquica (~= sistema de arquivos)

Page 36: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)

Definição de LDAP (2/2):

● Comunicações: Client-to-server:

➔ Permite a aplicações de usuários acessar um servidor LDAP e criar, consultar, modificar e deletar dados

Server-to-server:➔ Define como múltiplos servidores compartilham o conteúdo de uma DIT e como eles atualizam e replicam esses dados

Page 37: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)Directory Information Tree (1/2):

● Estrutura básica do LDAP é uma árvore de informações (DTI)● Partindo de um nodo raíz, contém uma visão hierárquica de todos os seus dados● Descoberta de recursos é desempenhada por uma procura hierárquica dessa árvore● As sub-árvores da DIT podem ser distribuídas ou replicadas● Modelo de dados utiliza classes de objetos para caracterizar recursos● Cada objeto contém valores associados a atributos nomeados, de acordo com o tipo do objeto

Page 38: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)

Directory Information Tree (2/2):

● Tipos de estruturas presentes na DTI: Object classes: descrevem o tipo de informação que pode/deve ser armazenada no diretório Records: pares <atributo,valor>. Possui um tipo definido pela associação com um Object Class Entries: cada um dos nodos da árvore (agrupam informações relacionadas)

Page 39: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)

Consultas/operações (1/2):

● LDAP é um serviço global de diretórios usado para procurar informações● Um ou mais servidores LDAP contém os dados que formam a árvore de diretórios● A sessão LDAP é extremamente simples:

O cliente contata o servidor O servidor pode solicitar uma autenticação Uma vez estabelecida a conexão, o cliente pode enviar comandos LDAP de consulta

Page 40: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)Consultas/operações (2/2):

● Consulta envia parâmetros para servidor. Uma consulta completa envolve os seguintes parâmetros:➔A árvore ou sub-árvore em que se quer procurar➔Quantos níveis da árvore serão utilizados na

procura➔Como utilizar ''aliases'' para outras partes da

árvore➔O limite de tempo da consulta (timeout)➔Um filtro a ser aplicado sobre os dados➔A lista de atributos a serem retornados

Page 41: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)MDS Information Model (1/4):

● O Information Model utilizado na hierarquia de objetos de um host é o seguinte:

Mds-Host-name=hostname Mds-Software-Deployment=operating system Mds-Device-Group-name=processors Mds-Device-name=cpu 0 Mds-Device-name=cpu 1 Mds-Device-Group-name=memory Mds-Device-name=physical memory Mds-Device-name=virtual memory Mds-Device-Group-name=filesystems Mds-Device-name=/scratch1 Mds-Device-Group-name=networks Mds-Device-name=eth0

Page 42: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)MDS Information Model (2/4):

● Representação gráfica equivalente:

Page 43: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)MDS Information Model (3/4):

● Uma folha contém informações de um único recurso:

dn: Mds-Device-name=physical memory, Mds-Device-Group-name=memory, ...objectclass: Mdsobjectclass: MdsDeviceobjectclass: MdsMemoryRamMds-Device-name: physical memoryMds-Memory-Ram-sizeMB: 751Mds-Memory-Ram-freeMB: 642

Page 44: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

Directory Information Tree (DTI)MDS Information Model (4/4):

● ... enquanto um nodo pai pode conter as informações combinadas de várias instâncias:

dn: Mds-Device-Group-name=memory, ... objectclass: MdsMemoryRamTotalobjectclass: MdsMemoryVmTotalobjectclass: MdsDeviceGroupMds-Device-Group-name: memoryMds-Memory-Ram-Total-sizeMB: 751Mds-Memory-Ram-Total-freeMB: 642Mds-Memory-Vm-Total-sizeMB: 1600Mds-Memory-Vm-Total-freeMB: 1592Mds-Memory-Ram-sizeMB: 751Mds-Memory-Ram-freeMB: 642Mds-Memory-Vm-sizeMB: 1600Mds-Memory-Vm-freeMB: 1592

Page 45: Curso Grid Globus Monitoring and Discovery Service (MDS)

LabTeC - Curso Grid - II/UFRGS/DELL

MDS e GTs

• GT 2.4– O MDS do GT2.4 não é instalado (default) no

GT4

– Problema: falhas de segurança em versões antigas do OpenLDAP e do Cyrus SASL

– Versões não suportadas do MDS 2.4 com versões mais recentes do OpenLDAP e Cyrus podem ser baixadas

– MDS 2.4 não será fornecido em futuras versões do GT4 (GT 4.2)

Page 46: Curso Grid Globus Monitoring and Discovery Service (MDS)

Curso Grid

Globus Monitoring and Discovery Service (MDS)