Arquivo

Posts Tagged ‘BI’

Microsoft Azure + SQL 2016 CTP3 + Reporting Services ( SSRS )

16 de novembro de 2015 Deixe um comentário

Olá, pessoal!

Com o MS SQL Server Reporting Services podemos criar, gerenciar acesso e publicar relatórios que serão acessados pelos usuário via navegador ( IE, Chorme, Firefox, etc ) na rede interna da empresa e também externa via internet (web).

Para isso vamos ver “Como configurar o Reporting Services (SSRS) para ser acessado via web?” no Azure.

 

Cenário:

Tenho uma conta no Microsoft Azure, onde foi instalada uma VM com Windows Server 2012 R2 + SQL Server 2016 CTP3 e ativado o SQL Server Reporting Services ( SSRS ).

Usando todas configurações padrão.

Problema:

O SSRS só funciona dentro da VM.

Quando tento acessar via internet, ou seja, externamente com o navegador.

Não encontro o site ( servidor ) do Reporting Services.

Evidenciando que meu SSRS funciona no ambiente interno da minha rede, mas e se eu estou fora da empresa e não tenho acesso via TS, fica a pergunta:

“Como configurar o Reporting Services (SSRS) para ser acessado via web?” no Azure.

 

Antes de partimos para a resposta, precisamos saber:

1. O Microsoft SQL Server 2005 Reporting Services depende do IIS ( Internet Information Services ) para fazer o controle de acesso.

2. A partir do SQL Server 2008 o Reporting Services ou superior NÃO depende mais do IIS. Ele  mesmo faz todo controle de acesso. Por isso, você deve criar uma URL de acesso externo usando o Reporting Services Configuration Manager.

3. O SQL Server usa diversas portas TCP e UDP para cada serviço. Mais informações em Portas usadas pelo SQL Server, as portas que desejamos são:

Porta TCP 80 Usada para uma conexão HTTP por meio de uma URL
Porta TCP 443 Usada para uma conexão HTTPS por meio de uma URL. HTTPS é uma conexão HTTP que usa o protocolo SSL.

4. O Microsoft Azure permite criar diversas VMs e até uma rede interna para comunicação entre elas. Porém, para acessar externamente essa “rede interna” do Azure ou algum serviço dela é obrigatório criar um EndPoint ( ponto de extremidade ).

Exemplo: Quando você criou a VM com o Windows Server o próprio Azure já criou automaticamente o EndPoint do Terminal Service ( TS ) para que você entre remotamente na VM.

Fazendo uma comparação: O EndPoint do Azure, faz o papel do Firewall do Roteador  na sua rede. Você também precisa liberar a porta do TS no roteador e até redirecionar para um determinado IP de um computador da sua rede. Bom, é isso que o EndPoint faz com sua VM no Azure. Leia Business Intelligence do SQL Server em máquinas virtuais do Azure

 

Solução:

Bingo! Agora sabemos que falta um EndPoint para liberar o acesso externo ao SSRS.

 

Sigua os passos:

1. Entre via TS, na sua VM que está no Azure

Deve ser algo do tipo: NomeDaVM.cloudapp.net

 

2. Liberar o Firewall do Windows para acesso externo nas portas TCP 80 e 443.

Mais detalhes:

 

3. Entrar no Reporting Services Configuration Manager

Em Web Service URL entre em Advanced e adicione a HTTP Identities, sendo a URL da sua VM NomeDaVM.cloudapp.net na porta 80.

Agora você tem duas URL

Acesso Rede Interna Azure http://meuservidor:80/MeusRelatorios
Acesso Rede Externa Web http://NomeDaVM.cloudapp.net:80/MeusRelatorios

Mais detalhes:

    Exemplo:
    Azure_URL_SSRS

 

4. No navegador do seu computador, não na VM.

Entre na sua conta do Azure, selecione Máquina Virtual e clicar no NomeDaVM.

Entre em Pontos de Extremidade ( EndPoint ), clique adicionar e informe:

Nome SSRS É o nome do EndPoint
Protocolo TCP É o protocolo de comunicação
Porta pública 80 É a Porta Pública de Acesso Externo via Web
Porta privada 80 É a Porta Privada de Acesso Externo via Web

Mais detalhes Como configurar os pontos de extremidade para uma máquina virtual.

 

Exemplo 1: Visão antiga do painel de Gerenciamento do Azure

AzurePainelGerenciamentoAntigo_EndPoint_PontoExtremidade

Exemplo 2: Visão nova do painel de Gerenciamento do Azure

AzurePainelGerenciamentoNovo_EndPoint_PontoExtremidade

 

5. Vamos testar em uma nova guia no navegador digite:

http://NomeDaVM.cloudapp.net:80/MeusRelatorios

Será solicitado o Usuário e Senha do Windows que está instalado na VM, ou seja, o mesmo que você usou para acessar o TS.

Pronto! SQL Server Reporting Services funcionando na rede interna e externa.

Azure_URL_SSRS_AcessoExteno

 

   

 

Atenção:

Lembro novamente que usei aqui todas configurações de porta e usuário padrão de instalação do Windows e do SQL.

É altamente recomendado que você crie portas e usuários

exclusivos para essas configurações.

 

Fonte:

Esse artigo foi baseado no post How to setup SSRS with an Azure SQL Server Database.

 

Consulte também:

Introdução à Business Intelligence

20 de dezembro de 2013 Deixe um comentário