Atualizar DNS (Flush DNS) automaticamente em Azure Cloud Services (PaaS)


Por: Leonardo Villar
Eu trabalhei em um caso onde, por um motivo em especifico, era necessária a execução do comando “Flush DNS” nas instancias de um Cloud Services PaaS a cada 8 horas. E isso é completamente possível, porém, tendo em vista que estamos falando de Cloud Services PaaS e nós sabemos que elas são Stateless (não mantém configurações manuais), nós vamos utilizar Startup Tasks e o Task Scheduler to Windows para completar essa tarefa. Por favor, siga os passos a seguir:
 
Você terá que:

1.      Criar um arquivo .cmd com o nome "flushdns.cmd" contendo o comando de Flush DNS (ipconfig /flushdns) e qualquer outro que você queira ou precise.

2.     Criar outro arquivo .cmd com o nome "task-flushdns.cmd" contendo o comando para configurar o Task Scheduler para executar o arquivo "flushdns.cmd" (que criamos no passo acima) a cada 8 horas.

Comando:
Schtasks /create /tn FlushDNS /tr E:\approot\Startup\flushdns.cmd /sc hourly /mo 8 /ru System
 
Detalhes do commando:

a)     Essa é a parte do comando que chama o arquivo flushdns.cmd: E:\approot\Startup\flushdns.cmd”

b)    Esse comando é executado com a conta de sistema (System Account): /rn System

c)     Depois de eplicar o passo 3, essa será a localização onde estará localizado o arquivo flushdns.cmd “E:\approot\Startup\”

 

3.     Para a Role (Web ou Worker Role)

a)     Na Solution Explorer, abaixo de Roles no seu projeto Cloud Services, clique com o botão direito na role e selecione Add>New Folder. Crie uma pasta chamada Startup

b)    Clique com o botão direito na pasta Startup e selecione Add>Existing Item. Selecione os arquivos task-flushdns.cmd e flushdns.cmd e os adicione na pasta Startup

 

4.     Crie uma Startup Task no ServiceDefinition.csdef: Agora, você terá que criar a startup task propriamente dita, para isso, você precisará adicionar as seguintes linhas no ServiceDefinition.csdef abaixo de WebRole ou WorkerRole. Para mais informações sobre Startup Tasks, veja: Run Startup Tasks in Azure.

 
            <Startup>
                        <Task commandLine="task-flushdns.cmd" executionContext="elevated" taskType="simple" />
            </Startup>
 
Nota: As configurações acima irão executar o arquivo task-flushdns.cmd que irá configurar o Windows Task Scheduler para executar o arquivo flushdns.cmd a cada 8 horas.
 

5.     Faça um novo Deploy.

 

Fontes:

 
 
Comments (0)

Skip to main content