Red Hat Cluster Suite for RHEL 5.2 Versão: 090320 Visão Geral do Red Hat Cluster Suite • Sistemas Clustered (Agrupados) provêem confiabilidade, escalabilidade e disponibilidade para serviços críticos de produção • Usando o RHCS podemos criar um cluster para apropriado para as necessidades de performance, alta disponibilidade, balanceamento de carga, escalabilidade, compartilhamento de arquivos e economia 1. Fundamentos dos Cluster • Um cluster é formado por dois ou mais computadores, chamados nós ou membros, que trabalham em conjunto para execução de uma tarefa • Existem quatro tipos principais de clusters: – Storage (armazenamento) – High Availability (alta disponibilidade) – Load Balancing (balanceamento de carga) – High Performance (alta performance) Introdução ao RHCS Storage Cluster (Cluster de Armazenamento) • Provê uma imagem consistente do sistema de arquivos através de todos os servidores em um cluster, permitindo que os servidores leiam e escrevam simultaneamente em um único sistema de arquivos compartilhado. • Um cluster de armazenamento simplifica a administração do storage (armazenador) limitando a instalação e o patching de aplicações para um único sistema de arquivos High Availability Clusters (Cluster de Alta Disponibilidade) • Provê disponibilidade contínua de serviços eliminando os pontos único de falhas e transferindo serviços de um nó do cluster a outro nó do cluster no caso que um nó torne-se inoperante • Tipicamente, serviços em clusters de alta disponibilidade leem e escrevam dados (via sistemas de arquivos read/write montados). Load-balancing clusters (Clusters de Balanceamento de Carga) • Cluster de balanceamento de carga disparam requisições de serviços de rede a múltiplos nós do cluster para balancear a carga de requisições entre os vários nós do cluster. O balanceamento de carga prove escalabilidade de porque você pode "combinar" o número de nós de acordo com a carga de requisições. • Se um nó em um cluster de balanceamento de carga se tornar inoperante, o software de balanceamento de carga detecta a falha e redireciona as requisições para outros nós da rede High-performance Cluster (HPC) • Usa os nós do cluster para fazer cálculos concorrentes. Um cluster de alta performance permite que aplicações trabalharem em paralelo e portanto melhorando a performance das aplicações (clusters de alta performance são também referidos como clusters computacional ou grid computing) 2. Introdução ao RHCS • Red Hat Cluster Suite é um conjunto integrado de componentes de software que podem ser distribuídos em uma variedade de configurações para atender suas necessidades de performance, altadisponibilidade, balanceamento de carga, compartilhamento de arquivos e economia Componentes • Infra-estrutura de Cluster – Provês funções básicas para que os nós trabalhem juntos como um cluster: gerenciamento de configuração de arquivos, gerenciamento de associados, gerenciamento de locks e fencing • Gerenciamento de Serviços de Alta-Disponibilidade (High-availability Service Management) – Provê serviços de failover de um nó a outro nó do cluster em caso do primeiro nós ficar inoperante • Ferramentas de Administração do Cluster (Cluster administration tools) – Ferramentas de gerenciamento e configuração para estabelecer, configurar e gerenciar um cluster Red Hat. As ferramentas são para serem usadas com os componentes de Infra-Estrutura do Cluster, seriços de alta-disponibilidade e componentes de gerenciamento de serviços e armazenamento • Servidor Linux Virtual (Linux Virtual Server (LVS)) – Software de roteamento que provê balanceamento de carga de IPs. O LVS roda em um par de servidores redundantes que distribuem as requisições dos clientes uniformemente aos servidores reais que estão por trás dos servidores LVS. Componentes Suplementares (pacote opcional – não faz parte do RHCS) • Red Hat GFS (Global File System) – Provê um sistema de arquivos ao cluster para uso com o RHCS. GFS permite que múltiplos nós compartilhem o armazenamento em nível de bloco como se o storage estivesse conectado localmente a cada nó do cluster • Cluster Logical Volume Manager (CLVM) – Provê gerenciamento de volumes do storage do cluster • Global Network Block Device (GNBD) – Um componente auxiliar do GFS que exporta armazenamento em nível de blocos para Ethernet. Esta é uma maneira econômica de fazer armazenamento em nível de blocos disponivel para Red Hat GFS Infra-estrutura de Cluster • A infra-estrutura de cluster faz as seguintes funções: – Gerenciamento do Cluster – Gerenciamento de Lock – Fencing – Gerenciamento da configuração do Cluster Gerenciamento de Serviços de Alta Disponibilidade (High Availability Service Management) Ferramentas de Administração do Cluster (Cluster administration tools) Servidor Linux Virtual (Linux Virtual Server (LVS)) 3 – Infra-Estrutura de Cluster (Cluster Infrastructure) • A infra-estrutura de cluster do RHCS prove as funções básicas para um grupo de computadores (chamados nós ou membros) para trabalharem em conjunto como um cluster. Uma vez que o cluster esteja formado usando uma infra-estrurura do cluster, você poderá usar outros componentes do RHCS para se adaptar a suas necessidades de cluster (por exemplo, estabelecer um cluster para compartilhamento de arquivos no sistema de arquivos GFS ou estabelecer um serviço de failover) Infra-Estrutura de Cluster A infra-estrutura de cluster executa as seguintes funções: • Gerenciamento de Cluster (Cluster Management) • Gerenciamento de Locks (Lock Management) • Fencing (é a desconexão de um nó de um cluster de armazenamento compartilhado) • Sistema de Configuração do Cluster (Cluster Configuration System) Gerenciamento de Cluster (Cluster Management) Gerenciamento de Trava (Lock Management) • DLM (Distributed Lock Manager) ou Gerenciamento de Lock (travas) Distribuído Fencing • Fence daemon, fenced • RHCS provê uma variedade de métodos de fencing: – Power fencing (corte de energia) – Fiber channel switch fencing (desligamento do canal de comunicação de fibra óptica) – GNBD fencing – Other fencing (outros mecanismos) Cluster Configuration System (CCS) • O CCS gerencia a configuração do cluster e prove informações de configuração a outros componentes do cluster em um RHCS • O CCS executa em cada nó do cluster e garante que o arquivo de configuração em cada nó esteja atualizado • O Cluster Configuration File é um arquivo XML que descreve as seguintes características do cluster: – – – – Nome do cluster Cluster Fence device Managed resource 4. Gerenciamento de Serviços de Alta-Disponibilidade (Highavailability Service Management) • Serviço de cluster de alta-disponibilidade (Highavailability cluster service) • Cluster resources – são blocos de montagem (building blocks) que você cria e gerencia no arquivo de configuração do cluster, por exemplo: um endereço IP, um script para inicialização de uma aplicação, ou uma partição compartilhada do RH GFS • Failover domain (domínio de falha) – é um subconjunto de nós de cluster que são elegíveis para executar um serviço de cluster particular Gerenciamento de Serviços de Alta-Disponibilidade (Highavailability Service Management) • Cluster service • Failover priority • Cluster resource 5 – Red Hat GFS • 5.1 – Superior Performance and Scalability • 5.2 – Performance, Scalability, Moderate Price • 5.3 – Economy and Performance Red Hat GFS • Red Hat GFS (Global File System) é um sistema de arquivo em cluster que permite a um agrupamento de nós acessarem simultaneamente um dispositivo de blocos que é compartilhado entre os nós. 5.1 Superior Performance and Scalability GFS com um SAN (Storage Area Network) 5.2 Performance, Scalability, Moderate Price GFS e GNBD com um SAN (Storage Area Network) 5.3 Economia e Performance (Economy and Performance) GFS and GNBD with Directly Connected Storage 6 – Cluster Logical Volume Manager (CLVM) • O componente chave no CLVM é o clvmd • LVM2 (Logical Volume Manager 2 Gerenciador de Volumes Lógicos 2) • Interface de Usuário Gráfica do LVM Visão Geral do CLVM Criação de Volumes Lógicos • Logical Volumes (Volumes Lógicos) – lvcreate • Volume Group – vgcreate • Physical Volumes (Volumes Físicos) – pvcreate • Linux Partitions (Partições Linux) Criando Volumes Lógicos 7 – Global Network Block Device (GNBD) • GNBD consiste de dois componentes principais: – GNBD cliente: executa em um nó com GFS e importa um bloco exportado por um servidor GNDB – GNBD servidor: executa em outro nó e exporta block-level storage de seu storage local (diretamente conectado ou via SAN) Global Network Block Device • Múltiplos clientes GNDB podem acessar um dispositivo exportado por um servidor GNDB, fazendo o GNDB apropriado ao uso por um grupo de nós rodando GFS Visão Geral do GNBD (Global Network Block Device) 8 – Linux Virtual Server (LVS) • 8.1 – Topologia LVS de duas camadas • 8.2 – Topologia LVS de três camadas • 8.3 – Métodos de Roteamento – 8.3.1 Roteamento via NAT (Network Address Translator) – 8.3.2 Roteamento Direto (DR) 8.1 Topologia LVS em duas camadas (Two-tier LVS Topology) 8.2 Three-Tier LVS Topology 8.3 Métodos de Roteamento • NAT Routing • Direct Routing 8.3.1 Roteamento usando NAT Roteamento usando Direct Routing (DR) 8.4 Persistência e Firewall Marks • Persistência • Firewall Marks Persistência (Persistence) Firewall Marks 9 – Ferramentas de Administração do Cluster • Ferramentas para administração do Cluster • 9.1 – Conga • 9.2 – Cluster Administration GUI – 9.2.1 – Cluster Configuration Tool – 9.2.2 – Cluster Status Tool • 9.3 – Command Line Administration Tools 9.1 Conga Conga provê as seguintes características principais: • Uma interface Web para o gerenciamento do cluster e do storage • Distribuição automatizada de dados do cluster e pacotes de suporte • Integração fácil com clusters existentes • Não há necessidade de re-autenticação • Integração de status e logs do cluster • Controle fino (fine-grained) sobre as permissões do usuário Conga • Os principais componentes no Conga são: – luci - é um servidor que roda em um computador e comunica com múltiplos clusters e computadores através do ricci – ricci - é um agente que executa em cada computador (um membro do cluster ou um computador isolado) gerenciado pelo Conga luci • É acessível através do navegador e provê três funções principais acessadas através das seguintes abas: – homebase – cluster – storage 9.2 Cluster Administration GUI • system-config-cluster • A ferramenta consiste de duas funções principais: – Cluster Configuration Tool permite criar, editar e propagar o arquivo de configuração do cluster (cluster configuration tool) – Cluster Status Tool provê habilidade de gerenciar serviços de alta disponibilidade Cluster Configuration Tool Cluster Status Tool 9.3 Ferramanetas de Administração através de linha de comandos (Command Line Administration Tools) Ferramentas de linha de comando • ccs_tool (Cluster Configuration System Tool) • cman_tool (Cluster Management Tool) • fence_tool (Fence Tool) • clustat (Cluster Status Utility) • clusvcadm (Cluster User Service Administration Utility) 10 – Linux Virtual Server Administration GUI • • • • 10.1 – Control/Monitoring 10.2 – Global Settings 10.3 – Redundancy 10.4 Virtual Servers – SubSeção Virtual Server – SubSeção Real Server – SubSeção Edit Monitoring Scripts Piranha Configuration Tool Red Hat Cluster Suite Component Summary • Seção 1 – Componentes do Cluster • Seção 2 – Man Pages • Seção 3 – Hardware Compatível 1 – Componentes do Cluster Função Componentes Conga luci ricci Cluster Configuration Tool Cluster Configuration System (CCS) Cluster Manager (CMAN) Resource Group Manager (rgmanager) Fence DLM (Distributed Lock Manager) GFS (Global File System) GNBD (Global Network Block Device) LVS (Logical Volume Quorum Disk Descrição 2 – Man Pages 3 – Hardware Compatíveis Bibliografia • [1] Red Hat Cluster Suite for Red Hat Enterprise Linux 5.2. Cluster_Suite_Overview ISBN: N/A. Publication date: May 2008 RHCS Sumário dos Componentes do RHCS Links • http://en.wikipedia.org/wiki/Highavailability_cluster • http://en.wikipedia.org/wiki/Red_Hat_Clust er_Suite