ADM de Redes

Um Blog sobre o dia a dia do Administrator de Redes e Servidores Microsoft

By

Cloud Service e Availability Set no Microsoft Azure

Olá Pessoal,

Com mais empresas utilizando o modelo de IaaS (Infaestruturas como Serviço) no serviço de Cloud do Microsoft Azure, algumas dúvidas vão surgindo, pois a forma como você gerencia uma Máquina Virtual em um modelo de Nuvem, apesar de simples, não é exatamente igual ao modelo tradicional de Virtualização.

No Microsoft Azure, quando você cria uma Máquina Virtual uma das configurações que você precisa fornecer é o endereço de Cloud Service desta Máquina Virtual. Veja:

O Cloud Service é basicamente o nome público que esta VM vai receber, o IP Público deste nome público, uma fronteira de Firewall e a configuração de Load Balance. Isso significa que o nome, como acima, admderedes100.cloudapp.net estará respondendo por esta VM após a criação da mesma. Isso não significa que a VM vai estar de forma desprotegida, simplesmente aberta na Internet. Tanto que outro ponto que você precisa indicar são quais portas públicas (Endpoints) estarão abertas nesta Máquina Virtual, veja:

Veja que por padrão, apenas as portas de Remote Desktop e Powershell estão abertas. E mesmo assim, a porta de Remote Desktop pública não é a porta 3389 padrão, para que isso também não seja explorado. De qualquer maneira, estas são as portas que permitem que após a criação da VM, você consiga gerenciar esta VM. Se você simplesmente remover estas portas, você perderá totalmente o acesso a VM e irá precisar recriar a mesma.

Outro ponto é que você pode atribuir outras portas (Endpoints) para o Cloud Service desta VM, de acordo com os serviços que esta VM vai oferecer. Por exemplo, se esta VM for um servidor Web, você pode querer abrir porta 80 e/ou 443. Se for um servidor DNS, você pode abrir a porta 53, e assim por diante.

Agora, uma das coisas que poucos sabem que você pode fazer é colocar mais de uma VM dentro do mesmo Cloud Service. Isso fará com que o Azure coloque automaticamente as VMs em um Load Balance dentro do nome público do Cloud Service. Para fazer esta operação no momento de criação da primeira VM, você irá criar a VM com o Cloud Service novo, no nome a ser utilizado. No momento da criação da segunda VM, você irá selecionar a opção de utilização de um Cloud Service já criado, veja:

Isso é muito legal, pois permite que você tenha balanceamento de carga para este nome público. Porém requer atenção à um ponto importante. Neste post eu expliquei como funcionam os Affinity Groups no Azure. Se você reparar na imagem acima, a opção de “Region/Affinity Group/Virtual Network” está desabilitada, pois o Azure identificou a informação da primeira VM e colocou esta nova VM no mesmo “local”. Assim como expliquei no post sobre Affinity Group, o motivo para isso é para que as VMs fiquem próxima uma à outra. Isso leva a um cenário onde as VMs podem acabar ficando dentro do mesmo Rack, inclusive, no datacenter selecionado. Na eventualidade de um problema neste Rack as VMs que estiverem nele serão afetadas ao mesmo tempo, degradando todo o serviço colocado em um único Cloud Service.

Para resolver esta questão, você pode utilizar um Availability Set. O Availability Set é uma configuração que está disponível quando você coloca mais de uma VM dentro do mesmo Cloud Service. Com o Availability Set, as VMs serão colocadas em locais onde uma falha de Rack não irá impactar mais o Cloud Service como um todo, mas sim apenas as VMs que estão no Rack com falha. Veja na ilustração abaixo:

Na imagem acima, você pode verificar que as VMs que rodam IIS foram colocadas no “Availability Set 01″, por isso nunca estarão no mesmo Rack. As VMs que rodam SQL estão em outro Availability Set seguindo a mesma premissa. Para configurar isso dentro do Azure, basta selecionar a opção abaixo, veja:

Depois de criar o Availability Set, basta colocar as VMs que não deveriam estar no memso Rack neste Availability Set. Vale lembrar que o Availability Set também coloca as VMs em Upgrade Domains diferentes, garantindo que se o Host tiver algum update e a VM ficar fora do ar por isso, o Cloud Service não será impactado por essa atualização de Host.

Tecnicamente, quando você coloca apenas uma VM dentro de um Cloud Service você tem, por contrato, um SLA de 99,9%. Quando você coloca no mínimo duas VMs no mesmo Cloud Service, e coloca estas VMs no mesmo Availability Set, você tem o SLA de 99,95%.
Para mais informações sobre SLA, você pode acessar este link.

Espero que tenham gostado.
Até mais!

3 Responses to Cloud Service e Availability Set no Microsoft Azure

  1. Excelente explicação! Tem que ver que dificuldade é fazer isso na concorrência, rsrsrs

    Daqui a pouco terá um ebook sobre Azure prontinho! Se for fazer isso eu posso ajudar?

  2. “Se você simplesmente remover estas portas, você perderá totalmente o acesso a VM e irá precisar recriar a mesma.”
    Ou recriar o endpoint. :)

    • vrapolinario says:

      Fala Mestre Mansur,
      Só que em alguns casos o Azure perde a conexão com a VM e não volta mais. Recomendo sempre que não deletem esse Endpoint. ;) Abraços!

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>