Conjunto de disponibilidade de VM extra pequena do Azure

Conjunto de disponibilidade de VM extra pequena do Azure

Minha VM extra pequena atual atinge os limites, então decidi criar uma segunda instância extra pequena e adicionar as duas em um conjunto de disponibilidade para que meu serviço esteja sempre disponível e através do balanceador de carga a carga também seja balanceada. Minha pergunta é saber o que acontecerá com os dados? Será nos dois iguais? Porque preciso dos mesmos dados disponíveis em ambos! Por exemplo:

Request1 -> vm1 -> adiciona dados Request2 -> vm2 -> deseja ler os dados que foram colocados primeiramente em vm1

Ou ainda mais simples: se eu tiver um blog wordpress e adicionar um blog, ele deve estar disponível em ambos!

Michi

Responder1

Cada máquina virtual é apoiada pelo seu próprio vhd, que reside num Page Blob no Azure Storage. Este não é um bom local para armazenar qualquer tipo de conteúdo que precise ser compartilhado entre várias instâncias (e o estado da sessão em processo também será limitado à instância em execução dessa máquina virtual). Você precisa armazenar o estado da sua sessão e quaisquer outros dados persistentes em um local comum acessível a ambas as máquinas virtuais, mas faça issonãoarmazene o conteúdo diretamente no disco principal do vhd ou no disco temporário.

Para o estado da sessão, você pode configurar facilmente o Banco de Dados SQL do Windows Azure (basicamente sql-as-a-service) e usá-lo como seu provedor de estado da sessão. Ou você pode executar o memcached, usar o Table Storage ou escolher algo totalmente diferente - deixarei outras ideias para sua imaginação.

O mesmo vale para a execução do WordPress – o conteúdo precisaria estar em um armazenamento de dados comum. Como o WordPress usa MySQL, você pode configurar o MySQL em uma instância de máquina virtual independente ou assinar um banco de dados MySQL por meio da Azure Store.

Uma outra opção é armazenar conteúdo no armazenamento Blob, que é totalmente independente de qualquer máquina virtual que você criar e muito fácil de acessar. O armazenamento de blobs, junto com o armazenamento de tabelas, tem excelente suporte a SDK de linguagem criado sobre a API REST (atualmente SDKs .net, php, java, python, node e ruby). Você pode obter o SDK de sua escolha no Azuredownloadpágina. Você também pode ler o código-fonte, norepositório do github.

informação relacionada