Azure DevTest Labs

O Azure DevTest Labs é um serviço que ajuda você a criar rapidamente ambientes no Azure, minimizando desperdícios e controlando os custo envolvidos. Você pode testar a versão mais recente de um aplicativo, criar um ambiente de teste ou até mesmo montar uma laboratório virtual para fins educacionais, provisionando ambientes Windows e Linux rapidamente usando um modelo pré definido.

 

Afinal, como funciona o Azure DevTest Labs?


O DevTest Labs é um serviço que a Microsoft fornece dentro do seu ecosistema de nuvem. Este serviço fornece traz a capacidade de gerenciar ambientes que contém máquinas virtuais do Azure. O DevTest Labs é um serviço que não possui custo. você só irá pagar o valor pelas máquinas virtuais que serão utilizadas no ambiente.

Utilizando o DevTest Labs o processo de implementação de um ambiente de desenvolvimento, testes ou estudos, se torna muito mais ágil e com a possibilidade de reutilizar imagens das máquinas virtuais pré definidas.

Além deste benefícios, a utilização deste serviço permite ao administrador do ambiente, ter um controle mais preciso e previsível quanto aos custos envolvidos.

Podemor configurar detalhes como:

  • Número máximo de máquinas virtuais por laboratório.
  • Tamanhos de máquinas virutais permitidos.
  • Definição de horários que laboratório é ligado ou desligado.

A inicialização e o desligamento automático de máquinas virtuais, são recursos que podem reduzir consideravelmente os custos do laboratório.

Existem muitas outras opções que auxiliar o provisionamento e o desprovisionamento de ambientes de forma simples e ágil.

  • Imagens Base
    • As máquinas virtuais podem ser baseadas em imagens disponíveis na Marketplace ou até mesmo através de upload de um VHD pré-configurado.
    • Instâncias do Windows Server (em diversas versões)
    • Windows + Visual Studio – ambiente preparado para o desenvolvimento
    • Banco de Dados
    • Versões do Linux – Ubuntu, CentOS, Red Hat , etc.
  • Artefatos
    • Máquinas virtuais pode conter artefatos. Que são pacotes que precisam ser instalados nas instâncias criadas.
    • Ao criar uma máquina virtual, você pode definir se é necessario adicionar algum artefato, como por exemplo instalar o Git, o Slack, criar um atalho, fazer um download automaticamente, etc
    • Os artefatos são armazenados como scripts em um repositório Git.
  • Políticas
    • Os laboratórios do Azure DevTest permite que você defina políticas para o laboratório para um controle de custo e governaça do ambiente minimizando desperdicio.
    • Você pode definir quantidade de máquinas virtuais que o ambiente pode possuir, pré-definir o tamanho das instâncias virtuais que estarão a disponsição, escolher inicialização e desligamento automático do ambiente e muito mais.

Os artefatos são recursos realmente impressionantes


Os artefatos são elementos personalizáveis que podem ser usados para implantar seus bits mais recentes ou suas ferramentas de desenvolvimento em uma VM. Eles podem ser pacotes que precisam ser instalados ou coisas que precisam acontecer.

Também é possível criar nossos próprios artefatos personalizados, utilizando arquivos JSON para executar uma ação e obter o resultado desejado.

O autoatendimento


A principal razão para utilizarmos os laboratórios do DevTest é que ele fornece autoatendimento. Depois de configurado um laboratório, os usuários podem provisionar e desprovisionar o ambiente conforme a necessidade.

Todas estas funções o usuário pode fazer sozinho, reduzindo a espera para o atendimento das demandas pela equipe de suporte, e contribuindo para a redução de carga de trabalho na equipe responsável pelas soluções de nuvem da empresa.

Utilizando DevTest para ambientes de teste


Se você já utiliza o Azure para o ambiente de produção, o DevTest Labs pode ser muito útil também para ambientes de teste, servidores de compilação ou outros utilitários.

Para auxliar a entrega e automatizar o ambiente o máximo possível, você já pode configurar o DevTest para utilizar as ferramentas favoritas da equipe de desenvolvimento.

Por exemplo, no Visual Studio Team Services, você pode usar as tarefas do DevTest em compilações e releases.

O provisionamento de máquinas virtuais não é instantâneo, porém é muito rápido. Na minha experiência, normalmente demora entre 5 e 10 minutos para uma máquina virtual ser iniciada coretamente.

Montando ambiente de desenvolvimento na nuvem


O desenvolvimento de software é um processo bastante complexo e existem muitas variáveis que precisamos ter em mente.

  • Certificar-se que toda a equipe de desenvolvimento tem as mesmas bibliotecas e aplicativos essencias em suas máquinas.
  • Fornecer ambientes preparados para eventuais novos desenvolvedores.
  • A garantia de que toda a equipe de desenvolvimento possa trabalhar de qualquer lugar
  • Provisionamento correto e completo de ambientes de testes.

E como vimos anteriormente com o DevTest Labs, você garante um ambiente uniforme e totalmente compativel com as necessidades da sua equipe.

Máquinas virtuais descartáveis na Nuvem


Usando o DevTest, você pode criar facilmente uma variedade de máquinas virtuais que podem ser usadas somente para o desenvolvimento de software. Entendo que esta é uma idéia muito interessante, pois você pode fazer o que bem entender com a máquina virtual, sem grandes preocupações pois é possível simplesmente excluir uma instância quando ela se tornar “suja” e em menos de 10 minutos ter uma máquina nova prontinha para utilizar.

Você não precisa se preocupar em ter uma máquina virtual lenta. Você precisa encontrar o tamanho ideal de máquina virtual para que ela seja rápida o suficiente para executar a sua função apropriadamente. E visando a otimização dos custos, é muito importante que além de uma escolha ideal do tamanho da instância, você deve usar os ferramentas de desligamento automático do laboratório a seu favor, evitando que o recurso fique alocado de forma ociosa.

Conclusão


O DevTest é muito útil para desenvolvedores, testadores, estudos e demonstrações. Este serviço tende a tornar processos que antes demandavam muito tempo das equipes de desenvolvimento e suporte, em atividades simples e triviais.

Ao passo que um usuário com as devidas permissões, pode montar um ambiente de trabalho, com todas as ferramentas e recursos necessários, sem auxilio da equipe de infraestrutura e em poucos minutos, com certeza você vai perceber um ganho de produtividade muito interessante.

Você pode encontrar mais informações sobre o Azure DevTest Labs neste link

Se você já teve uma experiência com o Azure DevTest Labs, tem alguma dúvida ou sugestão, deixe seu comentário.

Que a força esteja com você!!!