Fazendo o deploy de uma Worker Role no Windows Azure
Olá pessoal,
Dando continuidade no post Hospedando um serviço WCF em uma Worker Role do Windows Azure, vou mostrar hoje o processo de deploy da solução. O primeiro passo é adquirir a sua conta do Windows Azure através do link, uma possibilidade pode ser utilizar a oferta introdutória, que fornece 25 horas de computação mensais sem custo. ATENÇÃO: se as 25 horas forem excedidas, existirá cobrança da diferença em cartão de crédito.
Depois que a conta já está disponível, podemos iniciar o processo de deploy, no Visual Studio 2010. Para isso clique com o botão direito em cima do projeto do Windows Azure e escolha a opção “Publish…”
Após isso a tela “Publish Cloud Service” será exibida, esta tela fornece duas opções: “Create Service Package Only” e “Deploy your Cloud Service to Windows Azure”. A primeira opção irá criar dois arquivos para distribuição no Windows Azure, um arquivo de configuração (Cloud Service Configuration file, com a extensão .cscfg) e outro arquivo com o pacote binário do projeto (Service Package file, com a extensão .cspkg). A segunda opção irá fazer a mesma coisa e também irá fazer a instalação automática no Windows Azure. Vou escolher a primeira opção e depois fazer a instalação manualmente.
Para fazer a instalação manualmente é necessário logar na console administrativa do Windows Azure e escolher o seu projeto.
Depois de escolher o projeto, escalha o serviço.
Em seguida, clique no botão Deploy.
Agora informe o arquivo de configuração, o pacote binário, a versão do sistema operacional, um label para a versão e clique em Deploy.
Depois disso clique em run e espere o serviço entrar no ar. Atenção para a mensagem de warning exibida, mesmo se o serviço não estiver executando as horas serão contabilizadas.
Quando o Azure terminar de processar, o serviço fica com o status de ready e está pronto para ser acessado.
Para acessar o serviço, modifique o arquivo de configuração da aplicação cliente para apontar para o endereço do Windows Azure. No meu caso o endereço é net.tcp://rgodinho.cloudapp.net:8080/EchoService. O arquivo de configuração deve ficar parecido com o abaixo:
<endpoint address="net.tcp://rgodinho.cloudapp.net:8080/EchoService"
binding="netTcpBinding"
contract="WcfDefinition.IEchoService"
name="WcfDefinition.IEchoService" />
Abaixo vemos o exemplo da aplicação cliente funcionando.