Solução de alta disponibilidade do Azure com sincronização de dados do site e do servidor SQL

4

Temos uma solução Web que vendemos e é fornecida com 1 VM do Azure que contém tudo o que é necessário para executar o aplicativo:

  • aplicativo da web asp.net
  • Ambiente de produção
  • Ambiente de controle de qualidade
  • SQL server contendo dados para o ambiente PROD e QA

Um cliente específico, no entanto, tem um requisito de usuário para executar seu aplicativo em uma configuração de alta disponibilidade. O que ele quer é que, quando um servidor cair, o outro assuma o controle e vice-versa.

Sou completamente novo em configurações de balanceamento de carga / alta disponibilidade e sei que o Azure oferece suporte ao balanceamento de carga, mas estou confuso sobre como consegui que funcionasse. É tão fácil criar apenas 2 servidores com a configuração acima e, em seguida, configurar a funcionalidade de alta disponibilidade? Minha preocupação é como obter os dados do site e os dados do SQL Server em sincronia entre os dois servidores? Especialmente o último.

Ou seria mais fácil se eu usasse o servidor SQL do Azure em vez de um servidor SQL local? Ou talvez introduzindo servidores adicionais em vez de 2?

    
por Zeep 03.09.2018 / 10:03

3 respostas

1

Primeiro, recomenda-se usar o SQL do Azure, mas definir um servidor SQL sozinho não é seguro nem "padrão". O Azure SQL fornece muitos recursos avançados, incluindo alta disponibilidade e recuperação de desastres. Use o Azure SQL e configure o grupo de failover de acordo com o doc . Agora, sua camada de dados é de alta disponibilidade ativada.

Em segundo lugar, suponha que você tenha migrado seu banco de dados para o Azure SQL, crie uma nova VM na mesma rede virtual de sua VM atual. E executando o mesmo aplicativo na nova VM. Crie um balanceador de carga e adicione essas duas VMs ao pool de back-end. Agora sua camada de aplicativo está com alta disponibilidade habilitada.

    
por 03.09.2018 / 11:00
6

Você pode configurar o VSAN da StarWind em apenas duas máquinas virtuais e obter uma solução de armazenamento real e altamente disponível na nuvem. Acredito que este manual deve ser útil para você, confira.

    
por 11.09.2018 / 13:08
1

É fácil criar um conjunto de alta disponibilidade com os mesmos servidores e, em seguida, definir esse conjunto de alta disponibilidade como um pool de back-end em LB. É recomendável usar o banco de dados SQL do Azure, pois o Azure tem muitos recursos de plataforma integrados que suportam aplicativos altamente disponíveis. No entanto, é fácil usar o SQL Server local na mesma VM do Azure e você pode obter a resposta rápida desde o aplicativo e o host do banco de dados na mesma VM do Azure.

For Azure SQL Database, data is replicated synchronously within the region. Also, To achieve high availability with Virtual Machines, you must use availability sets, which serve a similar function to fault and upgrade domains.

Consulte doc .

    
por 03.09.2018 / 11:21