Rodando o Magic xpa Server no Windows Azure

O Magic xpa (uniPaaS) Server é nosso motor de execução do lado server para aplicações WEB MERGE e RIA. Neste caso iremos detalhar o processo visando a instalação de uma aplicação uniPaaS RIA no Windows Azure, plataforma da Microsoft para Cloud Computing.

 

Para utilizar o Windows Azure você precisará estar devidamente cadastrado, podendo utilizar a versão de testes por 90 dias. Para obter maiores informações sobre como fazer seu cadastro, clique aqui.

Após estar devidamente credenciado, você conseguirá acessar o seu painel conforme mostrado abaixo:

Todas as informações obtidas nos próximos passos foram extraídas da documentação da Microsoft.

 

Criando o certificado

Para realizar a transferência de dados entre sua máquina e o Windows Azure é necessário um certificado.

Para criar o certificado clique aqui e siga os passos somente do item “Step 1: Create a self-signed PFX certificate”. Guarde o local para onde foi exportado o arquivo PFX e a senha definidos no item 6.

 

Criando o ambiente para o Windows Azure

1) Para criar o ambiente é necessário o SDK do Windows Azure. Instale-o clicando aqui.

2) Crie uma pasta para manter todos os arquivos. Ela conterá a definição das informações do serviço do Windows Azure.

3) Nesta pasta crie um arquivo com o nome “Teste_uniPaaS_ServiceDefinition.csdef” e neste arquivo coloque o seguinte texto:

Este arquivo nada mais é do que um XML com a definição do serviço que estará disponível no Windows Azure. Veja o que significa cada item deste XML clicando aqui.

Um detalhe especial quanto ao XML é o grupo “Startup” que significa que quando a instância do servidor iniciar será executado um script que estará no arquivo “EnableIsapi.cmd”. Este script será rodado pelo motivo de o uniPaaS possuir o ISAPI,  sendo necessário liberá-lo no item “ISAPI and CGI Restrictions”.

 

4) Crie uma pasta chamada “Role_uniPaaS” dentro da pasta criada no item 2. Nesta pasta crie os seguintes arquivos e conteúdos:

web.config:

index.html:

O arquivo web.config é um arquivo de configuração da aplicação web no IIS. Nele está sendo definido somente um documento padrão de abertura que é o próprio arquivo criado posteriormente com um HTML simples de texto.

 

5) Crie uma pasta chamada “bin” dentro da pasta criada no item 4. Nesta pasta crie um arquivo chamado “EnableIsapi.cmd” e nele coloque o seguinte script:


O script anterior deve estar em uma única linha. Este script libera a execução do ISAPI conforme comentado no item 3.

 

6) Crie uma pasta chamada “uniScripts” dentro da pasta criada no item 4. Nesta pasta crie um arquivo chamado “web.config” e neste arquivo coloque o seguinte código:

 

O arquivo web.config é um arquivo de configuração da aplicação web no IIS. Nele está sendo definido que a pasta atual “uniScripts” terá permissão de execução de ISAPI/CGI.

 

 

Criando os arquivos para disponibilização da aplicação no Windows Azure

1) Acesse Iniciar/Todos os programas/ Windows Azure SDK for .NET – November 2011/ Windows Azure Command Prompt. Veja abaixo como foi acessado:

2) Pela tela de prompt aberta, acesse a pasta criada no item 2 do capítulo anterior e execute o seguinte comando:

cspack Teste_uniPaaS_ServiceDefinition.csdef /role:Role_uniPaaS;Role_uniPaaS /out:Teste_uniPaaS_WindowsAzure.cspkg /generateConfigurationFile:Teste_uniPaaS_ServiceConfiguration.cscfg

O comando anterior irá criar os arquivos de configuração do serviço (Teste_uniPaaS_ServiceConfiguration.cscfg) e pacote (Teste_uniPaaS_WindowsAzure.cspkg) para o Windows Azure que será usado no próximo capítulo.

 

Disponibilizando o ambiente no Windows Azure

1) Acesse o gerenciador do Windows Azure conforme as 3 primeiras imagens deste post e clique em “Serviços Hospedados, Contas de Armazenamento e CDN”. Clique em “Serviços Hospedados” e no primeiro item da lista clique com o botão direito e acesse “Novo Serviço Hospedado”

2) Será aberta uma tela para definição do serviço. Escolha nome, url, região e selecione a opção “Não implantar”. Clique em OK.

O serviço será criado. Aguarde ficar no estado de “Criado”.

3) Após ficar no estado de “Criado” irá aparecer logo abaixo o item “Certificado”. Clique com o botão direito neste item e acione “Adicionar Certificado”. Selecione o certificado gerado e exportado no primeiro capítulo e digite a senha.

4) Pegue o texto completo que está no campo “Impressão Digital” do certificado no Windows Azure.

 

5) Abra o arquivo Teste_uniPaaS_ServiceConfiguration.cscfg e substitua o texto apontado conforme abaixo pelo texto copiado anteriormente do campo “Impressão Digital”.

6) Clique com o botão direito no Serviço Hospedado e clique em “Nova Implantação em Preparo”. Abrirá uma tela para definir o nome da implantação e selecionar os arquivos “Teste_uniPaaS_WindowsAzure.cspkg” e “Teste_uniPaaS_ServiceConfiguration.cscfg” gerados anteriormente. Aparecerá uma tela de aviso sobre a questão de instâncias que você pode clicar em “Sim”.

Aguarde a implantação ficar no status de “Pronto”. Veja abaixo as telas dos passos deste item.

7) Após a implantação ficar no status “Pronto”, é possível clicar na implantação e clicar no link da url do DNS da implantação e a resposta será o HTML index.html criado anteriormente. Veja:

 

 

Disponibilizando o acesso via Terminal Server para instalar o uniPaaS

1) Clique na linha da função e clique em Habilitar. Abrirá uma tela para definir os dados (usuário, senha, expiração) de conexão via Terminal Server.

Após definir os dados, clique OK e aguarde ficar no status “Pronto”. Veja abaixo os itens acionados:

 

 

2) Clique na instância, depois em conectar, irá baixar um arquivo com extensão RDP . Clique em abrir.O arquivo fará uma conexão Terminal Server normal. Digite os dados de usuário e senha definidos anteriormente. Pronto! Irá conectar no Windows Azure via Terminal Server.

Veja abaixo o acesso feito por este item:

 

Finalizando o ambiente

1) Como está conectado normalmente a um Windows 2008, faça a instalação e configuração do Magic xpa (uniPaaS) Server normalmente.

2) A pasta e:\approot é o local root da aplicação web no Windows Azure. Então, após a instalação e configuração do uniPaaS, copie o conteúdo da pasta Scripts para E:\approot\uniScripts. Para aplicação RIA será necessário uma pasta em E:\approot\uniRIAApplications com os dados da aplicação publicada.

 

Conclusão

Como vimos, podemos facilmente disponibilizar e rodar o uniPaaS Server no Windows Azure.

Clique aqui e veja a aplicação exemplo “Rich Internet Demo” rodando normalmente. Como a assinatura do Windows Azure utilizada foi a versão de 90 dias (versão de testes) pode ser que no momento em você lê este post, este prazo já tenha expirado.

Clique aqui e obtenha os arquivos criados neste artigo.

Jeronimo Alberto da Costa - Consultor Técnico Magic
Jeronimo Alberto da Costa – Consultor Técnico Magic

 

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *