SlideShare uma empresa Scribd logo
1 de 20
Baixar para ler offline
Frederico Madeira
                        LPIC­1, LPIC­2, CCNA
                         fred@madeira.eng.br
                          www.madeira.eng.br




Sistemas Distribuídos
Clusters
Definição
“Cluster is a widely-used term meaning independent computers
combined into a unified system through software and
networking. At the most fundamental level, when two or more
computers are used together to solve a problem, it is
considered a cluster”
                                     - http://www.beowulf.org


“Construído a partir de computadores convencionais, os quais
são ligados em rede e comunicam-se através do sistema,
trabalhando como se fossem uma única máquina de grande
porte”
                          - http://pt.wikipedia.org/wiki/Cluster
Exemplos
Exemplos
Razões para a Utilização de Clusters

Os clusters ou combinações de clusters são utilizados a fim de
processar conteúdos críticos ou disponibilização de serviços
durante a maior parte do tempo.


Clusters de Alta Disponibilidade e Balanceamento de
Carga geralmente são utilizados por serviços críticos, como
aplicações web, vídeo streaming, servidores de email entre
outras.
Clusters paralelos normalmente são utilizados pela indústria
cinematográfica a fim de renderizar gráficos de altíssima
qualidade e animações.
Clusters Beowulf são utilizados na pesquisa cientifica, pelo
seu poder de processamento e custo de implementação
Tipos de Clusters
✔
    Alta Disponibilidade (High Availability (HA)
    and Failover)

    ➔
        Construídos para prover uma disponibilidade de
        serviços e recursos de forma ininterruptas

    ➔
        Se um nó do cluster vier a falhar (failover) as
        aplicações/serviços estarão disponíveis em um
        outro nó.

    ➔
        Utilizados para base de dados de missões
        críticas, correio, servidores de arquivos e
        aplicações.
Tipos de Clusters
✔
    Alta Disponibilidade (High Availability (HA)
    and Failover)

    ➔
        Replicação de Serviços e Servidores.

    ➔
        Tolerância a falha através de: Raid, fontes,
        placas e links redundantes

    ➔
        Exemplos:
         • Linux HA - http://www.linux-ha.org
         • DRBD - http://www.drbd.org/
Alta Disponibilidade (High Availability (HA)
and Failover)
•Alta Disponibilidade (High Availability (HA)
and Failover)
•Níveis de Disponibilidade


   Geralmente, quanto maior a disponibilidade,
   maior a redundância e custo das soluções: tudo
   depende do tipo de serviço que se pretende
   disponibilizar
Tipos de Clusters
✔
    Balanceamento de carga (Load Balancing)
     ➔
       Distribui o tráfego ou requisições entre as
       máquinas que compõem o cluster

    ➔
        Se um nó falhar, as requisições são
        redistribuídas entre os nós disponíveis no
        momento.


    ➔
        Os sistemas não trabalham junto em um único
        processo, mas redirecionando as requisições de
        forma independente, baseados em um
        escalonador e um algoritmo próprio

    ➔
        Utilizados para fazenda de servidores web (web
        farms)
•Balanceamento de carga (Load Balancing)


Alguns exemplos de soluções para Balanceamento
de carga:

   ✔
       Linux Virtual Server -
       http://www.linuxvirtualserver.org/
   ✔
       Zeus Load Balancer -
       http://www.zeus.com/products/zlb/
   ✔
       .vantronix Load Balancer -
       http://www.vantronix.com/
   ✔
       Kemp Technologies -
       http://www.kemptechnologies.com/
   ✔
       Barracuda -
       http://www.barracudanetworks.com/
   ✔
       F5 Load Balancer - http://www.f5.com/
•Balanceamento de carga (Load Balancing)
Balanceamento de Carga (Load Balancing)

Um exemplo de um site a utilizar técnicas de balanceamento de carga é a
própria Wikimedia Foundation e os seus projetos. Em Junho de 2004, a carga
era balanceada usando uma combinação de:


➔
    Round robin DNS, que distribui os pedidos uniformemente para um dos
    três servidores de cache Squid;
➔
    Estes servidores de cache usam os tempos de resposta para distribuir os
    pedidos para cada um dos sete servidores de páginas. Em média, os
    servidores Squid já têm em cache páginas suficientes para satisfazer 75%
    dos pedidos sem sequer consultar os servidores de páginas;
➔
    Os scripts PHP que formam a aplicação distribuem a carga para um de vários
    servidores de base de dados dependendo do tipo do pedido, com as
    atualizações indo para um servidor primário e as consultas para um ou mais
    servidores secundários.
                         - http://pt.wikipedia.org/wiki/Balanceamento_de_Carga
Tipos de Clusters
✔
     Processamento Distribuído ou Processamento
     Paralelo (HPC - High Performance Computing)

     ➔
         Aumenta a disponibilidade e performance para
         as aplicações, particularmente as grandes
         tarefas computacionais

     ➔
         Uma grande tarefa computacional pode ser
         dividida em pequenas tarefas que são
         distribuídas ao redor dos nodos, como se fosse
         um supercomputador massivamente paralelo
Tipos de Clusters
✔
     Processamento Distribuído ou Processamento
     Paralelo (HPC - High Performance Computing)

     ➔
         Utilizados para computação cientifica ou análises
         financeiras, tarefas típicas para exigência de alto
         poder de processamento.

     ➔
         Exemplos:
          • Beowulf Cluster - http://www.beowulf.org/
          • LinuxHPC - http://www.linuxhpc.org
•Beowulf Cluster

✔
     É o nome de um projeto para aglomerados de
     computadores (ou Clusters) para computação
     paralela, usando computadores pessoais, não
     especializados e portanto mais baratos

➔
     O projeto foi criado por Donald Becker da NASA

➔
     Possui desempenho escalável.Baseados numa
     infraestrutura de hardware comum, rede privada e
     software 'open source' (Linux)

➔
     Existe um servidor responsável por controlar todo o
     cluster, principalmente quanto à distribuição de
     tarefas e processamento.
•Beowulf Cluster
•Beowulf Cluster
Frederico Madeira
                        LPIC­1, LPIC­2, CCNA
                         fred@madeira.eng.br
                          www.madeira.eng.br




Sistemas Distribuídos
Clusters

Mais conteúdo relacionado

Mais procurados

AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018
AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018 AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018
AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018 Amazon Web Services Korea
 
Aula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaAula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaVictor Hazin da Rocha
 
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 AdvancedAmazon Web Services Korea
 
Modelo do Processo de Desenvolvimento de Produtos (continuação)
Modelo do Processo de Desenvolvimento de Produtos (continuação)Modelo do Processo de Desenvolvimento de Produtos (continuação)
Modelo do Processo de Desenvolvimento de Produtos (continuação)Marcel Gois
 
Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축
Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축
Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축Eunsu Kim
 
SCRUM básico e aplicação de metodologia ágil
SCRUM básico e aplicação de metodologia ágilSCRUM básico e aplicação de metodologia ágil
SCRUM básico e aplicação de metodologia ágilAmanda Armelin
 
Seminário Computação em Nuvem
Seminário Computação em NuvemSeminário Computação em Nuvem
Seminário Computação em NuvemLeandro Nunes
 
Metodologias ágeis de desenvolvimento de software por Givanaldo Rocha
Metodologias ágeis de desenvolvimento de software por Givanaldo RochaMetodologias ágeis de desenvolvimento de software por Givanaldo Rocha
Metodologias ágeis de desenvolvimento de software por Givanaldo RochaFernando Palma
 
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017Amazon Web Services Korea
 
Treinamento de Scrum
Treinamento de ScrumTreinamento de Scrum
Treinamento de ScrumLuiz Duarte
 
AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017
 AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017 AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017
AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017Amazon Web Services Korea
 
채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례John Kim
 
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS 솔루션즈 아키텍트:: A...
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS  솔루션즈 아키텍트:: A...초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS  솔루션즈 아키텍트:: A...
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS 솔루션즈 아키텍트:: A...Amazon Web Services Korea
 
Ferramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de softwareFerramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de softwareelliando dias
 

Mais procurados (20)

Treinamento Ágil / Scrum
Treinamento Ágil / ScrumTreinamento Ágil / Scrum
Treinamento Ágil / Scrum
 
AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018
AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018 AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018
AWS KMS를 활용하여 안전한 AWS 환경을 구축하기 위한 전략::임기성::AWS Summit Seoul 2018
 
Aula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação IndiretaAula de Sistemas Distribuídos - Comunicação Indireta
Aula de Sistemas Distribuídos - Comunicação Indireta
 
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Modelo do Processo de Desenvolvimento de Produtos (continuação)
Modelo do Processo de Desenvolvimento de Produtos (continuação)Modelo do Processo de Desenvolvimento de Produtos (continuação)
Modelo do Processo de Desenvolvimento de Produtos (continuação)
 
Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축
Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축
Github Action, AWS S3, CloudFront를 활용한 React 애플리케이션 CICD 파이프라인 구축
 
SCRUM básico e aplicação de metodologia ágil
SCRUM básico e aplicação de metodologia ágilSCRUM básico e aplicação de metodologia ágil
SCRUM básico e aplicação de metodologia ágil
 
Seminário Computação em Nuvem
Seminário Computação em NuvemSeminário Computação em Nuvem
Seminário Computação em Nuvem
 
Metodologias ágeis de desenvolvimento de software por Givanaldo Rocha
Metodologias ágeis de desenvolvimento de software por Givanaldo RochaMetodologias ágeis de desenvolvimento de software por Givanaldo Rocha
Metodologias ágeis de desenvolvimento de software por Givanaldo Rocha
 
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
Amazon ECS를 통한 도커 기반 콘테이너 서비스 구축하기 - AWS Summit Seoul 2017
 
Treinamento de Scrum
Treinamento de ScrumTreinamento de Scrum
Treinamento de Scrum
 
AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017
 AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017 AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017
AWS 엣지 서비스를 통한 글로벌 서비스 관리 전략 - AWS Summit Seoul 2017
 
GIT Básico
GIT BásicoGIT Básico
GIT Básico
 
Páginas dinâmicas
Páginas dinâmicasPáginas dinâmicas
Páginas dinâmicas
 
채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례채팅서버의 부하 분산 사례
채팅서버의 부하 분산 사례
 
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS 솔루션즈 아키텍트:: A...
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS  솔루션즈 아키텍트:: A...초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS  솔루션즈 아키텍트:: A...
초보 개발자도 바로 따라할 수 있는 AWS 미디어 서비스를 이용한 Live/VOD 서비스 구축 – 현륜식 AWS 솔루션즈 아키텍트:: A...
 
Ferramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de softwareFerramenta de apoio a gerência de configuração de software
Ferramenta de apoio a gerência de configuração de software
 
Aula 4 - Projeto de Fábrica e Layout
Aula 4 - Projeto de Fábrica e Layout Aula 4 - Projeto de Fábrica e Layout
Aula 4 - Projeto de Fábrica e Layout
 
Lean Six Sigma Hospital
Lean Six Sigma Hospital Lean Six Sigma Hospital
Lean Six Sigma Hospital
 

Semelhante a Clusters

Alta Disponibilidade
Alta DisponibilidadeAlta Disponibilidade
Alta Disponibilidadeelliando dias
 
Cluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxCluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxFrederico Madeira
 
Cluster de Alta disponibilidade
Cluster de Alta disponibilidadeCluster de Alta disponibilidade
Cluster de Alta disponibilidadeMarcelo Garcia
 
Cluster ha com banco de dados
Cluster ha com banco de dadosCluster ha com banco de dados
Cluster ha com banco de dadosMarcio Jonnes
 
Cloud computing & Cloudstack: Como ter sua nuvem sem tempestades
Cloud computing & Cloudstack: Como ter sua nuvem sem tempestadesCloud computing & Cloudstack: Como ter sua nuvem sem tempestades
Cloud computing & Cloudstack: Como ter sua nuvem sem tempestadesRicardo Martins ☁
 
Aws sao paulo summit 2015 elasti cache avancado
Aws sao paulo summit 2015   elasti cache avancadoAws sao paulo summit 2015   elasti cache avancado
Aws sao paulo summit 2015 elasti cache avancadoAmazon Web Services LATAM
 
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoSoluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoTchelinux
 
Utilizando software livre para alta disponibilidade de sistemas web Java
Utilizando software livre para alta disponibilidade de sistemas web JavaUtilizando software livre para alta disponibilidade de sistemas web Java
Utilizando software livre para alta disponibilidade de sistemas web JavaAdriel Viana
 
Replicação e alta disponibilidade by wagner bianchi -
Replicação e alta disponibilidade by wagner bianchi -Replicação e alta disponibilidade by wagner bianchi -
Replicação e alta disponibilidade by wagner bianchi -MySQL Brasil
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Wagner Bianchi
 
Prova Da Dataprev 2006 Jaime Correia Amostra
Prova Da Dataprev 2006   Jaime Correia   AmostraProva Da Dataprev 2006   Jaime Correia   Amostra
Prova Da Dataprev 2006 Jaime Correia AmostraWalter Cunha
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud ComputingFrederico Madeira
 
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)Caio Candido
 

Semelhante a Clusters (20)

Aula 7 (clouter)
Aula 7 (clouter)Aula 7 (clouter)
Aula 7 (clouter)
 
Alta Disponibilidade
Alta DisponibilidadeAlta Disponibilidade
Alta Disponibilidade
 
Cluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em LinuxCluster de Alta Disponibilidade em Linux
Cluster de Alta Disponibilidade em Linux
 
Flisol 2015
Flisol 2015 Flisol 2015
Flisol 2015
 
Arquiteturas escaláveis e tolerantes a falhas
Arquiteturas escaláveis e tolerantes a falhasArquiteturas escaláveis e tolerantes a falhas
Arquiteturas escaláveis e tolerantes a falhas
 
Cluster de Alta disponibilidade
Cluster de Alta disponibilidadeCluster de Alta disponibilidade
Cluster de Alta disponibilidade
 
Cluster ha com banco de dados
Cluster ha com banco de dadosCluster ha com banco de dados
Cluster ha com banco de dados
 
Cloud computing & Cloudstack: Como ter sua nuvem sem tempestades
Cloud computing & Cloudstack: Como ter sua nuvem sem tempestadesCloud computing & Cloudstack: Como ter sua nuvem sem tempestades
Cloud computing & Cloudstack: Como ter sua nuvem sem tempestades
 
Aws sao paulo summit 2015 elasti cache avancado
Aws sao paulo summit 2015   elasti cache avancadoAws sao paulo summit 2015   elasti cache avancado
Aws sao paulo summit 2015 elasti cache avancado
 
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoSoluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
 
Sistemas Distribuídos - Clusters
Sistemas Distribuídos - ClustersSistemas Distribuídos - Clusters
Sistemas Distribuídos - Clusters
 
Web seminario varnish
Web seminario varnishWeb seminario varnish
Web seminario varnish
 
Utilizando software livre para alta disponibilidade de sistemas web Java
Utilizando software livre para alta disponibilidade de sistemas web JavaUtilizando software livre para alta disponibilidade de sistemas web Java
Utilizando software livre para alta disponibilidade de sistemas web Java
 
Replicação e alta disponibilidade by wagner bianchi -
Replicação e alta disponibilidade by wagner bianchi -Replicação e alta disponibilidade by wagner bianchi -
Replicação e alta disponibilidade by wagner bianchi -
 
DevOpsDays Brasilia 2017
DevOpsDays Brasilia 2017DevOpsDays Brasilia 2017
DevOpsDays Brasilia 2017
 
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
Escalando o ambiente com MariaDB Cluster (Portuguese Edition)
 
Prova Da Dataprev 2006 Jaime Correia Amostra
Prova Da Dataprev 2006   Jaime Correia   AmostraProva Da Dataprev 2006   Jaime Correia   Amostra
Prova Da Dataprev 2006 Jaime Correia Amostra
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
Aula01
Aula01Aula01
Aula01
 
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
DevOps containers x86 - Baremetal, Virtual e Cloud (pt_br)
 

Mais de Frederico Madeira

SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoFrederico Madeira
 
SI - SAD - Sistemas de Arquivos Distribuídos
SI - SAD  - Sistemas de Arquivos DistribuídosSI - SAD  - Sistemas de Arquivos Distribuídos
SI - SAD - Sistemas de Arquivos DistribuídosFrederico Madeira
 
SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosFrederico Madeira
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaFrederico Madeira
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDFrederico Madeira
 
Linux - Instalação de Programas
Linux - Instalação de ProgramasLinux - Instalação de Programas
Linux - Instalação de ProgramasFrederico Madeira
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internetFrederico Madeira
 
Linux e o modelo open source
Linux e o modelo open sourceLinux e o modelo open source
Linux e o modelo open sourceFrederico Madeira
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaFrederico Madeira
 
Open Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreOpen Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreFrederico Madeira
 
Redes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksRedes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksFrederico Madeira
 
Ferramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFerramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFrederico Madeira
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesFrederico Madeira
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de RedesFrederico Madeira
 

Mais de Frederico Madeira (20)

WebServices
WebServicesWebServices
WebServices
 
IoT - Internet of Things
IoT -  Internet of ThingsIoT -  Internet of Things
IoT - Internet of Things
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
 
SI - Arquiteturas
SI - ArquiteturasSI - Arquiteturas
SI - Arquiteturas
 
SI - SAD - Sistemas de Arquivos Distribuídos
SI - SAD  - Sistemas de Arquivos DistribuídosSI - SAD  - Sistemas de Arquivos Distribuídos
SI - SAD - Sistemas de Arquivos Distribuídos
 
SI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas DistribuidosSI - Introdução a Sistemas Distribuidos
SI - Introdução a Sistemas Distribuidos
 
SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
 
Alta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBDAlta Disponibilidade utilizando Pacemaker e DRBD
Alta Disponibilidade utilizando Pacemaker e DRBD
 
Linux - Instalação de Programas
Linux - Instalação de ProgramasLinux - Instalação de Programas
Linux - Instalação de Programas
 
Proteja seus dados em casa e na internet
Proteja seus dados em casa e na internetProteja seus dados em casa e na internet
Proteja seus dados em casa e na internet
 
Linux e o modelo open source
Linux e o modelo open sourceLinux e o modelo open source
Linux e o modelo open source
 
Redes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da TelefoniaRedes VoIP - O Futuro da Telefonia
Redes VoIP - O Futuro da Telefonia
 
Open Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software LivreOpen Virtualization - Virtualização em Software Livre
Open Virtualization - Virtualização em Software Livre
 
Redes NGN - Next Generation Networks
Redes NGN - Next Generation NetworksRedes NGN - Next Generation Networks
Redes NGN - Next Generation Networks
 
MRTG - SNMP na Prática
MRTG - SNMP na PráticaMRTG - SNMP na Prática
MRTG - SNMP na Prática
 
Introdução ao SNMP
Introdução ao SNMPIntrodução ao SNMP
Introdução ao SNMP
 
Ferramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em RedesFerramentas para Detecção de Problemas em Redes
Ferramentas para Detecção de Problemas em Redes
 
Arquiteturas de Gerência de Redes
Arquiteturas de Gerência de RedesArquiteturas de Gerência de Redes
Arquiteturas de Gerência de Redes
 
Introdução a Gerência de Redes
Introdução a Gerência de RedesIntrodução a Gerência de Redes
Introdução a Gerência de Redes
 

Clusters

  • 1. Frederico Madeira LPIC­1, LPIC­2, CCNA fred@madeira.eng.br www.madeira.eng.br Sistemas Distribuídos Clusters
  • 2. Definição “Cluster is a widely-used term meaning independent computers combined into a unified system through software and networking. At the most fundamental level, when two or more computers are used together to solve a problem, it is considered a cluster” - http://www.beowulf.org “Construído a partir de computadores convencionais, os quais são ligados em rede e comunicam-se através do sistema, trabalhando como se fossem uma única máquina de grande porte” - http://pt.wikipedia.org/wiki/Cluster
  • 5. Razões para a Utilização de Clusters Os clusters ou combinações de clusters são utilizados a fim de processar conteúdos críticos ou disponibilização de serviços durante a maior parte do tempo. Clusters de Alta Disponibilidade e Balanceamento de Carga geralmente são utilizados por serviços críticos, como aplicações web, vídeo streaming, servidores de email entre outras. Clusters paralelos normalmente são utilizados pela indústria cinematográfica a fim de renderizar gráficos de altíssima qualidade e animações. Clusters Beowulf são utilizados na pesquisa cientifica, pelo seu poder de processamento e custo de implementação
  • 6. Tipos de Clusters ✔ Alta Disponibilidade (High Availability (HA) and Failover) ➔ Construídos para prover uma disponibilidade de serviços e recursos de forma ininterruptas ➔ Se um nó do cluster vier a falhar (failover) as aplicações/serviços estarão disponíveis em um outro nó. ➔ Utilizados para base de dados de missões críticas, correio, servidores de arquivos e aplicações.
  • 7. Tipos de Clusters ✔ Alta Disponibilidade (High Availability (HA) and Failover) ➔ Replicação de Serviços e Servidores. ➔ Tolerância a falha através de: Raid, fontes, placas e links redundantes ➔ Exemplos: • Linux HA - http://www.linux-ha.org • DRBD - http://www.drbd.org/
  • 8. Alta Disponibilidade (High Availability (HA) and Failover)
  • 9. •Alta Disponibilidade (High Availability (HA) and Failover)
  • 10. •Níveis de Disponibilidade Geralmente, quanto maior a disponibilidade, maior a redundância e custo das soluções: tudo depende do tipo de serviço que se pretende disponibilizar
  • 11. Tipos de Clusters ✔ Balanceamento de carga (Load Balancing) ➔ Distribui o tráfego ou requisições entre as máquinas que compõem o cluster ➔ Se um nó falhar, as requisições são redistribuídas entre os nós disponíveis no momento. ➔ Os sistemas não trabalham junto em um único processo, mas redirecionando as requisições de forma independente, baseados em um escalonador e um algoritmo próprio ➔ Utilizados para fazenda de servidores web (web farms)
  • 12. •Balanceamento de carga (Load Balancing) Alguns exemplos de soluções para Balanceamento de carga: ✔ Linux Virtual Server - http://www.linuxvirtualserver.org/ ✔ Zeus Load Balancer - http://www.zeus.com/products/zlb/ ✔ .vantronix Load Balancer - http://www.vantronix.com/ ✔ Kemp Technologies - http://www.kemptechnologies.com/ ✔ Barracuda - http://www.barracudanetworks.com/ ✔ F5 Load Balancer - http://www.f5.com/
  • 13. •Balanceamento de carga (Load Balancing)
  • 14. Balanceamento de Carga (Load Balancing) Um exemplo de um site a utilizar técnicas de balanceamento de carga é a própria Wikimedia Foundation e os seus projetos. Em Junho de 2004, a carga era balanceada usando uma combinação de: ➔ Round robin DNS, que distribui os pedidos uniformemente para um dos três servidores de cache Squid; ➔ Estes servidores de cache usam os tempos de resposta para distribuir os pedidos para cada um dos sete servidores de páginas. Em média, os servidores Squid já têm em cache páginas suficientes para satisfazer 75% dos pedidos sem sequer consultar os servidores de páginas; ➔ Os scripts PHP que formam a aplicação distribuem a carga para um de vários servidores de base de dados dependendo do tipo do pedido, com as atualizações indo para um servidor primário e as consultas para um ou mais servidores secundários. - http://pt.wikipedia.org/wiki/Balanceamento_de_Carga
  • 15. Tipos de Clusters ✔ Processamento Distribuído ou Processamento Paralelo (HPC - High Performance Computing) ➔ Aumenta a disponibilidade e performance para as aplicações, particularmente as grandes tarefas computacionais ➔ Uma grande tarefa computacional pode ser dividida em pequenas tarefas que são distribuídas ao redor dos nodos, como se fosse um supercomputador massivamente paralelo
  • 16. Tipos de Clusters ✔ Processamento Distribuído ou Processamento Paralelo (HPC - High Performance Computing) ➔ Utilizados para computação cientifica ou análises financeiras, tarefas típicas para exigência de alto poder de processamento. ➔ Exemplos: • Beowulf Cluster - http://www.beowulf.org/ • LinuxHPC - http://www.linuxhpc.org
  • 17. •Beowulf Cluster ✔ É o nome de um projeto para aglomerados de computadores (ou Clusters) para computação paralela, usando computadores pessoais, não especializados e portanto mais baratos ➔ O projeto foi criado por Donald Becker da NASA ➔ Possui desempenho escalável.Baseados numa infraestrutura de hardware comum, rede privada e software 'open source' (Linux) ➔ Existe um servidor responsável por controlar todo o cluster, principalmente quanto à distribuição de tarefas e processamento.
  • 20. Frederico Madeira LPIC­1, LPIC­2, CCNA fred@madeira.eng.br www.madeira.eng.br Sistemas Distribuídos Clusters