oracle exalogic elastic cloud

19
Oracle White Paper Janeiro de 2011 Oracle Exalogic Elastic Cloud: Uma Breve Introdução

Upload: dhari

Post on 17-Dec-2014

1.132 views

Category:

Documents


11 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Oracle exalogic elastic cloud

Oracle White Paper Janeiro de 2011

Oracle Exalogic Elastic Cloud: Uma Breve Introdução

Page 2: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

1

Introdução

Para a maioria das organizações de TI, anos de inovação, expansão e aquisições resultaram em infraestruturas difusas que forçam os limites da capacidade de gerenciamento. Embora os sistemas e aplicativos individuais em serviço geralmente sejam bem analisados e implementados com expertise, a franca escala dos investimentos contínuos em TI surge como uma preocupação dominante. Mesmo com o uso disseminado das melhores tecnologias, padrões abertos, fornecedores líderes de mercado e modernas práticas arquitetônicas, como a SOA (arquitetura orientada a serviços), grande parte das empresas está com um número excessivo de plataformas, tecnologias, domínios de expertise e fornecedores para coordenar e administrar.

Em resposta, várias tecnologias e práticas tornaram-se artigos de consumo para grandes empresas – desde virtualização e armazenamento centralizado até a padronização de software e hardware em toda a organização. Recentemente, no entanto, a discussão de técnicas específicas de contenção de despesas deu lugar a um debate mais amplo sobre a transformação da TI de um centro de custos em um centro de lucros. Essa transformação costuma envolver a adoção de uma infraestrutura mais centralizada, automatizada e flexível, comumente conhecida como nuvem privada.

As abordagens do mundo real que efetivamente cumprem a promessa da nuvem privada envolvem sistemas projetados em conjunto para o desempenho máximo com simultâneo equilíbrio entre abertura, confiabilidade, custos, flexibilidade e eficiência dos recursos. Um dos aspectos mais importantes é que esses sistemas não devem ser monolíticos e sim permitir que as empresas os implementem gradativamente, em um ritmo determinado pelas verdadeiras necessidades comerciais, dentro de cronogramas prudentes de investimento.

O Oracle Exalogic Elastic Cloud é o primeiro sistema do mundo projetado especificamente para oferecer às empresas uma base para a nuvem privada segura e de missão crítica, dotada de escala praticamente ilimitada, desempenho imbatível e simplicidade de gestão nunca imaginada antes. O Exalogic é a plataforma ideal para aplicativos de todos os tipos – dos programas departamentais de pequena escala até os maiores e mais exigentes aplicativos de ERP e mainframe. Embora seja otimizado para Enterprise Java, Oracle Fusion Middleware e Oracle Fusion Applications, o Exalogic também é um ambiente extraordinário para os milhares de aplicativos Linux e Solaris personalizados e de outros fornecedores, amplamente implementados na atualidade. Em resumo, o Exalogic é um passo gigantesco rumo à realização da visão da Oracle para o datacenter do século XXI.

Page 3: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

2

Visão Geral do Sistema Exalogic

O Exalogic é um sistema projetado, composto por componentes de hardware e software que, individualmente, são tecnologias estratégicas do portfólio de produtos da Oracle.

Figura 1. Oracle Exalogic Elastic Cloud tem hardware e software projetados em conjunto.

Oracle Exalogic Elastic Cloud Hardware

O hardware Exalogic é um equipamento pré-montado, fornecido em rack padrão de 42U e 19 polegadas. Cada configuração do Exalogic é uma unidade de capacidade de nuvem elástica equilibrada para cargas de trabalho com uso intensivo de computação. Cada configuração do Exalogic contém vários nós de computação hot-swappable (permutáveis sem interrupções), um subsistema de armazenamento em disco em cluster de alto desempenho e um fabric (estrutura) interconectado de largura de banda alta que inclui os switches necessários para conectar cada componente dentro da configuração e realizar a conexão de outros racks do Exalogic ou do Exadata Database Machine. Além disso, cada configuração inclui várias portas Ethernet de 10 Gigabits para integração com a rede de serviços do datacenter e portas Ethernet Gigabit para integração com a rede de gerenciamento do datacenter. Todas as configurações do Exalogic são totalmente redundantes em todos os níveis e foram projetadas sem um único ponto de falha.

Cada nó de computação do Exalogic é uma unidade de capacidade de computação completamente independente, com processadores de vários núcleos (multi-core) x86 Xeon ou SPARC-T3, fontes de alimentação redundantes, memória rápida ECC DIMM e InfiniBand HCAs (adaptadores Host Channel). Cada nó de computação também contém dois SSDs (discos em “estado sólido”) que armazenam imagens do sistema operacional para inicializar o nó e atuam como um espaço de swap local de alto desempenho e armazenamento para os dados de diagnóstico gerados pelo sistema durante procedimentos de gerenciamento de falhas.

O InfiniBand é fundamental para o sistema Exalogic Elastic Cloud. Além de oferecer uma interconexão incrivelmente rápida e de alta throughput (taxa de transferência) entre todas as unidades de hardware de uma implantação, ele também proporciona escalabilidade extrema, isolamento dos aplicativos e elasticidade.

Page 4: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

3

Há outras duas abordagens à ampliação da capacidade de computação de um datacenter, sendo a mais elementar a escalabilidade vertical, que acrescenta capacidade de computação a cada máquina, mas com importantes limitações. Existem limites para o quanto cada computador pode ser escalado com uma configuração equilibrada. Além disso, a escalabilidade vertical aumenta o impacto de uma simples falha do sistema. Mais recentemente, a escalabilidade horizontal popularizou-se e tem sido aplicada graças à ligação de vários computadores por meio de tecnologias básicas de rede, como a Ethernet. A escalabilidade horizontal aumenta a capacidade de computação e a tolerância a falhas individuais do sistema. No entanto, os sistemas expandidos horizontalmente funcionam como uma coletânea de computadores separados que requerem coordenação. Tal coordenação é dificultada pela throughput, latência e falta de recursos sofisticados de cluster nas redes Ethernet básicas.

Em contrapartida, o sistema Exalogic usa um fabric de I/O InfiniBand comutado sem perdas (lossless switched) que conecta todos os sistemas, formando um único computador de grande porte.

Figura 2. O Exalogic é altamente escalável.

É possível começar com um rack pequeno ou de ¼, passar para um rack médio ou de ½ e então partir para um rack completo. Depois, você poderá conectar até oito racks completos de hardware Exalogic (ou qualquer combinação de configurações Exalogic e Exadata) juntos, sem precisar de switches (comutadores) externos. Quando forem necessários mais de oito racks de hardware Exalogic ou Exadata, a Oracle oferece a opção de switches de datacenter de alta capacidade que permitem a criação de nuvens do Exalogic, formadas por centenas de racks e dezenas de milhares de processadores.

Page 5: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

4

Os sistemas Exalogic são escalados horizontalmente, ou seja, sem redução do desempenho do sistema com o aumento do tamanho da nuvem. Outro aspecto importante é que a nuvem do Exalogic é um pool de recursos que podem ser subdivididos de modo dinâmico, em unidades seguras de capacidade. Os pilares dessa capacidade estão no design do próprio InfiniBand, projetado exatamente para esse fim. O InfiniBand comporta partições, nas quais a comunicação entre duas extremidades no fabric de I/O é rigorosamente controlada nos switches deste. Cada nó de computação, ou mesmo dispositivos específicos de I/O, pode ser agrupado em partições lógicas nas quais a comunicação é permitida, mas pode ser controlada no nível mais baixo. O reforço da segurança de suas partições é outro recurso do InfiniBand, chamado virtual lanes (caminhos virtuais). Cada extremidade de I/O se comunica pelo fabric de I/O usando um ou mais desses virtual lanes, que são totalmente independentes uns dos outros e podem receber prioridades diferentes para garantir que os aplicativos tenham acesso garantido aos recursos compartilhados. Por exemplo, no caso de um aplicativo altamente crítico, o administrador pode usar esses recursos para selecionar vários nós de computação, atribuir todos os dispositivos de I/O desses nós a uma partição segura e então definir virtual lanes para acesso exclusivo ao armazenamento compartilhado, aos recursos do Exadata Database Machine e às portas externas da rede de serviços. Mais importante ainda é que, se houver mudança nos requisitos de capacidade, é possível adicionar ou remover nós de computação da partição desejada, de modo dinâmico, por meio de configuração simples.

Software do Oracle Exalogic Elastic Cloud

Java é a tecnologia de implementação de aplicativos mais difundida e bem-sucedida que as empresas usam atualmente. O Exalogic foi desenvolvido totalmente para proporcionar o ambiente ideal para aplicativos Java Enterprise e infraestrutura baseada em Java. Todo o portfólio Fusion Middleware da Oracle foi criado para implantação no Exalogic. Em última análise, quando o portfólio Oracle Fusion Applications for lançado, também poderá ser implantado no Exalogic. O software do Oracle Exalogic Elastic Cloud inclui uma série de otimizações e aprimoramentos aos produtos

principais do Oracle WebLogic Suite, a base Java essencial na qual os aplicativos Oracle de última geração estão sendo desenvolvidos. O Oracle WebLogic Suite inclui o Oracle WebLogic Server, o Oracle Coherence, o Oracle JRockit e o Oracle HotSpot.

Page 6: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

5

Além do suporte exclusivo aos aplicativos Java e ao Oracle Fusion Middleware, o Exalogic também permite que os usuários escolham os sistemas operacionais Oracle Linux ou Oracle Solaris. O Exalogic é totalmente compatível com todos os aplicativos Oracle Linux 5 e Solaris 11 padrão, sem nenhuma certificação especial para o Exalogic – todos os aplicativos Oracle certificados para as versões adequadas do Oracle Linux e Solaris contam com suporte no Exalogic.

Figura 3. O software Exalogic inclui o Oracle Enterprise Manager para gerenciamento completo do sistema.

O Oracle Enterprise Manager permite gerenciar dos aplicativos ao disco rígido, por meio do Grid Control e do OpsCenter. Com o Enterprise Manager, você pode monitorar, em tempo real e à sua escolha, cada componente de hardware na implantação do Exalogic, bem como ter o status do sistema automaticamente reportado ao Oracle Support para manutenção pró-ativa do sistema. Graças à integração com o Oracle Support, o Enterprise Manager pode aplicar pacotes de patches testados e personalizados para o Exalogic que abrangem cada camada do sistema – do sistema operacional e firmware do dispositivo ao JVM, servidor de aplicativos, pilha superior do Fusion Middleware e aplicativos Oracle.

Otimizações Técnicas do Software Exalogic Elastic Cloud

Na infraestrutura do software executado no Exalogic, há otimizações técnicas específicas feitas ao WebLogic Server, Coherence e JRockit & Hotspot que trazem ganhos de desempenho notáveis. Essas otimizações podem ser classificadas em duas categorias principais:

1. Otimizações de Software para o Hardware Exalogic: A plataforma de hardware do Exalogic Elastic Cloud é uma combinação específica de capacidade de computação, configuração de memória, recursos de rede e armazenamento voltados às cargas de trabalho de middleware. Como resultado dessa construção cuidadosa do hardware, é possível configurar e ajustar o software de modo específico para aproveitar os vários processadores e núcleos de cada nó de computação, a velocidade exata dos recursos de rede, a localidade da tecnologia Flash Storage e as características de desempenho da infraestrutura de armazenamento.

Page 7: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

6

Mesmo na infraestrutura de hardware de outro fornecedor, pode ser difícil realizar esse tipo de ajuste em virtude da abrangência das configurações disponíveis nos níveis do sistema operacional, Java VM, WebLogic Server e Coherence. Com o Exalogic Elastic Cloud, a Oracle não apenas fez o pré-ajuste da infraestrutura de software usando os recursos existentes, como realizou importantes alterações arquitetônicas no software para melhorar sensivelmente o desempenho além do que é possível em hardware de outras marcas.

2. Otimizações do Software para o Oracle Database: Um recurso crucial do Exalogic Elastic Cloud é sua excelente integração com o Oracle RAC, especialmente quando este é executado no Oracle Exadata. Os benefícios de desempenho são classificados em três áreas principais com o RAC e o Exadata:

a. O Exalogic pode ser diretamente integrado com o Exadata por meio do InfiniBand como um fabric sem switches e de alta velocidade que conecta as duas soluções de hardware. Como resultado da tecnologia InfiniBand, tais configurações tornam-se efetivamente um grande fabric de computação de alta velocidade que executa grids de middleware e de bancos de dados.

b. Para garantir que a conectividade entre o Exalogic e o Exadata não fique apenas no nível do fabric do InfiniBand, mas esteja totalmente disponível na infraestrutura de tempo de execução do WebLogic, o driver JDBC e a infraestrutura de fontes de dados do WebLogic Server foram projetados para comunicar-se de modo nativo, usando os protocolos disponíveis no InfiniBand.

c. Por fim, uma importante inovação foi lançada como parte do software do Exalogic Elastic Cloud no WebLogic Server, chamada Active GridLink for RAC. Esse recurso permite a conexão do WebLogic Server com instâncias do RAC, dentro e fora do Exadata, aumentando as conexões do JDBC com um novo canal, baseado em eventos para as instâncias do RAC retornarem as informações de status ao WebLogic Server.

Essas otimizações de comunicação entre o Exalogic e o RAC melhoram consideravelmente o desempenho dos aplicativos de processamento de transações on-line (OLTP), chegando a duplicar ou triplicar a performance em comparação ao WebLogic Server executado em hardware padrão.

Otimizações do Software do Exalogic Elastic Cloud para o Hardware do Exalogic

Talvez o aspecto mais importante para a infraestrutura de software no Exalogic seja o uso do InfiniBand como fabric de rede interno. O InfiniBand é um link de comunicações de fabric comutado padrão de mercado, amplamente usado em computação de alto desempenho e datacenters empresariais.

O Exalogic conta com o QDR (Quad Data Rate) InfiniBand que proporciona largura de banda de até 40Gb/s com baixa latência (Message Passing Interface, MPI ping) de 1,2 microssegundos. O protocolo de conexão nativo do InfiniBand é o SDP (Socket Direct Protocol), mas o padrão IP sobre InfiniBand (IPoIB) também foi incorporado, permitindo que qualquer solução baseada em TCP/IP seja executada no Exalogic. Além de largura da banda mais alta e da latência mais baixa, outra característica fundamental do InfiniBand é a capacidade de enviar pacotes consideravelmente maiores no nível da rede. Com o IPoIB, a MTU (Maximum Transmission Unit) é fixada em 64K, e com o SDP, a MTU começa em 32K e depois é autoajustada para um tamanho arbitrariamente maior, permitindo que o InfiniBand alcance a throughput máxima.

Page 8: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

7

Figura 4. InfiniBand no Exalogic.

Cópia de Buffer Reduzida

Com essa infraestrutura de rede altamente otimizada, a primeira área que precisou de atualização foi a infraestrutura de I/O do WebLogic Server, e como o tráfego de rede enviado para e recebido pelo WebLogic Server seria lido e gravado na camada de soquete no InfiniBand. O objetivo foi otimizar o fluxo de I/O do tráfego do WebLogic no fabric do InfiniBand. Nesse aspecto, o foco foi mantido em duas áreas:

1. Há vários anos, com a introdução do NIO (Native Input Output) no Java SE 1.4, o WebLogic Server expandiu sua solução de I/O nativa interna para adotar a tecnologia Java SE de maneira adequada. No Exalogic, essa abordagem foi otimizada a fim de tirar o melhor proveito dos ByteBuffers de NIO Java e não precisar copiar o conteúdo do buffer de mensagem para (ou de) qualquer buffer intermediário antes (ou após) cada invocação de uma das operações de I/O nativas do sistema operacional subjacente. O Java VM subjacente do JRockit & Hotspot também foi ajustado para oferecer suporte a essa arquitetura de rede altamente racionalizada.

Essa otimização foi realizada não só para a infraestrutura central de kernel do WebLogic Server, mas também para os elementos-chaves do modelo de programação Java EE em áreas como tempo de execução do servlet do WebLogic Server, resultando em diminuição drástica do volume de buffer copiado no modelo de programação, no tempo de execução do servidor de aplicativos, no Java VM e, por fim, nos níveis da rede. Isso complementa e fortalece diretamente o InfiniBand no Exalogic, que já conta com um nível reduzido de cópias de rede pela própria natureza de seu protocolo.

Para se ter uma ideia da magnitude dessa mudança no WebLogic Server, quatro cópias de buffer foram eliminadas – uma redução efetiva de mais de 65% nas cópias internas, por exemplo, no caminho de I/O de Java de um JSP típico ao servlet e para o kernel do WebLogic Server. A Figura 5 oferece um resumo visual dessa otimização

A Figura 4 apresenta uma visão técnica de alto nível da infraestrutura do InfiniBand no Exalogic.

Page 9: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

8

Figura 5. Redução de cópias do buffer

2. O InfiniBand habilita a comunicação interprocessos no nível da rede, usando pacotes consideravelmente maiores que a tradicional MTU de 1,5K com Ethernet – outra mudança arquitetônica introduzida no WebLogic Server foi o uso de I/O vetorial (scatter/gather ou separados/unidos). Scatter/gather refere-se ao processo de reunir ou separar dados de um determinado conjunto de buffers ou mensagens em uma única operação, em vez de várias. Como cada operação de leitura/gravação envolve uma (onerosa) chamada de espaço do usuário para o kernel, isso representa uma importante economia de ciclos de CPU.

Com I/O scatter/gather, na verdade, o WebLogic Server consegue usar uma única chamada de procedimento para, sequencialmente, gravar dados de várias mensagens (por exemplo, partes de 4K no WebLogic Server) em um único fluxo de dados e fazer a leitura correspondente desse fluxo para várias mensagens. Com essa mudança, passa a existir uma impedância notavelmente menor entre o tamanho da mensagem interna (4K) no WebLogic Server e a MTU de 64K com IPoIB e, em especial, a MTU arbitrariamente grande com SDP. Essa abordagem complementa as otimizações de buffer de NIO acima citadas e foi crucial para a construção e desconstrução do fluxo de pacotes maiores pelo InfiniBand para, entre e das instâncias do WebLogic Server. A Figura 6 fornece uma visão geral da I/O scatter/gather com o Exalogic.

Page 10: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

9

Figura 6: I/O Scatter Gather I/O com WebLogic Server no Exalogic

Canais Paralelos sobre SDP (Socket Direct Protocol)

O próximo conjunto de alterações foi centrado em permitir que a infraestrutura de canais de rede do WebLogic Server aproveitasse o InfiniBand de modo nativo. O SDP propriamente dito foi integrado nas várias camadas da pilha de software, especificamente no driver do Oracle JDBC e no JRockit & Hotspot, para depois retornar por meio de propriedades configuráveis padrão no WebLogic Server. Graças a essa modificação, todos os canais de rede no WebLogic Server – HTTP(S), T3(S), IIOP (S), dentre outros – podem se comunicar nativamente pelo SDP.

Como o WebLogic Server foi originalmente otimizado para Ethernet de 10Gbs, as cargas de trabalho do Java EE padrão, como programas baseados em mensagens, aplicativos de Internet e de bancos de dados, foram reavaliadas para determinar em quais aspectos eles poderiam ser otimizados para o InfiniBand. Uma área importante na qual as otimizações podem ser vistas é a I/O de rede baseada em soquete – de, para e entre instâncias do WebLogic Server.

O WebLogic Server usa um conceito chamado canais de rede para processar essa comunicação. Para facilitar vários protocolos – HTTP(S), T3(S), IIOP(S), dentre outros – em um único canal de rede, o WebLogic Server usa um elemento interno de baixo nível chamado muxer, que atua como um multiplexador e demultiplexador para o tráfego de rede. Nessa área, foram projetadas duas alterações exclusivas no WebLogic Server:

1. A MTU (Maximum Transmission Unit) padrão na Ethernet de 10Gbs é de 1,5K, e esse é o padrão configurado na distribuição standard do WebLogic Server. No entanto, como o InfiniBand permite uma MTU consideravelmente maior com IPoIB, (64K), e uma MTU autoajustada arbitrariamente grande sobre SDP, o WebLogic Server no Exalogic foi otimizado, inicialmente, por meio da alteração da I/O scatter/gather para gravar grandes volumes de dados na MTU disponível para a pilha do protocolo InfiniBand – seja o protocolo escolhido IPoIB ou SDP.

2. Quando a MTU maior foi combinada com a largura de banda mais alta do InfiniBand, foi necessário reconstruir a infraestrutura de muxer do WebLogic Server para despachar, de modo ideal, a taxa consideravelmente maior de pacotes fluindo para, entre e das instâncias do WebLogic Server.

Page 11: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

10

Para tanto, foram adicionados outros seletores de canal executados em paralelas para processar as mensagens recebidas pelos canais da rede para o WebLogic Server. Essa capacidade de muxer paralelo recém-incluída, ajustada para comportar a velocidade do InfiniBand, efetivamente removeu qualquer bloqueio que poderia ser provocado pelo fluxo mais rápido de entrada de pacotes.

Essa combinação de aumento da MTU e inclusão de paralelização adicional na infraestrutura de despachos internos do WebLogic Server proporcionou uma notável melhoria no desempenho em todos os protocolos de rede no WebLogic. A Figura 7 ilustra esse conjunto de mudanças com uma comparação de “antes” e “depois”.

Figura 7. Da comunicação interprocessos padrão para a comunicação interprocessos do Exalogic

Tamanho do Pool de Threads Otimizado

As otimizações de software com base na infraestrutura de hardware do Exalogic não se limitaram apenas à adoção nativa do InfiniBand para o máximo desempenho da rede com SDP e IPoIB, e a uma reavaliação importante da infraestrutura de I/O de Java no WebLogic Server – a infraestrutura do pool de threads também foi otimizada.

Para entender como esse pool autoajustado foi otimizado, é fundamental entender como ele funcionava antes. Antes do Exalogic, o pool de threads autoajustado do WebLogic Server monitorava a throughput geral a cada dois segundos e usava os dados coletados para determinar quando a contagem de threads deveria ser alterada. O algoritmo levava em conta uma combinação da contagem de threads presente, da throughput medida e do histórico anterior para determinar quando aumentar ou diminuir a contagem de threads, e quando adicionar novos threads automaticamente ao pool, ou removê-los, conforme necessário.

Page 12: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

11

Para tirar proveito da configuração de hardware específica do Exalogic – que contém 30 nós de computação, cada qual com dois processadores e seis núcleos por processador – o pool de threads autoajustado do WebLogic Server foi alterado para reconhecer originalmente a capacidade subjacente de processamento de hardware e o algoritmo de alocação de threads foi modificado para ajustar-se com base nessa informação.

Em vez de adicionar um thread ao total de cada vez, o WebLogic Server agora conta com a vantagem de conhecer a densidade mais alta dos núcleos e o hyper-threading (múltiplas threads em simultâneo) disponível no hardware para aumentar a contagem de threads em um número consideravelmente maior: 24 de cada vez. Esse avanço resultou em um algoritmo de autoajuste reprojetado, que proporciona o desempenho ideal aos aplicativos Java no Exalogic, com rapidez muito superior à das versões anteriores do WebLogic Server, especialmente conforme essas cargas de trabalho variam ao longo do tempo.

A Figura 8 é uma ilustração com uma visão geral das otimizações do modelo de threading.

Figura 8. Otimizações do pool de threads autoajustado para o desempenho ideal do Exalogic

Otimizações do Software do Exalogic Elastic Cloud para o Oracle Database

Um dos principais objetivos de design do Exalogic foi otimizar sua infraestrutura com o Oracle RAC e o Oracle RAC Exadata. Além de projetar a conectividade específica do InfiniBand entre os racks do Exalogic e do Exadata na configuração de hardware que, por sua vez, é carregada nesse fabric e das otimizações ao desempenho de software do Exalogic Elastic Cloud descritas anteriormente, o WebLogic Server foi aprimorado com um novo recurso chamado Active GridLink for RAC. Parte do software do Exalogic Elastic Cloud, esse recurso integra as fontes de dados do WebLogic Server com o Oracle RAC, em uma nova abordagem arquitetônica.

Page 13: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

12

Especificamente, o RAC oferece suporte a um mecanismo de notificação do cliente com base em eventos para distribuir informações sobre o status de um cluster do RAC. O recurso Active GridLink for RAC, manifestado no WebLogic Server como um tipo de fonte de dados GridLink, otimiza ainda mais a infraestrutura de fontes de dados testada e aprovada do WebLogic Server, utilizando as informações contidas nas notificações do RAC para proporcionar conectividade aprimorada na forma de respostas mais rápidas a eventuais falhas de nó do RAC e atividades de manutenção, melhor uso dos recursos de cluster do RAC e maior eficiência na gestão e no monitoramento. Um dos aspectos mais importantes é que o processamento inteligente em tempo de execução dessas informações de eventos do RAC resultou em melhoria substancial de desempenho para as cargas de trabalho de banco de dados OLTP com base no WebLogic do Exalogic e do Exadata, em comparação às infraestruturas de outros fornecedores.

Única Fonte de Dados

O recurso Active GridLink for RAC também simplifica e consolida a configuração e a administração das fontes de dados do WebLogic Server, fornecendo uma única fonte de dados aprimorada para comportar os recursos do RAC. A administração tornou-se muito mais fácil e diferente da realizada no tradicional modelo com várias fontes de dados (ainda suportado), que traz uma combinação de uma fonte de dados por nó do RAC e outra fonte de dados lógicos como camada de proxy, representando a coleta resultante das fontes de dados do RAC. Por exemplo, em um cluster Oracle de quatro nós no Exadata, a configuração das fontes de dados do WebLogic Server diminuiria de cinco fontes de dados distintas (uma para cada nó do RAC e uma fonte de dados de proxy) para uma com o Active GridLink for RAC.

Failover de Conexão Rápida

O ONS (Oracle Notification Service) é usado pelo banco de dados do Oracle RAC para divulgar os eventos que descrevem alterações de seu status. Com o Active GridLink for RAC, o WebLogic Server é registrado para receber as notificações do ONS e reconhece rapidamente quaisquer alterações de status em um banco de dados do RAC. Essa abordagem do Exalogic pode ser infinitamente mais rápida que o método de pesquisar de várias fontes de dados ou, no pior caso, timeouts (tempo esgotado) de TCP/IP. Com esses eventos de notificação de alteração do status, o WebLogic Server pode adaptar seus pools de conexão de modo inteligente, em tempo de execução, para fornecer acesso contínuo e confiável aos bancos de dados do RAC quando ocorrem alterações. A Figura 9 mostra como esse recurso permite que o WebLogic Server opere sem paralisações (downtime), esteja o nó do RAC on-line ou off-line.

Figura 9. WebLogic Server com FCF (failover de conexão rápida) para RAC

Page 14: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

13

Balanceamento da Carga de Conexão em Tempo de Execução

Para proporcionar melhor throughput e uso mais eficiente dos recursos, o Oracle Database fornece um serviço completo de balanceamento de carga em tempo de execução para distribuir as conexões pela instância do Oracle RAC com base nos objetivos de desempenho definidos pelo administrador do banco de dados. Esse serviço emite eventos “FAN” (Fast Application Notification) que avisam os clientes sobre o status atual do cluster, incluindo orientações sobre o direcionamento das conexões.

O WebLogic Server recebe os eventos de orientação para balanceamento de carga emitidos pelo banco de dados e distribui as conexões para os nós Oracle RAC de maneira adequada. Esse recurso está disponível como uma opção de configuração de balanceamento de carga em tempo de execução da fonte de dados do Active GridLink for RAC. Quando ativado, ele se baseia nas orientações recebidas do banco de dados para determinar as conexões de despacho do pool, fazendo com que sejam direcionadas a um nó específico do banco de dados para cumprir a meta de desempenho definida pelo administrador do BD. A Figura 10 apresenta uma visão geral do funcionamento do balanceamento de carga em tempo de execução com os nós do WebLogic escolhendo o nó menos carregado para direcionar o tráfego.

Figura 10. Balanceamento de carga em tempo de execução para o nó menos carregado do RAC

XA Affinity

XA Affinity é um recurso de desempenho que garante que todas as operações do banco de dados executadas no cluster do Oracle RAC, no contexto de uma transação global, sejam direcionadas para a mesma instância do Oracle RAC. A afinidade será estabelecida com base na ID da transação global, e não segundo cada fonte de dados, para garantir que todas as conexões obtidas das diferentes fontes de dados configuradas no mesmo cluster do Oracle RAC sejam associadas à mesma instância do RAC. A Figura 11 mostra um resumo de como o XA Affinity permite que o WebLogic Server tenha afinidade transacional com os nós do RAC.

Page 15: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

14

Figura 11. Afinidade do nó do RAC do WebLogic

Desligamento Gradual do Banco de Dados

Um desligamento planejado gradual (Graceful Shutdown) ocorre quando um nó ou serviço do banco de dados é designado para tanto, com a emissão correspondente de um evento do banco de dados indicando a solicitação de desligamento. Para comportar o desligamento planejado gradual de um banco de dados, o Active GridLink for RAC não anula imediatamente as conexões que estão em uso quando detecta que o alvo de desligamento do banco de dados não está mais aceitando novas conexões. Em vez disso, a fonte de dados do GridLink permite a conclusão das transações em andamento antes de fechar e recriar as conexões físicas, enquanto elimina conexões inativas para que novas solicitações de conexões não sejam enviadas para o banco de dados designado em modo de desligamento ativo.

BenefíciosDesempenho Extremo de Java

A combinação de software e hardware do Oracle Exalogic resulta em ganhos substanciais de desempenho para os aplicativos baseados em Java executados no WebLogic Server e outras tecnologias Oracle Fusion Middleware. Para que você entenda a extensão dos ganhos obtidos com a execução de aplicativos no Exalogic, comparamos o desempenho do Exalogic com o de uma configuração1 alternativa típica em três exemplos representativos.

1 A Oracle desenvolveu um sistema de referência padrão com base na análise dos ambientes típicos que os clientes usam. Esse sistema usa o mesmo número e tipo de processadores Intel, a mesma capacidade de RAM e armazenamento em disco local. Ele também usa switches e adaptadores de rede Ethernet padrão em vez do fabric do InfiniBand do Exalogic. Versões idênticas do Oracle Linux e do software Oracle WebLogic Suite foram implantadas tanto no sistema do Exalogic quanto no de referência. Para a implantação no Exalogic, todos os aprimoramentos do software do Oracle Exalogic Elastic Cloud foram ativados e configurados, enquanto o software implantado no sistema de referência usou ajuste e configuração padrão. Os aprimoramentos do software do Exalogic não podem ser usados em hardware de outros fornecedores.

Page 16: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

15

Capacidade de Resposta dos Aplicativos (Latência)

Analisamos várias operações frequentemente usadas em um típico aplicativo da Web, como ‘Criar serviço da web’, ‘Comprar’, ‘Gerenciar’ e ‘Procurar’, e identificamos ganhos de até 14x em comparação com uma plataforma padrão.

Figura 12. O Exalogic aumenta a capacidade de resposta dos aplicativos da web em até 14x em comparação com uma alternativa típica.

Capacidade dos Aplicativos (Throughput)

Comparamos a execução da lógica comercial essencial de Java, usando um teste de benchmark representativo e constatamos um aumento de 60% na capacidade dos aplicativos — no número de operações por segundo.

Figura 13. O Exalogic melhora a execução da lógica comercial essencial de Java em 60%.

Comunicação do Banco de Dados

Em uma terceira análise, observamos o desempenho de um aplicativo com uso intensivo de banco de dados — ou seja, o que o Exalogic pode fazer pelos aplicativos transacionais que dependem de interações frequentes com o banco de dados. Mais uma vez, em comparação com uma configuração típica de hardware para o aplicativo em questão, constatamos que a superioridade de processamento e I/O do Exalogic para o banco de dados duplica ou triplica o desempenho das operações de banco de dados.

Page 17: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

16

Figura 14. O Exalogic duplica ou triplica a velocidade das interações com o banco de dados.

“Projetados em Conjunto” Significa Instalação Rápida e Operação Eficiente

Além do desempenho extremo, por ter seu hardware e software projetados em conjunto, o Exalogic também permite que os clientes instalem e executem o Exalogic com esforço muito menor em relação

aos ambientes alternativos. O Exalogic foi ajustado para uma grande variedade de tipos de carga de trabalho — uso intensivo de processos, dados, I/O etc.— e, portanto, não precisa de configuração de parâmetros para um determinado ambiente. Essa vantagem se converte numa redução de 95% no tempo de instalação. Mas o benefício não se traduz apenas em menos trabalho na instalação, significa também que todos os clientes executam a mesma configuração do Exalogic testada e ajustada na fábrica da Oracle, reduzindo substancialmente o risco de erros, simplificando o diagnóstico e proporcionando maior eficiência e economia operacionais. Os custos totais podem ser reduzidos em 60%.

Base para Nuvem de Missão Crítica

Até hoje, muitos esforços de nuvem empresarial concentraram-se na consolidação de cargas de trabalho não essenciais, como ambientes de testes, em virtude da falta de experiência ou confiança nas novas tecnologias e abordagens. Com o Exalogic, as empresas podem superar ou eliminar essas etapas e trazer os benefícios da consolidação e da capacidade elástica para as cargas de trabalho de produção de missão crítica.

Os benefícios de desempenho do Exalogic são diretamente relevantes para os aplicativos de missão crítica. A maturidade e a excelência de design do hardware e do software do Exalogic conferem confiabilidade inigualável. As garantias exclusivas de distribuição e o particionamento robusto habilitados pelo fabric de interconexão do InfiniBand significam que cargas de trabalho amplamente diferentes podem ser executadas em conjunto no Exalogic com o isolamento necessário. Além disso, graças ao amplo escopo de tipos de carga de trabalho que o Exalogic comporta com seu ajuste de fábrica, essas diferentes cargas de trabalho recebem os benefícios de desempenho do Exalogic sem precisarem de configuração individualizada que poderia prejudicá-las ou provocar complexidade operacional.

Page 18: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud

17

Figura 15. O Exalogic é uma plataforma ideal para consolidação de várias cargas de trabalho distintas.

O gerenciamento consistente em todo o sistema com o Enterprise Manager fornece monitoramento do nível dos serviços, automação baseada em políticas e robusto ajuste da capacidade dinâmica em conjunto com o cluster de WebLogic Server e Coherence.

Conclusão

A necessidade que as organizações de TI empresarial têm de fornecer recursos de nuvem de última geração, como capacidade elástica, ao mesmo tempo em que atendem os requisitos cada vez mais rigorosos de desempenho e confiabilidade impulsiona a demanda por uma nova abordagem à infraestrutura. Não importa se as cargas de trabalho são baseadas na web ou em thick-client, e há uso intensivo de dados ou processamento, ou se o ambiente é homogêneo ou heterogêneo, o segredo do sucesso é ter hardware e software projetados em conjunto para proporcionar melhor desempenho, confiabilidade e escala. O desenvolvimento ou uso de sistemas adaptados com finalidade específica para diferentes aplicativos é uma abordagem que provoca desperdícios e eleva os custos. O Oracle Exalogic Elastic Cloud, a primeira e única máquina de middleware integrado do mundo, supera consideravelmente as soluções alternativas e oferece às empresas a melhor base possível para a execução dos aplicativos.

Com a consolidação dos aplicativos com o Oracle Exalogic Elastic Cloud, as empresas poderão:

• Acelerar em 14x o desempenho dos aplicativos Java.

• Aumentar a confiabilidade e a escalabilidade além dos mais rigorosos requisitos de missão crítica.

• Reduzir o esforço de implantação em até 95% e os custos em 60%. Comece já a transformação de datacenter com o Exalogic.

Page 19: Oracle exalogic elastic cloud

Oracle Exalogic Elastic Cloud:Uma Breve IntroduçãoSetembro de 2010Autores: Mike Piech, Mike PalmeterMike Lehmann

Oracle CorporationSede Mundial500 Oracle ParkwayRedwood Shores, CA 94065Estados Unidos

Consultas:Fone: +1.650.506.7000Fax: +1.650.506.7200oracle.com

Copyright © 2010, Oracle e/ou suas controladas e coligadas. Todos os direitos reservados. Este documento é fornecido somente para fins informativos e seu conteúdo está sujeito a alterações sem aviso prévio. Este documento não está livre de erros, tampouco está sujeito a quaisquer outras garantias ou condições expressas verbalmente ou implícitas em lei, como garantias e condições implícitas de comercialização ou adequação para um determinado fim. Isentamo-nos especificamente de qualquer responsabilidade legal com relação a este documento e nenhuma obrigação contratual será formada direta ou indiretamente por meio do presente. Este documento não pode ser reproduzido ou transmitido, sob qualquer forma ou meios, eletrônicos ou mecânicos, para qualquer fim, sem nossa permissão prévia, por escrito.

Oracle e Java são marcas comerciais registradas da Oracle e/ou suas controladas e coligadas. Outros nomes podem ser marcas registradas de seus respectivos donos.

AMD, Opteron, os logotipos AMD e AMD Opteron são marcas comerciais ou registradas da Advanced Micro Devices. Intel e Intel Xeon são marcas comerciais ou registradas da Intel Corporation. Todas as marcas SPARC (comerciais e/ou registradas) são usadas sob licença e pertencem à SPARC International, Inc. UNIX é uma marca registrada licenciada pela X/Open Company, Ltd. 0410