Automatizando tarefas com Azure Automation | iMasters
Automatizando tarefas com Azure Automation
Tem 11 artigos publicados com 6074 visualizações desde 2017
Analista de Sistemas, Microsoft Certfied Professional, Microsoft Certified Solutions Associate e Community Manager com mais de 10 anos de experiência profissional sendo 7 anos focado em análise e desenvolvimento de softwares para o setor de turismo.
7Masters Desenvolvimento Híbrido – Iniciando o desenvolvimento de aplicativos híbridos com Ionic + TypeScript e VSCode
Alta disponibilidade no Azure
Quando estamos trabalhando em um cenário de Cloud Computing, às vezes é necessário executar tarefas frequentes e demoradas, e até mesmo tarefas que estão propensas a erros. Com essa onda da "Nuvem", podemos dar mais foco para o nosso negócio (algo que sempre faço questão de comentar) deixando as atividades auxiliares e de rotina como tarefas secundárias, onde podemos trabalhar com soluções de terceiros no formato PaaS ou SaaS.
Outro ponto bastante importante que podemos abordar aqui é a utilização das tarefas automatizadas do Azure para um cenário de DevOps onde podemos automatizar algumas rotinas do dia a dia. Um exemplo básico seria a replicação de bases de dados entre Produção e Testes dentro do Microsoft Azure.
As tarefas automatizadas do Azure fornecem serviços de configuração e automação baseado em nuvem, no qual fornecem gerenciamento consistente entre ambientes Cloud e OnPremise (Local). Entre os recursos oferecidos, posso citar alguns abaixo. Não entrarei em detalhes sobre cada um neste momento, pois o foco deste artigo é mostrar de forma simples e rápida a replicação de uma base de dados com o SQL Azure.
O primeiro passo para iniciar nossa atividade é acessar o Portal do Azure. Caso você ainda não tenha uma conta, você pode criá-la acessando este link.
Agora vamos criar um novo recurso chamado Automation, como podem ver na imagem abaixo.
Em seguida, entraremos com os dados necessários para a criação do nosso recurso.
Nome do seu recurso
Assinatura em que o recurso estará associado
Grupo de recurso
Local onde o recurso será provisionado
Neste passo, quando deixamos a opção marcada como "Sim", uma conta de execução será criada automaticamente para se utilizar dentro das nossas rotinas
Com o nosso recurso provisionado, começaremos a configurar o nosso Run Book ou Processo Automatizado.
Inicie o procedimento clicando em "Criar novo runbook"
Entre com o nome do seu Runbook
Selecione o tipo de Runbook que deseja trabalhar, lembrando que neste ponto temos três opções para trabalhar com o nosso Runbook, Powershell, Python e em formato Gráfico
Painel de edição do script do Runbook
Na imagem que vocês podem ver acima, temos o painel principal onde iremos editar o nosso Runbook. Temos também na barra lateral alguns atalhos rápido para utilizarmos em nossa rotina como CMDLETS (rotinas pré configuradas), RUNBOOKS (acesso a outros runbooks) e ASSETS (conjunto de recursos dentro do contexto do Azure Automation como variáveis, conexões, certificados, etc).
No painel identificado pelo número 4, incluiremos o nosso código. No caso, PowerShell, onde iremos conectar dentro da assinatura do Azure e exibir todos os recursos que temos provisionado.
An example runbook which gets all the ARM resources using the Run As Account (Service Principal)
#Get all ARM resources from all resource groups
foreach ($ResourceGroup in $ResourceGroups)
Write-Output ("Showing resources in resource group " + $ResourceGroup.ResourceGroupName)
$Resources = Find-AzureRmResource -ResourceGroupNameContains $ResourceGroup.ResourceGroupName | Select ResourceName, ResourceType
ForEach ($Resource in $Resources)
Write-Output ($Resource.ResourceName + " of type " +  $Resource.ResourceType)
Após efetuar todos os passos acima, podemos utilizar o Painel de Testes para efetuarmos os testes necessários ou Publicar de vez o nosso Runbook. Lembrando que para executar o Runbook de forma definitiva, será necessário Publicar o mesmo. Caso contrário, você não terá acesso aos botões de execução ou agendamento.
Como este artigo é somente para fins de exemplificação, utilizamos uma rotina simples. Porém, vale lembrar que podemos ir além com todo o poder que o Powershell nos oferece. Podemos então usar a nossa criatividade e tentar trazer o Azure Automation para dentro do nosso dia a dia em vários cenários como, por exemplo, em um cenário de DevOps, onde podemos automatizar a replicação de base de dados do Azure SQL entre ambientes de Produção, Qualidade e Testes.
Um outro detalhe muito importante e que pode nos ajudar bastante, é utilizar o Azure Automation em conjunto com os Jobs, onde podemos agendar a execução dos nossos Runbooks afim de deixar nossas tarefas mais independentes.
Bom, pessoal, por hoje é só. Espero ter ajudado a todos, e se tiverem alguma dúvida, deixe o seu comentário logo abaixo!