VENTES: 1-800-867-1389

Utilisation de PowerShell pour créer une machine virtuelle Azure avec un serveur de rapports en mode natif

Mis à jour: décembre 2014

Cette rubrique décrit le processus de déploiement et de configuration d'un serveur de rapports en mode natif SQL Server Reporting Services dans une machine virtuelle Azure. La procédure décrite dans ce document utilise une combinaison d'étapes manuelles pour créer la machine virtuelle, et un script Windows PowerShell pour configurer Reporting Services sur celle-ci. Le script de configuration inclut l'ouverture d'un port de pare-feu pour le protocole HTTP ou HTTPS.

noteRemarque
Si vous n'avez pas besoin du protocole HTTPS sur le serveur de rapports, ignorez l'étape 2.

Après avoir créé une machine virtuelle à l'étape 1, accédez à la section Utilisation d'un script pour configurer le serveur de rapports et HTTP. Après avoir exécuté le script, le serveur de rapports est prêt à être utilisé.

  

Dans cette rubrique :

  • Un abonnement Azure : Vérifiez le nombre de cœurs disponibles avec votre abonnement Azure. Si vous créez une machine virtuelle de la taille recommandée A3, vous avez besoin de 4 cœurs disponibles. Si vous utilisez une machine virtuelle taille A2, vous avez besoin de 2 cœurs disponibles.

    Pour vérifier la limite de cœurs de votre abonnement, dans le portail de gestion Azure, cliquez sur PARAMÈTRES dans le volet gauche, puis cliquez sur UTILISATION dans le menu supérieur.

    Pour augmenter le quota de cœurs, contactez le Support Azure. Pour plus d'informations sur les tailles de machine virtuelle, consultez Tailles de machines virtuelles et services cloud pour Windows Azure.

  • Script Windows PowerShell : la rubrique suppose que vous avez une connaissance de base de Windows PowerShell. Pour plus d'informations sur l'utilisation de Windows PowerShell, consultez les rubriques suivantes :

Icône de flèche utilisée avec le lien Retour en haut Top

  1. Accédez au portail de gestion Azure.

  2. Dans le volet gauche, cliquez sur Machines virtuelles.

    machines virtuelles Microsoft Azure
  3. Cliquez sur Nouveau.

    nouveau bouton
  4. Cliquez sur À partir de la galerie.

    nouvelle machine virtuelle de la galerie
  5. Cliquez sur SQL Server 2014 RTM Standard – Windows Server 2012 R2, puis sur la flèche pour continuer.

    suivant   

    Si vous avez besoin de la fonctionnalité d'abonnements pilotés par les données de Reporting Services, sélectionnez SQL Server 2014 RTM Enterprise – Windows Server 2012 R2. Pour plus d'informations sur les éditions de SQL Server et la prise en charge des fonctionnalités, consultez Fonctionnalités prises en charge par les éditions de SQL Server 2014.

  6. Sur la page Configuration de la machine virtuelle, modifiez les champs suivants :

    • S'il existe plusieurs DATES DE SORTIE DE LA VERSION, sélectionnez la plus récente.

    • Nom de la machine virtuelle : le nom de la machine est également utilisé dans la page de configuration suivante comme nom DNS par défaut du service de cloud computing. Le nom DNS doit être unique dans le service Azure. Prévoyez de configurer la machine virtuelle avec un nom d'ordinateur qui décrive son utilisation. Par exemple, ssrsnativecloud.

    • Niveau : Standard

    • Taille :A3 est la taille recommandée de machine virtuelle pour les charges de travail SQL Server. Si une machine virtuelle est utilisée uniquement en tant que serveur de rapports, une taille de machine virtuelle A2 est suffisante, sauf si le serveur de rapports traite une grande charge de travail. Pour plus d'informations sur les prix, consultez Tarification – Machines virtuelles.

    • Nouveau nom d'utilisateur : le nom spécifié est créé en tant qu'administrateur sur la machine virtuelle.

    • Nouveau mot de passe et confirmer. Ce mot de passe est utilisé pour le compte administrateur et il est recommandé d'utiliser un mot de passe fort.

    • Cliquez sur Suivantsuivant.

  7. Sur la page suivante, modifiez les champs suivants :

    1. Service de cloud computing : sélectionnez Créer un nouveau service cloud computing.

    2. Nom du Cloud Service DNS : il s'agit du nom DNS public du service de cloud computing qui est associé à la machine virtuelle. Le nom par défaut est le nom que vous avez entré pour le nom de la machine virtuelle. Si dans des étapes ultérieures de la rubrique, vous créez un certificat SSL approuvé, puis le nom DNS est utilisé pour la valeur « Délivré à » du certificat.

    3. Région/Groupe d'affinités/Réseau virtuel : choisissez la région la plus proche de vos utilisateurs finaux.

    4. de stockage Azure : utiliser un compte de stockage généré automatiquement.

    5. Groupe à haute disponibilité : Aucun.

    6. POINTS DE TERMINAISON Conservez les points de terminaison Bureau à distance et PowerShell, puis ajoutez un point de terminaison HTTP ou HTTPS, selon votre environnement.

      • HTTP : les ports public et privé par défaut sont le port 80.

        noteRemarque
        Si vous utilisez un port privé autre que le port 80, modifiez la valeur $HTTPport = 80 dans le script http.

      • HTTPS : les ports public et privé par défaut sont le port 443. La meilleure pratique de sécurité consiste à modifier le port privé et à configurer le pare-feu et le serveur de rapports de façon à utiliser le port privé. Pour plus d'informations sur les points de terminaison, consultez Configuration des points de terminaison sur une machine virtuelle.

      noteRemarque
      Si vous utilisez un port autre que le port 443, modifiez le paramètre $HTTPsport = 443 dans le script HTTPS.

    7. Cliquez sur Suivant suivant.

  8. Dans la dernière page de l'Assistant, conservez la valeur par défaut Installer l'agent de machine virtuelle. Les étapes décrites dans cette rubrique n'utilisent pas l'agent de machine virtuelle mais, si vous envisagez de conserver cette machine virtuelle, l'agent et les extensions de machine virtuelle vous permettent d'améliorer la machine virtuelle. Pour plus d'informations sur l'agent de machine virtuelle, consultez Agent de machine virtuelle et extensions – partie 1. L'une des extensions par défaut installées qu'AD exécute est l'extension « BGINFO » qui affiche sur le bureau de la machine virtuelle des informations système telles que l'adresse IP interne et l'espace libre sur le disque.

  9. Cliquez sur ok.

  10. L'état de la machine virtuelle s'affiche comme Démarrage en cours (Mise en service en cours) lors du processus de mise en service, puis comme En cours d'exécution lorsque la machine virtuelle est en service et prête à être utilisée.

Icône de flèche utilisée avec le lien Retour en haut Top

noteRemarque
Si vous n'avez pas besoin de HTTPS sur le serveur de rapports, vous pouvez ignorer l'étape 2et vous rendre à la section Utilisation d'un script pour configurer le serveur de rapports et HTTP. Utilisez le script HTTP pour configurer rapidement le serveur de rapports et le serveur de rapports sera prêt à être utilisé.

Afin d'utiliser HTTPS sur la machine virtuelle, vous avez besoin d'un certificat SSL approuvé. Selon votre scénario, utilisez une des deux méthodes suivantes :

  1. Demandez un certificat de serveur pour le site web auprès d'une autorité de certification.

    Utilisez l'Assistant Certificat de serveur Web pour générer un fichier de demande de certificat (Certreq.txt) que vous envoyez à une autorité de certification, ou pour générer une demande pour une autorité de certification en ligne. Par exemple, Services de certificat Microsoft dans Windows Server 2012. Selon le niveau d'assurance d'identification proposé par votre certificat de serveur, plusieurs jours, voire plusieurs mois, peuvent être nécessaires pour que l'autorité de certification approuve votre demande et vous envoie un fichier de certificat.

    Pour plus d'informations sur la demande d'un certificat de serveur, consultez les rubriques suivantes :

    ImportantImportant
    Le champ Délivré à du certificat SSL approuvé doit être le même que le NOM DNS du service cloud que vous avez utilisé pour la nouvelle machine virtuelle.

  2. Installez le certificat de serveur sur le serveur Web . Dans ce cas, le serveur Web est la machine virtuelle qui héberge le serveur de rapports et le site web est créé dans les étapes ultérieures lorsque vous configurez Reporting Services. Pour plus d'informations sur l'installation du certificat de serveur sur le serveur web à l'aide du composant logiciel enfichable MMC Certificat, consultez Installation d'un certificat de serveur.

    Si vous souhaitez utiliser le script fourni dans cette rubrique, pour configurer le serveur de rapports, la valeur du certificat Empreinte numérique est nécessaire en tant que paramètre du script. Pour plus d'informations sur l'obtention de l'empreinte numérique du certificat, consultez la section suivante.

  3. Affectez le certificat de serveur au serveur de rapports. Cette opération s'effectue dans la section suivante lorsque vous configurez le serveur de rapports.

Icône de flèche utilisée avec le lien Retour en haut Top

Un certificat auto-signé a été créé sur la machine virtuelle lors de la configuration de la machine virtuelle. Le certificat a le même nom que le nom DNS de la machine virtuelle. Afin d'éviter les erreurs de certificat, le certificat doit être approuvé sur la machine virtuelle ainsi que par tous les utilisateurs du site.

  1. Pour approuver l'autorité de certification racine du certificat sur la machine virtuelle locale, ajoutez le certificat aux Autorités de certification racines de confiance. Voici un récapitulatif des étapes requises. Pour obtenir la procédure détaillée d'approbation de l'autorité de certification, consultez Installation d'un certificat de serveur.

    1. Dans le portail de gestion Azure, sélectionnez la machine virtuelle et cliquez sur Connexion. Selon la configuration de votre navigateur, vous pouvez être invité à enregistrer un fichier .rdp pour la connexion à la machine virtuelle.

      se connecter à une machine virtuelle Azure Utilisez le nom de machine virtuelle, le nom d'utilisateur et le mot de passe que vous avez configurés lorsque vous avez créé la machine virtuelle. Par exemple, dans l'image suivante, le nom de la machine virtuelle est ssrsnativecloud et le nom de l'utilisateur est testuser.

      La connexion inclut le nom de la machine virtuelle
    2. Exécutez mmc.exe. Pour plus d'informations, consultez Procédure : afficher des certificats à l'aide du composant logiciel enfichable MMC.

    3. Dans le menu Fichier de l'application console, ajoutez le composant logiciel enfichable Certificats, sélectionnez Compte d'ordinateur quand vous y êtes invité, puis cliquez sur Suivant.

    4. Sélectionnez Ordinateur local pour la gestion, puis cliquez sur Terminer.

    5. Cliquez sur Ok, développez les nœuds certificats -Personnel, puis cliquez sur Certificats. Le certificat est nommé d'après le nom DNS de la machine virtuelle et se termine par cloudapp.net. Cliquez avec le bouton droit sur le nom de certificat, puis cliquez sur Copier.

    6. Développez le nœud Autorités de certification racines de confiance, cliquez avec le bouton droit sur Certificats, puis cliquez sur Coller.

    7. Pour valider, double-cliquez sur le nom de certificat sous Autorités de certification racines de confiance, puis vérifiez qu'il n'y a pas d'erreur et que vous voyez le certificat. Si vous voulez utiliser le script HTTPS inclus dans cette rubrique, pour configurer le serveur de rapports, la valeur des certificats Empreinte numérique est nécessaire en tant que paramètre du script. Pour obtenir la valeur d'empreinte numérique, procédez comme suit. Il existe également un exemple PowerShell permettant de récupérer l'empreinte numérique dans la section Utilisation d'un script pour configurer le serveur de rapports et HTTPS.

      1. Double-cliquez sur le nom du certificat, par exemple, ssrsnativecloud.cloudapp.net.

      2. Cliquez sur l'onglet Détails.

      3. Cliquez sur Empreinte numérique. La valeur de l'empreinte numérique s'affiche dans le champ de détails, par exemple ‎a6 08 3c df f9 0b f7 e3 7c 25 ed a4 ed 7e ac 91 9c 2c fb 2f.

      4. Copiez l'empreinte numérique et enregistrez la valeur pour l'utiliser ultérieurement ou modifiez le script sans attendre.

      5. (*) Avant d'exécuter le script, supprimez les espaces entre les paires de valeurs. Par exemple, l'empreinte numérique indiquée précédemment devrait désormais être ‎a6083cdff90bf7e37c25eda4ed7eac919c2cfb2f.

  2. Affectez le certificat de serveur au serveur de rapports. Cette opération s'effectue dans la section suivante lorsque vous configurez le serveur de rapports.

Si vous utilisez un certificat SSL auto-signé, le nom sur le certificat correspond déjà au nom d'hôte de la machine virtuelle. Par conséquent, le nom DNS de l'ordinateur est déjà enregistré globalement et est accessible par n'importe quel client.

Icône de flèche utilisée avec le lien Retour en haut Top

Cette section décrit la procédure de configuration de la machine virtuelle en tant que serveur de rapports en mode natif Reporting Services. Pour configurer le serveur de rapports, utilisez l'une des méthodes suivantes :

Pour obtenir une procédure détaillée, consultez la section Connexion à la machine virtuelle et démarrage du gestionnaire de configuration de Reporting Services.

Remarque sur l'authentification : l'authentification Windows est la méthode d'authentification recommandée et il s'agit de l'authentification qu'implémente Reporting Services par défaut. Seuls les utilisateurs qui sont configurés sur la machine virtuelle ont accès à Reporting Services et sont affectés à des rôles Reporting Services.

Pour utiliser le script Windows PowerShell pour configurer le serveur de rapports, procédez comme suit. La configuration inclut le protocole HTTP, pas le protocole HTTPS :

  1. Dans le portail de gestion Azure, sélectionnez la machine virtuelle et cliquez sur Connexion. Selon la configuration de votre navigateur, vous pouvez être invité à enregistrer un fichier .rdp pour la connexion à la machine virtuelle.

    se connecter à une machine virtuelle Azure Utilisez le nom de machine virtuelle, le nom d'utilisateur et le mot de passe que vous avez configurés lorsque vous avez créé la machine virtuelle. Par exemple, dans l'image suivante, le nom de la machine virtuelle est ssrsnativecloud et le nom de l'utilisateur est testuser.

    La connexion inclut le nom de la machine virtuelle
  2. Sur la machine virtuelle, ouvrez Windows PowerShell ISE avec des privilèges d'administrateur. PowerShell ISE est installé par défaut sur Windows Server 2012. Nous vous recommandons d'utiliser ISE plutôt qu'une fenêtre standard de Windows PowerShell afin que vous puissiez coller le script dans ISE, le modifier, puis l'exécuter.

  3. Dans Windows PowerShell ISE, cliquez sur le menu Affichage, puis cliquez sur Afficher le volet de script.

  4. Copiez le script suivant, puis collez-le dans le volet de script Windows PowerShell ISE.

    ## This script configures a Native mode report server without HTTPS
    $ErrorActionPreference = "Stop"
    
    $server = $env:COMPUTERNAME
    $HTTPport = 80 # change the value if you used a different port for the private HTTP endpoint when the VM was created.
    
    ## Set PowerShell execution policy to be able to run scripts
    Set-ExecutionPolicy RemoteSigned -Force
    
    ## Utility method for verifying an operation's result
    function CheckResult
    {
        param($wmi_result, $actionname)
        if ($wmi_result.HRESULT -ne 0) {
            write-error "$actionname failed. Error from WMI: $($wmi_result.Error)"
        }
    }
    
    $starttime=Get-Date
    write-host -foregroundcolor DarkGray $starttime StartTime
    
    ## ReportServer Database name - this can be changed if needed
    $dbName='ReportServer'
    
    ## Register for MSReportServer_ConfigurationSetting
    ## Change the version portion of the path to "v11" to use the script for SQL Server 2012
    $RSObject = Get-WmiObject -class "MSReportServer_ConfigurationSetting" -namespace "root\Microsoft\SqlServer\ReportServer\RS_MSSQLSERVER\v12\Admin"
    
    ## Report Server Configuration Steps
    
    ## Setting the web service URL ##
    write-host -foregroundcolor green "Setting the web service URL"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## SetVirtualDirectory for ReportServer site
        write-host 'Calling SetVirtualDirectory'
        $r = $RSObject.SetVirtualDirectory('ReportServerWebService','ReportServer',1033)
        CheckResult $r "SetVirtualDirectory for ReportServer"
    
    ## ReserveURL for ReportServerWebService - port $HTTPport (for local usage)
        write-host "Calling ReserveURL port $HTTPport"
        $r = $RSObject.ReserveURL('ReportServerWebService',"http://+:$HTTPport",1033)
        CheckResult $r "ReserveURL for ReportServer port $HTTPport" 
       
    ## Setting the Database ##
    write-host -foregroundcolor green "Setting the Database"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## GenerateDatabaseScript - for creating the database
        write-host "Calling GenerateDatabaseCreationScript for database $dbName"
        $r = $RSObject.GenerateDatabaseCreationScript($dbName,1033,$false)
        CheckResult $r "GenerateDatabaseCreationScript"
        $script = $r.Script
    
    ## Execute sql script to create the database
        write-host 'Executing Database Creation Script'
        $savedcvd = Get-Location
        Import-Module SQLPS              ## this automatically changes to sqlserver provider
        Invoke-SqlCmd -Query $script
        Set-Location $savedcvd
      
    ## GenerateGrantRightsScript 
        $DBUser = "NT Service\ReportServer"
        write-host "Calling GenerateDatabaseRightsScript with user $DBUser"
        $r = $RSObject.GenerateDatabaseRightsScript($DBUser,$dbName,$false,$true)
        CheckResult $r "GenerateDatabaseRightsScript"
        $script = $r.Script
    
    ## Execute grant rights script
        write-host 'Executing Database Rights Script'
        $savedcvd = Get-Location
        cd sqlserver:\
        Invoke-SqlCmd -Query $script
        Set-Location $savedcvd
    
    ## SetDBConnection - uses Windows Service (type 2), username is ignored
        write-host "Calling SetDatabaseConnection server $server, DB $dbName"
        $r = $RSObject.SetDatabaseConnection($server,$dbName,2,'','')
        CheckResult $r "SetDatabaseConnection"  
    
    ## Setting the Report Manager URL ##
    
    write-host -foregroundcolor green "Setting the Report Manager URL"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## SetVirtualDirectory for Reports (Report Manager) site
        write-host 'Calling SetVirtualDirectory'
        $r = $RSObject.SetVirtualDirectory('ReportManager','Reports',1033)
        CheckResult $r "SetVirtualDirectory"
    
    ## ReserveURL for ReportManager  - port $HTTPport
        write-host "Calling ReserveURL for ReportManager, port $HTTPport"
        $r = $RSObject.ReserveURL('ReportManager',"http://+:$HTTPport",1033)
        CheckResult $r "ReserveURL for ReportManager port $HTTPport"
    
    write-host -foregroundcolor green "Open Firewall port for $HTTPport"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## Open Firewall port for $HTTPport
        New-NetFirewallRule -DisplayName “Report Server (TCP on port $HTTPport)” -Direction Inbound –Protocol TCP –LocalPort $HTTPport
        write-host "Added rule Report Server (TCP on port $HTTPport) in Windows Firewall"
    
    write-host 'Operations completed, Report Server is ready'
    write-host -foregroundcolor DarkGray $starttime StartTime
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time 
    
    
  5. Si vous avez créé la machine virtuelle avec un port HTTP autre que le port 80, modifiez le paramètre $HTTPport = 80.

  6. Le script est actuellement configuré pour Reporting Services. Si vous voulez exécuter le script pour Reporting Services, modifiez la portion version du chemin d'accès à l'espace de noms en « v11 », dans l'instruction Get-WmiObject.

  7. Exécutez le script.

Validation : pour vérifier que les fonctionnalités de base du serveur de rapports fonctionnent, consultez la section Vérification de la configuration plus loin dans cette rubrique.

Icône de flèche utilisée avec le lien Retour en haut Top

Pour utiliser Windows PowerShell pour configurer le serveur de rapports, procédez comme suit. La configuration inclut le protocole HTTPS, pas le protocole HTTP.

  1. Dans le portail de gestion Azure, sélectionnez la machine virtuelle et cliquez sur Connexion. Selon la configuration de votre navigateur, vous pouvez être invité à enregistrer un fichier .rdp pour la connexion à la machine virtuelle.

    se connecter à une machine virtuelle Azure Utilisez le nom de machine virtuelle, le nom d'utilisateur et le mot de passe que vous avez configurés lorsque vous avez créé la machine virtuelle. Par exemple, dans l'image suivante, le nom de la machine virtuelle est ssrsnativecloud et le nom de l'utilisateur est testuser.

    La connexion inclut le nom de la machine virtuelle
  2. Sur la machine virtuelle, ouvrez Windows PowerShell ISE avec des privilèges d'administrateur. PowerShell ISE est installé par défaut sur Windows Server 2012. Nous vous recommandons d'utiliser ISE plutôt qu'une fenêtre standard de Windows PowerShell afin que vous puissiez coller le script dans ISE, le modifier, puis l'exécuter.

  3. Pour activer l'exécution de scripts, exécutez la commande Windows PowerShell suivante :

    Set-ExecutionPolicy RemoteSigned
    
    Vous pouvez ensuite exécuter la commande suivante pour vérifier la stratégie

    Get-ExecutionPolicy
    
  4. Dans Windows PowerShell ISE, cliquez sur le menu Affichage, puis cliquez sur Afficher le volet de script.

  5. Copiez le script suivant, puis collez-le dans le volet de script Windows PowerShell ISE.

    ## This script configures the report server, including HTTPS
    $ErrorActionPreference = "Stop"
    $httpsport=443 # modify if you used a different port number when the HTTPS endpoint was created.
    
    # You can run the following command to get (.cloudapp.net certificates) so you can copy the thumbprint / certificate hash
    #dir cert:\LocalMachine -rec | Select-Object * | where {$_.issuer -like "*cloudapp*" -and $_.pspath -like "*root*"} | select dnsnamelist, thumbprint, issuer
    #
    # The certifacte hash is a REQUIRED parameter
    $certificatehash="" 
    # the certificate hash should not contain spaces
    
    if ($certificatehash.Length -lt 1) 
    {
        write-error "certificatehash is a required parameter"
    } 
    # Certificates should be all lower case
    $certificatehash=$certificatehash.ToLower()
    $server = $env:COMPUTERNAME
    # If the certificate is not a wildcard certificate, comment out the following line, and enable the full $DNSNAme reference.
    $DNSName="+"
    #$DNSName="$server.cloudapp.net"
    $DNSNameAndPort = $DNSName + ":$httpsport"
    
    ## Utility method for verifying an operation's result
    function CheckResult
    {
        param($wmi_result, $actionname)
        if ($wmi_result.HRESULT -ne 0) {
            write-error "$actionname failed. Error from WMI: $($wmi_result.Error)"
        }
    }
    
    $starttime=Get-Date
    write-host -foregroundcolor DarkGray $starttime StartTime
    
    ## ReportServer Database name - this can be changed if needed
    $dbName='ReportServer'
    
    write-host "The script will use $DNSNameAndPort as the DNS name and port" 
    
    ## Register for MSReportServer_ConfigurationSetting
    ## Change the version portion of the path to "v11" to use the script for SQL Server 2012
    $RSObject = Get-WmiObject -class "MSReportServer_ConfigurationSetting" -namespace "root\Microsoft\SqlServer\ReportServer\RS_MSSQLSERVER\v12\Admin"
    
    ## Reporting Services Report Server Configuration Steps
    
    ## 1. Setting the web service URL ##
    write-host -foregroundcolor green "Setting the web service URL"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## SetVirtualDirectory for ReportServer site
        write-host 'Calling SetVirtualDirectory'
        $r = $RSObject.SetVirtualDirectory('ReportServerWebService','ReportServer',1033)
        CheckResult $r "SetVirtualDirectory for ReportServer"
    
    ## ReserveURL for ReportServerWebService - port 80 (for local usage)
        write-host 'Calling ReserveURL port 80'
        $r = $RSObject.ReserveURL('ReportServerWebService','http://+:80',1033)
        CheckResult $r "ReserveURL for ReportServer port 80" 
    
    ## ReserveURL for ReportServerWebService - port $httpsport
        write-host "Calling ReserveURL port $httpsport, for URL: https://$DNSNameAndPort"
        $r = $RSObject.ReserveURL('ReportServerWebService',"https://$DNSNameAndPort",1033)
        CheckResult $r "ReserveURL for ReportServer port $httpsport" 
    
    ## CreateSSLCertificateBinding for ReportServerWebService port $httpsport
        write-host "Calling CreateSSLCertificateBinding port $httpsport, with certificate hash: $certificatehash"
        $r = $RSObject.CreateSSLCertificateBinding('ReportServerWebService',$certificatehash,'0.0.0.0',$httpsport,1033)
        CheckResult $r "CreateSSLCertificateBinding for ReportServer port $httpsport" 
        
    ## 2. Setting the Database ##
    write-host -foregroundcolor green "Setting the Database"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## GenerateDatabaseScript - for creating the database
        write-host "Calling GenerateDatabaseCreationScript for database $dbName"
        $r = $RSObject.GenerateDatabaseCreationScript($dbName,1033,$false)
        CheckResult $r "GenerateDatabaseCreationScript"
        $script = $r.Script
    
    ## Execute sql script to create the database
        write-host 'Executing Database Creation Script'
        $savedcvd = Get-Location
        Import-Module SQLPS                    ## this automatically changes to sqlserver provider
        Invoke-SqlCmd -Query $script
        Set-Location $savedcvd
      
    ## GenerateGrantRightsScript 
        $DBUser = "NT Service\ReportServer"
        write-host "Calling GenerateDatabaseRightsScript with user $DBUser"
        $r = $RSObject.GenerateDatabaseRightsScript($DBUser,$dbName,$false,$true)
        CheckResult $r "GenerateDatabaseRightsScript"
        $script = $r.Script
    
    ## Execute grant rights script
        write-host 'Executing Database Rights Script'
        $savedcvd = Get-Location
        cd sqlserver:\
        Invoke-SqlCmd -Query $script
        Set-Location $savedcvd
    
    ## SetDBConnection - uses Windows Service (type 2), username is ignored
        write-host "Calling SetDatabaseConnection server $server, DB $dbName"
        $r = $RSObject.SetDatabaseConnection($server,$dbName,2,'','')
        CheckResult $r "SetDatabaseConnection"  
    
    ## 3. Setting the Report Manager URL ##
    
    write-host -foregroundcolor green "Setting the Report Manager URL"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## SetVirtualDirectory for Reports (Report Manager) site
        write-host 'Calling SetVirtualDirectory'
        $r = $RSObject.SetVirtualDirectory('ReportManager','Reports',1033)
        CheckResult $r "SetVirtualDirectory"
    
    ## ReserveURL for ReportManager  - port 80
        write-host 'Calling ReserveURL for ReportManager, port 80'
        $r = $RSObject.ReserveURL('ReportManager','http://+:80',1033)
        CheckResult $r "ReserveURL for ReportManager port 80"
    
    ## ReserveURL for ReportManager - port $httpsport
        write-host "Calling ReserveURL port $httpsport, for URL: https://$DNSNameAndPort"
        $r = $RSObject.ReserveURL('ReportManager',"https://$DNSNameAndPort",1033)
        CheckResult $r "ReserveURL for ReportManager port $httpsport" 
    
    ## CreateSSLCertificateBinding for ReportManager port $httpsport
        write-host "Calling CreateSSLCertificateBinding port $httpsport with certificate hash: $certificatehash"
        $r = $RSObject.CreateSSLCertificateBinding('ReportManager',$certificatehash,'0.0.0.0',$httpsport,1033)
        CheckResult $r "CreateSSLCertificateBinding for ReportManager port $httpsport" 
    
    write-host -foregroundcolor green "Open Firewall port for $httpsport"
    write-host -foregroundcolor green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    ## Open Firewall port for $httpsport
        New-NetFirewallRule -DisplayName “Report Server (TCP on port $httpsport)” -Direction Inbound –Protocol TCP –LocalPort $httpsport
        write-host "Added rule Report Server (TCP on port $httpsport) in Windows Firewall"
    
    write-host 'Operations completed, Report Server is ready'
    write-host -foregroundcolor DarkGray $starttime StartTime
    $time=Get-Date
    write-host -foregroundcolor DarkGray $time
    
    
     

  6. Modifiez les paramètres suivants dans le script :

    1. $certificatehash: Ce paramètre est obligatoire. Si vous n'avez pas enregistré la valeur du certificat de l'étape précédente, utilisez l'une des méthodes suivantes pour copier la valeur de hachage du certificat à partir de l'empreinte numérique des certificats :

      • Sur la machine virtuelle, ouvrez Windows PowerShell ISE et exécutez la commande suivante :

        dir cert:\LocalMachine -rec | Select-Object * | where {$_.issuer -like "*cloudapp*" -and $_.pspath -like "*root*"} | select dnsnamelist, thumbprint, issuer
        
      • Le résultat ressemble à ce qui suit. Si le script renvoie une ligne vide, la machine virtuelle n'a pas de certificat configuré. Pour voir un exemple, consultez la section Pour utiliser le certificat auto-signé des machines virtuelles.

      OU

      1. Sur la machine virtuelle, exécutez mmc.exe, puis ajoutez le composant logiciel enfichable Certificats.

      2. Sous le nœud Autorités de certification racines de confiance, double-cliquez sur le nom du certificat. Si vous utilisez le certificat auto-signé de la machine virtuelle, le certificat est nommé d'après le nom DNS de la machine virtuelle et se termine par cloudapp.net.

      3. Cliquez sur l'onglet Détails.

      4. Cliquez sur Empreinte numérique. La valeur de l'empreinte numérique s'affiche dans le champ de détails, par exemple af 11 60 b6 4b 28 8d 89 0a 82 12 ff 6b a9 c3 66 4f 31 90 48.

      5. Avant d'exécuter le script, supprimez les espaces entre les paires de valeurs. Par exemple af1160b64b288d890a8212ff6ba9c3664f319048

    2. $httpsport: Si vous avez utilisé le port 443 pour le point de terminaison HTTPS, vous n'avez pas besoin de mettre à jour ce paramètre dans le script. Sinon, utilisez la valeur de port sélectionnée lorsque vous avez configuré le point de terminaison privé HTTPS sur la machine virtuelle.

    3. $DNSName: Le script est configuré pour un certificat à caractères génériques $DNSName="+". Si vous ne voulez pas configurer de liaison de certificat à caractères génériques, commentez $DNSName="+", puis activez la ligne suivante, la référence complète de $DNSNAme, ##$DNSName="$server.cloudapp.net".

      Modifiez la valeur $DNSName si vous ne souhaitez pas utiliser le nom DNS de la machine virtuelle pour Reporting Services. Si vous utilisez le paramètre, le certificat doit également utiliser ce nom et vous inscrivez ce nom globalement sur un serveur DNS.

    4. Le script est actuellement configuré pour Reporting Services. Si vous voulez exécuter le script pour Reporting Services, modifiez la portion version du chemin d'accès à l'espace de noms en « v11 », dans l'instruction Get-WmiObject.

  7. Exécutez le script.

Validation : pour vérifier que les fonctionnalités de base du serveur de rapports fonctionnent, consultez la section Vérification de la configuration plus loin dans cette rubrique. Pour vérifier la liaison de certificat, ouvrez une invite de commandes avec des privilèges d'administrateur, puis exécutez la commande suivante :

netsh http show sslcert

Le résultat comprendra les éléments suivants :

IP:port : 0.0.0.0:443

Certificate Hash : f98adf786994c1e4a153f53fe20f94210267d0e7

Icône de flèche utilisée avec le lien Retour en haut Top

Si vous ne souhaitez pas exécuter le script PowerShell pour configurer le serveur de rapports, suivez les étapes de cette section pour utiliser le gestionnaire de configuration en mode natif Reporting Services à cet effet.

  1. Dans le portail de gestion Azure, sélectionnez la machine virtuelle et cliquez sur Connexion. Utilisez le nom d'utilisateur et le mot de passe que vous avez configurés lorsque vous avez créé la machine virtuelle.

    se connecter à une machine virtuelle Azure
  2. Exécutez Windows Update et installez les mises à jour de la machine virtuelle. Si un redémarrage de la machine virtuelle est nécessaire, redémarrez-la et reconnectez-la au portail de gestion Azure.

  3. Dans le menu Démarrer sur la machine virtuelle, tapez Reporting Services et ouvrez le Gestionnaire de configuration Reporting Services.

  4. Conservez les valeurs par défaut pour Nom du serveur et Instance de serveur de rapports. Cliquez sur Se connecter.

  5. Dans le volet gauche, cliquez sur URL du service Web.

  6. Par défaut, Reporting Services est configuré pour le port HTTP 80 avec IP Assigné. Pour ajouter HTTPS :

    1. Dans Certificat SSL :, sélectionnez le certificat que vous voulez utiliser, par exemple [VM name].cloudapp.net. Si aucun certificat n'est indiqué, consultez la section Étape 2 : créer un certificat de service pour plus d'informations sur l'installation et l'approbation du certificat sur la machine virtuelle.

    2. Sous Port SSL :, choisissez 443. Si vous avez configuré le point de terminaison privé HTTPS dans la machine virtuelle avec un autre port privé, utilisez cette valeur ici.

    3. Cliquez sur Appliquer et attendez la fin de l'opération.

  7. Dans le volet gauche, cliquez sur Base de données.

    1. Cliquez sur Modifier la base de données.

    2. Cliquez sur Créer une nouvelle base de données de serveur de rapports, puis cliquez sur Suivant.

    3. Conservez le Nom de serveur : par défaut comme nom de machine virtuelle et le Type d'authentification par défaut comme Utilisateur actuel - Sécurité intégrée. Cliquez sur Suivant.

    4. Conservez le Nom de la base de données par défaut comme ReportServer et cliquez sur Suivant.

    5. Conservez le Type d'authentification par défaut comme Informations d'identification du service et cliquez sur Suivant.

    6. Dans la page Résumé, cliquez sur Suivant.

    7. Lorsque la configuration est terminée, cliquez sur Terminer.

  8. Dans le volet gauche, cliquez sur URL du Gestionnaire de rapports. Conservez le Répertoire virtuel par défaut comme Rapports et cliquez sur Appliquer.

  9. Cliquez sur Quitter pour fermer le Gestionnaire de configuration Reporting Services.

Icône de flèche utilisée avec le lien Retour en haut Top

noteRemarque
Si vous avez utilisé l'un des scripts pour configurer le serveur de rapports, vous pouvez ignorer cette section. Le script inclut une étape pour ouvrir le port de pare-feu. Par défaut, il spécifie le port 80 pour le protocole HTTP et le port 443 pour le protocole HTTPS.

Pour vous connecter à distance au Gestionnaire de rapports ou au serveur de rapports sur la machine virtuelle, un point de terminaison TCP est requis sur la machine virtuelle. Il est obligatoire pour ouvrir le même port dans le pare-feu de la machine virtuelle. Le point de terminaison a été créé lors de la configuration de la machine virtuelle.

Cette section fournit des informations de base sur la façon d'ouvrir le port de pare-feu. Pour plus d'informations, consultez Configurer un pare-feu pour accéder au serveur de rapports.

noteRemarque
Si vous avez utilisé le script pour configurer le serveur de rapports, ignorez cette section. Le script inclut une étape pour ouvrir le port de pare-feu.

Si vous avez configuré un port privé pour HTTPS autre que le port 443, modifiez le script suivant de façon appropriée. Pour ouvrir le port 443 dans le Pare-feu Windows, exécutez ce qui suit :

  1. Ouvrez une fenêtre Windows PowerShell avec des privilèges d'administrateur.

  2. Si vous avez utilisé un port autre que le port 443 lorsque vous avez configuré le point de terminaison HTTPS sur la machine virtuelle, mettez à jour le port dans la commande suivante, puis exécutez la commande :

    New-NetFirewallRule -DisplayName “Report Server (TCP on port 443)” -Direction Inbound –Protocol TCP –LocalPort 443
    
  3. Lorsque la commande est terminée, OK s'affiche dans l'invite de commandes.

Pour vérifier que le port est ouvert, ouvrez une fenêtre Windows PowerShell et exécutez la commande suivante :

get-netfirewallrule | where {$_.displayname -like "*report*"} | select displayname,enabled,action

Icône de flèche utilisée avec le lien Retour en haut Top

Pour vérifier que les fonctionnalités de base du serveur de rapports sont opérationnelles, ouvrez votre navigateur avec des privilèges d'administrateur, puis accédez aux URL suivantes du gestionnaire de rapports AD du serveur de rapports :

  • Sur la machine virtuelle, accédez à l'URL du serveur de rapports :

    http://localhost/reportserver
    
  • Sur la machine virtuelle, accédez à l'URL du gestionnaire de rapports :

    http://localhost/Reports
    
  • À partir de votre ordinateur local, accédez au gestionnaire de rapports distant sur la machine virtuelle. Mettez à jour le nom DNS dans l'exemple suivant. À l'invite de saisie d'un mot de passe, utilisez les informations d'identification d'administrateur créées lors de la configuration de la machine virtuelle. Le nom d'utilisateur est au format [Domaine]\[nom utilisateur], où le domaine est le nom d'ordinateur de la machine virtuelle, par exemple ssrsnativecloud\testuser. Si vous n'utilisez pas HTTPS, supprimez s dans l'URL. Consultez la section suivante pour plus d'informations sur la création d'utilisateurs supplémentaires sur la machine virtuelle.

    https://ssrsnativecloud.cloudapp.net/Reports
    
  • À partir de votre ordinateur local, accédez à l'URL du serveur de rapports distant. Mettez à jour le nom DNS dans l'exemple suivant. Si vous n'utilisez pas HTTPS, supprimez s dans l'URL.

    https://ssrsnativecloud.cloudapp.net/ReportServer
    

Icône de flèche utilisée avec le lien Retour en haut Top

Après avoir configuré et vérifié le serveur de rapports, une tâche d'administration courante consiste à créer un ou plusieurs utilisateurs et à affecter les utilisateurs aux rôles Reporting Services. Pour plus d'informations, consultez les rubriques suivantes :

Icône de flèche utilisée avec le lien Retour en haut Top

Le tableau suivant résume certaines des options disponibles pour publier des rapports existants à partir d'un ordinateur local sur le serveur de rapports hébergé sur la Machine virtuelle Microsoft Azure :

Icône de flèche utilisée avec le lien Retour en haut Top

TipConseil
Pour réduire les frais de vos machines virtuelles Azure si vous ne les utilisez pas, désactivez la machine virtuelle dans le portail de gestion Azure. Si vous utilisez les options d'alimentation Windows dans une machine virtuelle, vous êtes facturé du même montant pour la machine virtuelle. Pour réduire les frais, vous devez arrêter les machines virtuelles dans le portail de gestion Azure. Si vous n'avez plus besoin de la machine virtuelle, n'oubliez pas de supprimer la machine virtuelle et les fichiers .vhd associés pour éviter des frais de stockage. Pour plus d'informations, consultez la section de FAQ de la rubrique Fonctionnement de la tarification Azure.

Icône de flèche utilisée avec le lien Retour en haut Top

Icône de flèche utilisée avec le lien Retour en haut Top

Icône de flèche utilisée avec le lien Retour en haut Top

Voir aussi

Cela vous a-t-il été utile ?
(1500 caractères restants)
Merci pour vos suggestions.
Afficher:
© 2015 Microsoft