Este capítulo fornece uma visão geral dos componentes do Balanceador de Carga e inclui as seguintes seções:
Para obter uma lista de alto nível dos recursos de configuração que são fornecidos por cada um dos componentes do Balanceador de Carga e para ajudá-lo a planejar quais recursos usar para gerenciar sua rede, consulte Gerenciando Sua Rede: Determinando Quais Recursos do Balanceador de Carga a Serem Usados.
Os cinco componentes do Balanceador de Carga são: Dispatcher, Content Based Routing (CBR), Site Selector, Controlador Cisco CSS e Controlador Nortel Alteon. O Balanceador de Carga oferece a flexibilidade para usar os componentes separadamente ou juntos, dependendo da configuração do site. Esta seção fornece uma visão geral desses componentes.
O componente Dispatcher faz o balanceamento do tráfego entre os servidores por meio de uma combinação exclusiva do balanceamento de carga e do software de gerenciamento. O Dispatcher também pode detectar um servidor com falha e encaminhar o tráfego em torno dele. O Dispatcher suporta HTTP, FTP, SSL, SMTP, NNTP, IMAP, POP3, Telnet, SIP e qualquer outro TCP ou aplicativo baseado em UDP stateless.
Todos os pedidos do cliente enviados para a máquina do Dispatcher são direcionados para o "melhor" servidor, de acordo com os pesos que são configurados dinamicamente. É possível usar os valores padrão para aqueles pesos ou alterar os valores durante o processo de configuração.
O Dispatcher oferece três métodos de encaminhamento (especificados na porta):
O componente Dispatcher é a chave para o gerenciamento estável e eficiente de uma rede de servidores grande e escalável. Com o Dispatcher, é possível vincular muitos servidores individuais no que parece ser um servidor único e virtual. Seu site é apresentado como um endereço IP único para o mundo. O Dispatcher funciona independentemente de um servidor de nomes de domínio. Todos os pedidos são enviados para o endereço IP da máquina do Dispatcher.
O Dispatcher oferece vantagens distintas no balanceamento de carga de tráfego para servidores de cluster, resultando no gerenciamento estável e eficiente de seu site.
O Figura 1 mostra uma representação física do site que usa uma configuração de rede Ethernet. A máquina do Dispatcher pode ser instalada sem fazer nenhuma mudança física na rede. Depois que o pedido do cliente for direcionado para o servidor ideal pelo Dispatcher, a resposta é enviada diretamente do servidor para o cliente sem nenhum envolvimento pelo Dispatcher ao usar o método de encaminhamento MAC.
O Figura 2 ilustra um site no qual todos os servidores estão em uma rede local. O componente Dispatcher é usado para encaminhar pedidos, e o Metric Server é usado para fornecer informações de carregamento do sistema para a máquina do Dispatcher.
Neste exemplo, o daemon do Metric Server está instalado em cada servidor de back-end. É possível usar o Metric Server com o componente Dispatcher ou com qualquer um dos outros componentes do Balanceador de Carga.
O suporte da área de longa distância no Dispatcher permite usar servidores locais e remotos (servidores em diferentes sub-redes). O Figura 3 mostra uma configuração na qual um Dispatcher local (Dispatcher 1) serve como o ponto de entrada de todos os pedidos. Ele distribui esses pedidos entre seus próprios servidores locais (ServerA, ServerB, ServerC) e para o Dispatcher remoto (Dispatcher 2), que fará o balanceamento de carga para seus servidores locais (ServerG, ServerH, ServerI).
Durante o uso do método de encaminhamento NAT do Dispatcher ou uso de suporte GRE, o suporte à longa distância com o Dispatcher também pode ser obtido usando um Dispatcher no site remoto (onde o ServerD, ServerE e ServerF estão localizados). Consulte NAT/NAPT do Dispatcher (Método de Encaminhamento NAT) e Suporte a GRE (Generic Routing Encapsulation) para obter informações adicionais.
O CBR trabalha com Caching Proxy para colocar solicitações de cliente em proxy para servidores HTTP ou HTTPS (SSL) especificados. Ele permite manipular detalhes do armazenamento em cache para a rápida recuperação de documentos da Web com baixos requisitos de largura de banda da rede. CBR e Caching Proxy examinam solicitações de HTTP usando tipos de regra especificados.
O CBR fornece a capacidade de especificar um conjunto de servidores que tratam de uma solicitação com base na expressão regular correspondente ao conteúdo da solicitação. Como o CBR permite especificar diversos servidores para cada tipo de solicitação, as solicitações podem ter a carga balanceada para uma resposta de cliente otimizada. O CBR também detecta quando um servidor em um conjunto falha e para de rotear solicitações para esse servidor. O algoritmo de balanceamento de carga usado pelo componente CBR é idêntico ao algoritmo comprovado usado pelo componente Dispatcher.
Quando uma solicitação é recebida pelo Caching Proxy, ela é verificada com relação às regras que foram definidas no componente CBR. Se uma correspondência for localizada, um dos servidores associados a essa regra será escolhido para tratar da solicitação. O Caching Proxy então executa seu processamento normal para colocar a solicitação em proxy para o servidor escolhido.
O CBR tem as mesmas funções do Dispatcher, com exceção de alta disponibilidade, subagente SNMP, longa distância e de alguns outros comandos de configuração.
O Caching Proxy deve estar em execução antes de o CBR poder iniciar solicitações do cliente de balanceamento de carga.
Figura 4 mostra uma representação lógica de um site no qual o CBR está sendo usado para colocar em proxy alguns conteúdos de servidores locais. O componente CBR usa Caching Proxy para encaminhar solicitações de cliente (HTTP ou HTTPS) para os servidores com base no conteúdo da URL.
O Site Selector age como um servidor de nomes que trabalha junto com outros em um sistema de nome de domínio para fazer o balanceamento de carga entre um grupo de servidores usando medidas e pesos que são reunidos. É possível criar uma configuração de site para permitir que você faça o balanceamento de carga do tráfego entre um grupo de servidores com base no nome do domínio usado para uma solicitação do cliente.
Um cliente envia uma solicitação para a resolução de um nome de domínio para um servidor de nomes dentro de sua rede. O servidor de nomes encaminha a solicitação para a máquina do Site Selector. O Site Selector então resolve o nome de domínio para o endereço IP de um dos servidores que foi configurado sob o nome do site. O Site Selector retorna o endereço IP do servidor selecionado para o servidor de nomes. O servidor de nomes retorna o endereço IP para o cliente.
O Metric Server é um componente de monitoramento de sistema do Balanceador de Carga que deve ser instalado em cada servidor com carga balanceada em sua configuração. Usando o Metric Server, o Site Selector pode monitorar o nível de atividade em um servidor, detectar quando um servidor é o que tem carga menos pesada e detectar um servidor com falha. O carregamento é uma medida para saber se o servidor está trabalhando pesado. Ao customizar arquivos de script de métrica do sistema, é possível controlar o tipo de medidas usadas para medir a carga. É possível configurar o Site Selector para se adequar ao seu ambiente, considerando fatores como frequência de acesso, número total de usuários e tipos de acesso (por exemplo, consultas curtas, consultas de longa execução ou cargas intensivas de CPU).
Figura 5 ilustra um site no qual o componente Site Selector é usado para responder a solicitações. Server1, Server2 e Server3 são locais. Server4, Server5 e Server6 são remotos.
Um cliente envia uma solicitação de resolução de um nome de domínio para um servidor de nomes de cliente. O servidor de nomes de cliente encaminha a solicitação por meio do DNS para a máquina do Site Selector (Caminho 1). O Site Selector então resolve o nome de domínio para o endereço IP de um dos servidores. O Site Selector retorna o endereço IP do servidor selecionado para o servidor de nomes de cliente. O servidor de nomes retorna o endereço IP para o cliente.
Após o cliente receber o endereço IP do servidor, o cliente roteia solicitações de aplicativo diretamente para o servidor selecionado (Caminho 2).
Controlador Cisco CSS forma uma solução complementar junto com os comutadores da série CSS 11000 do Cisco. A solução combinada combina o encaminhamento de pacote robusto e os recursos de roteamento de conteúdo da série CSS 11000 com os algoritmos de reconhecimento sofisticados do Balanceador de Carga para determinar as informações de carregamento e a disponibilidade do serviço (banco de dados ou aplicativo do servidor de back-end). A função do Controlador Cisco CSS utiliza algoritmo de cálculo de peso, orientadores padrão e customizado e Metric Server do Balanceador de Carga para determinar as métricas, o funcionamento e o carregamento do serviço. Com essas informações, o Controlador Cisco CSS gera pesos de serviço, que envia para o Comutador Cisco CSS para obter seleção de serviço, otimização de carregamento e tolerância a falhas ideais.
Controlador Cisco CSS controla vários critérios, incluindo:
Quando um Comutador Cisco CSS, sem Controlador Cisco CSS, está determinando o funcionamento de um serviço de fornecimento de conteúdo, ele usa tempos de resposta para solicitações de conteúdo ou outras medidas de rede. Com o Controlador Cisco CSS adequado, essas atividades são transferidas do Comutador Cisco CSS para o Controlador Cisco CSS. O Controlador Cisco CSS influencia o peso do serviço ou a capacidade de entrega de conteúdo, além de ativar ou suspender um serviço conforme apropriado quando ele ganha novamente ou perde disponibilidade.
Controlador Cisco CSS:
O Controlador Cisco CSS, junto com o Comutador Cisco CSS, entrega a solução "melhor dos dois mundos" que combina alternância de conteúdo wire-speed com reconhecimento de aplicativo sofisticado, tolerância a falhas e otimização de carregamento de serviço. O Controlador Cisco CSS faz parte de uma solução complementar geral entre o Comutador Cisco CSS e o IBM® WebSphere Application Server Load Balancer.
O Controlador Nortel Alteon, junto com a família Nortel Alteon de comutadores da Web, fornece uma solução complementar que combina capacidade e velocidade de encaminhamento de pacotes de comutadores com os algoritmos de reconhecimento sofisticados do Load Balancer para determinar pesos de servidores.
O Controlador Nortel Alteon permite desenvolver orientadores customizados capazes de executar avaliações de reconhecimento de aplicativos mais inteligentes da disponibilidade e do carregamento dos aplicativos que são usados para implementar serviços.
O Metric Server fornece informações de carregamento do sistema, como informações de utilização de CPU e memória, e uma estrutura para você desenvolver medidas de carregamento do sistema customizadas.
O Controlador Nortel Alteon coleta vários tipos de dados de métrica para determinar pesos para servidores tendo a carga balanceada por Nortel Alteon Web Switches, incluindo:
Controlador Nortel Alteon usa SNMP para se comunicar com o comutador. As informações de configuração, estado e conexão são recuperadas do comutador. Quando pesos de servidor são calculados pelo controlador, eles são configurados no comutador. O comutador usa os pesos configurados pelo controlador para selecionar o melhor servidor para lidar com solicitações de clientes para um serviço.
É possível gerenciar o controlador usando um navegador, uma GUI remota ou uma interface de linha de comandos remota.
O Controlador Nortel Alteon combinado com a família Nortel Alteon de comutadores da Web entrega a solução "melhor dos dois mundos", que combina alternância de pacote wire-speed com reconhecimento de aplicativo sofisticado, tolerância a falhas e otimização de carregamento de servidor. O Controlador Nortel Alteon faz parte de uma solução complementar entre a família Nortel Alteon de comutadores da Web e WebSphere da IBM.