[AIX HP-UX Linux Solaris Windows]

Criando um Orientador Customizado

Um orientador customizado é uma parte pequena do código Java, fornecido como um arquivo de classe, que é chamado pelo código base do Load Balancer para determinar o carregamento em um servidor. O código base fornece todos os serviços administrativos necessários, incluindo iniciar e parar uma instância do orientador customizado, fornecer status e relatórios, gravar informações de histórico em um arquivo de log e relatar resultados do orientador para o componente do gerenciador.

Sobre Esta Tarefa

Os orientadores customizados são chamados depois que orientadores nativos ou padrão forem procurados. Se o Load Balancer não localizar um orientador específico entre a lista de orientadores padrão, ele consultará a lista de orientadores customizados. Quando o código base do Load Balancer chamar um orientador customizado, as seguintes etapas deverão ser seguidas:
  1. O código base do Load Balancer abre uma conexão com a máquina servidor.
  2. Se o soquete for aberto, o código base chamará a função GetLoad do orientador especificada.
  3. A função GetLoad do orientador executa as etapas que o usuário definiu para avaliar o status do servidor, incluindo a espera de uma resposta a partir do servidor. A função termina a execução quando a resposta for recebida.
  4. O código de base do Load Balancer fecha o soquete com o servidor e relata informações de carregamento para o gerenciador. Dependendo se o orientador customizado operar no modo normal ou no modo de substituição, o código base às vezes efetua cálculos adicionais depois que a função GetLoad terminar.
Orientadores customizados podem ser designados para interagir com o Load Balancer no modo normal ou no modo de substituição. A opção do modo de operação é especificada no arquivo do orientador customizado como um parâmetro no método do construtor. (Cada orientador opera em apenas um desses modos, com base no seu design.)
  • Modo normal: o orientador customizado troca dados com o servidor e o código do orientador base cronometra a troca e calcula o valor do carregamento. O código base então relata esse valor de carregamento para o gerenciador. O orientador customizado retorna o valor zero para indicar sucesso ou um valor negativo para indicar um erro.

    Para especificar o modo normal, configure o sinalizador de substituição no construtor para false.

  • Modo de substituição: o código base não executa nenhuma medida de cronometragem. O código do orientador customizado executa quaisquer operações que forem especificadas com base nos requisitos exclusivos e então retorna um número de carregamento real. O código base aceita o número de carregamento e o relata de maneira inalterada para o gerenciador. Para obter melhores resultados, normalize os números de carregamento entre 10 e 1000, com 10 representando um servidor rápido e 1000 representando um servidor lento.

    Para especificar um modo de substituição, configure o sinalizador de substituição no construtor para true.

Como todos os orientadores, um orientador customizado estende a funcionalidade da classe base do orientador, que é chamada de ADV_Base. O orientador base executa a maioria das funções do orientador, como relatar carregamentos de volta para o gerenciador para uso no algoritmo de peso do gerenciador. O orientador base também executa operações de conexão e de fechamento de soquete e fornece métodos de envio e de recebimento para uso pelo orientador. O orientador é usado apenas para enviar e receber dados na porta especificada para o servidor que está sendo investigado. Os métodos TCP fornecidos no orientador base são cronometrados para calcular o carregamento. Um sinalizador no construtor do orientador base sobrescreve o carregamento existente com o novo carregamento retornado a partir do orientador, se desejado.
Nota: Com base em um valor configurado no construtor, o orientador base fornece o carregamento para o algoritmo de peso em intervalos especificados. Se o orientador não concluir o processamento e não puder retornar um carregamento válido, o orientador base usará o carregamento relatado anteriormente.

Procedimento

  1. Nome do orientador. Os nomes do arquivo do orientador customizados seguem o formato ADV_name.java, em que name é o nome escolhido para seu orientador.
    Evitar Problemas Evitar Problemas:
    • Você deve usar o prefixo ADV_ para o nome do orientador.
    • Você deve nomear o orientador customizado usando caracteres alfabéticos minúsculos para eliminar a distinção entre maiúsculas e minúsculas quando um operador digitar comandos na linha de comandos.
    • A classe de orientador customizada deve estar localizada no subdiretório install_root/lib/CustomAdvisors.
    • De acordo com as convenções Java, o nome da classe definido no arquivo deve corresponder ao nome do arquivo.
    gotcha
  2. Gravar seu orientador customizado. Leia o Métodos do Orientador e Chamadas de Funções Customizados para obter uma lista de chamadas de métodos e de funções a ser usada no seu orientador. Certifique-se de que orientadores customizados precisem possuir todas as rotinas necessárias. Os orientadores devem possuir os seguintes métodos de classe base:
    • Uma rotina do construtor. O construtor chama o construtor de classe de base.
    • Um método ADV_AdvisorInitialize. Esse método fornece uma maneira de executar etapas adicionais depois que a classe base concluir a inicialização.
    • Uma rotina getLoad. A classe do orientador base executa a abertura do soquete; a função getLoad precisa apenas emitir os pedidos de envio e de recebimento apropriados para concluir o ciclo de orientação.

  3. Compilar o orientador.
    • Você deve gravar orientadores customizados em linguagem Java e compilá-los com um compilador Java que esteja no mesmo nível que o código do Load Balancer. Para verificar a versão do Java no seu sistema, execute o seguinte comando a partir do diretório install_root/java/bin:
      java -fullversion
      Se o diretório atual não fizer parte do seu caminho, você precisará especificar que o Java deve ser executado a partir do diretório atual para assegurar que você esteja obtendo as informações de versão corretas. Nesse caso, execute o seguinte comando a partir do diretório install_root/java/bin:
      ./java -fullversion
    • Os seguintes arquivos são referidos durante a compilação:
      • O arquivo do orientador customizado.
      • O arquivo de classes de base, ibmnd, que está localizado no diretórioinstall_root/servers/lib.
    • A variável do seu ambiente de caminho de classe deve apontar para o arquivo do orientador e para o arquivo de classes de base durante a compilação. Um comando de compilação pode ter o seguinte formato, se seu orientador estiver no diretório atual:
      install_path/java/bin/javac -classpath install_root/servers/lib/ibmlb.jar ADV_name.java
    • A saída da compilação é um arquivo de classe, por exemplo, ADV_name.class. Antes de iniciar o orientador, copie o arquivo de classe para o diretório install_root/servers/lib/CustomAdvisors/.
    Nota: Você pode compilar orientadores customizados em um sistema operacional e executar em outro sistema operacional. Por exemplo, é possível compilar seu orientador em um sistema Windows, copiar o arquivo de classe resultante, em formato binário, para uma máquina Linux e executar o orientador customizado aqui. Para os sistemas operacionais AIX, HP-UX, Linux e Solaris, a sintaxe é semelhante.
  4. Executar o orientador customizado. Os orientadores customizados são chamados depois que orientadores nativos ou padrão forem procurados. Se o Load Balancer não localizar um orientador específico entre a lista de orientadores padrão, ele consultará a lista de orientadores customizados.
    1. Se você ainda não fez isso, copie o arquivo de classe do orientador para o subdiretório CustomAdvisors na máquina do Load Balancer. Por exemplo, para um orientador customizado chamado myping, o caminho do arquivo será install_root/servers/lib/CustomAdvisors/ADV_myping.class.
    2. Configure o Load Balancer, inicie sua função do gerenciador e emita o comando para iniciar seu orientador customizado. O orientador customizado é especificado pelo seu nome, exceto o prefixo ADV_ e a extensão do arquivo:
      dscontrol advisor start name.ext port
      O número da porta especificado no comando é a porta na qual o orientador abrirá uma conexão com o servidor de destino.



Subtópicos
Métodos do Orientador e Chamadas de Funções Customizados
Obtendo Orientação Específica do Serviço com a Opção de Pedido ou Resposta do Orientador
rprf_selfadv2tier.html
Referências relacionadas
Tópico de Tarefa Tópico de Tarefa    

Termos de Uso | Feedback

Última atualizaçãoÚltima atualização: Jun 28, 2011 4:11:22 PM EDT
Nome do arquivo: tprf_advcust.html