Garantindo alta disponibilidade para aplicativos bancários baseados em nuvem

Garantindo alta disponibilidade para aplicativos bancários baseados em nuvem

É tentador pensar que um provedor de serviços em nuvem garantirá a alta disponibilidade de seus aplicativos bancários críticos baseados em nuvem. O problema é que eles realmente não o fazem.

Garantindo alta disponibilidade para aplicativos bancários baseados em nuvem PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.Garantindo alta disponibilidade para aplicativos bancários baseados em nuvem PlatoBlockchain Data Intelligence. Pesquisa vertical. Ai.
Todd Doane, arquiteto de soluções, tecnologia SIOS

Seu provedor de nuvem pode ter ajudado você a configurar um cluster de máquinas virtuais (VMs) executadas em vários data centers ou zonas de disponibilidade (AZs). Pode ter implementado um sistema de failover automatizado para garantir que uma VM em espera na configuração possa assumir o controle imediatamente se a VM primária ficar off-line repentinamente. Parece que deveria oferecer alta disponibilidade, certo?

Mas observe atentamente o acordo de nível de serviço (SLA) que descreve a alta disponibilidade: O SLA garante que pelo menos uma das VMs no seu sistema estará acessível pelo menos 99.9% ou mesmo 99.99% do tempo. Mas isso não é garantia de disponibilidade de aplicativos ou dados. Se a VM restante não conseguir acessar a infraestrutura de armazenamento onde residem seus aplicativos e dados bancários, seus aplicativos críticos ficarão efetivamente off-line.

Garantindo a acessibilidade na nuvem

Como você pode garantir que seus aplicativos e dados bancários críticos permaneçam altamente acessíveis na nuvem ou em uma configuração híbrida local/nuvem, se a configuração da tecnologia subjacente para failover automatizado em várias AZs for insuficiente?

Vamos começar dizendo que ter VMs agrupadas espalhadas entre várias AZs é fundamental para garantir a alta disponibilidade (HA) de seus principais aplicativos e dados. Além disso, o que você precisa é de uma estratégia para garantir que cada uma dessas VMs tenha acesso aos aplicativos e dados críticos que você deseja manter em execução. É aí que as abordagens tradicionais de alta disponibilidade divergem quando se trata da nuvem.

Em uma configuração de HA tradicional, ou seja, local, você pode criar um cluster de failover que consiste em vários servidores ou VMs e uma rede de área de armazenamento (SAN), onde residem seus aplicativos e dados. Qualquer servidor ou VM no cluster poderia interagir com os aplicativos e dados na SAN, portanto, se a VM que executa ativamente um aplicativo principal ficasse off-line repentinamente, o cluster faria failover automaticamente para outra VM que pudesse interagir com a SAN e começar a executar o aplicação e atualizando o mesmo banco de dados que a máquina anterior estava usando.

Configurando para a nuvem

Na nuvem, porém, não existe uma opção real para criar uma SAN compartilhada. Existem algumas opções de armazenamento compartilhado, mas elas não foram criadas para fornecer o desempenho ou os níveis de alta disponibilidade que suas aplicações bancárias essenciais exigem. Em vez disso, as configurações de alta disponibilidade baseadas em nuvem dependem de armazenamento de alto desempenho conectado a cada uma das VMs no cluster. Quando uma determinada VM está executando um aplicativo, ela interage com dados armazenados em um banco de dados que reside no armazenamento anexado a essa VM.

A chave para HA para aplicativos bancários baseados em nuvem é garantir que cada VM em seu cluster sempre tenha os mesmos aplicativos e os mesmos dados. Dessa forma, se a VM primária no cluster ficar escura repentinamente, o cluster poderá fazer failover automaticamente para uma VM em espera, qualquer uma das quais poderá começar a executar o aplicativo e interagir com os dados imediatamente porque uma cópia do aplicativo e dos dados reside no seu próprio armazenamento anexado.

Seu provedor de nuvem pode configurar facilmente as VMs que fornecerão os níveis de desempenho e disponibilidade que seus aplicativos críticos exigem. Ele também pode anexar sistemas de armazenamento de alto desempenho a essas VMs e configurar seu cluster para failover automático em várias AZs. Em seguida, você precisa implantar um mecanismo que automatize a replicação síncrona de dados entre todos os sistemas de armazenamento conectados às VMs no seu cluster de failover.

Soluções de replicação de dados

Você tem várias opções quando se trata de soluções de replicação de dados.

Se o seu cluster for baseado no Windows e você estiver usando o Microsoft SQL Server, você poderá usar o recurso integrado de Grupos de Disponibilidade (AGs) do SQL Server, que replicará automaticamente bancos de dados SQL nomeados pelo usuário para cada um dos nós do seu cluster. A desvantagem dessa abordagem é que ela apenas replica bancos de dados SQL, em vez de cada bloco de dados armazenado. A replicação de vários bancos de dados do SQL Server para várias VMs em espera pode ficar muito cara, pois você terá que usar o SQL Server Enterprise Edition para replicar mais de um banco de dados ou para replicar bancos de dados para várias VMs, mesmo que seus aplicativos funcionem perfeitamente bem usando o SQL Server Standard Edition .

Como alternativa, você pode usar uma solução de cluster sem SAN, que fornece replicação automatizada de dados em nível de bloco da VM primária ativa para cada uma das VMs secundárias em um cluster. A vantagem de usar uma solução SANless Clustering é que ela é independente de aplicativos e bancos de dados; ele simplesmente replica blocos de dados de um sistema de armazenamento para outro, garantindo que todos os dados do seu sistema de armazenamento primário sejam replicados para cada uma das outras VMs. A desvantagem de uma abordagem de cluster sem SAN é que há ainda outro software para sua equipe de TI licenciar e aprender, o que pode parecer oneroso se você puder usar a funcionalidade AG do SQL Server sem custo adicional.

A replicação de dados é a chave para garantir alta disponibilidade para sistemas bancários baseados em nuvem, quer você use a funcionalidade integrada em uma solução como o SQL Server ou a funcionalidade fornecida por uma solução de cluster independente sem SAN.

Seu provedor de nuvem pode fornecer a infraestrutura de alto desempenho que seus aplicativos exigem, mas você deve garantir que os dados e aplicativos disponíveis para cada uma das VMs nesse cluster estejam atualizados para que sua solução de HA funcione conforme esperado quando você precisar. é fazer isso.

Todd Doane é arquiteto de soluções na SIOS Technology. Ele passou mais de 20 anos, principalmente no mundo dos serviços financeiros, criando arquiteturas de referência de alta disponibilidade e padrões e princípios de design específicos para aplicações.

Carimbo de hora:

Mais de Inovação bancária