SQL Server Reporting Services (SSRS)

Cloud SQL supporta SQL Server Reporting Services (SSRS), che ti aiuta a creare, implementare e gestire report impaginati.

Questa pagina fornisce i prerequisiti, la procedura di configurazione e le limitazioni per l'utilizzo di SSRS in Cloud SQL.

Prima di iniziare

Prima di utilizzare SSRS su Cloud SQL, devi disporre di quanto segue:

  • Un'istanza Cloud SQL per ospitare il database del server di report
  • Un host in cui installare ed eseguire SSRS. Può trattarsi di una VM di Compute Engine o di un host che non utilizza Compute Engine. Per istruzioni di installazione, consulta Installare SQL Server Reporting Services.
  • Un record Cloud DNS per assegnare un nome host all'istanza Cloud SQL. Puoi creare un nome host utilizzando una delle seguenti opzioni:

    • Cloud DNS: utilizza Cloud DNS per creare un nome host che rimandi alla tua istanza.
    • Zona DNS personalizzata: se gestisci la tua zona DNS, crea un record A che mappa il tuo nome host preferito all'indirizzo IP della tua istanza.
    • Mappatura del nome host locale: modifica il file hosts del sistema per creare un alias personalizzato per l'istanza.
  • Due accessi Cloud SQL esistenti, un accesso di configurazione e un accesso di servizio. Per creare un accesso, consulta gcloud sql users create.

    Se vuoi utilizzare l'autenticazione Windows, devi utilizzare Managed Active Directory per unire l'istanza SQL Server e l'host che esegue SSRS. Per ulteriori informazioni, consulta Utilizzare Managed Microsoft AD con Cloud SQL.

Procedura

Per configurare SSRS in Cloud SQL, segui questi passaggi:

  1. Acquisire un contratto di locazione SSRS.
  2. Configura SSRS.
  3. Rilasciare un contratto di locazione SSRS.

Acquisire un contratto di locazione SSRS

SSRS richiede autorizzazioni elevate durante la configurazione. Per acquisire un lease SSRS per la tua istanza, utilizza il seguente comando:

gcloud

Utilizza il seguente comando per acquisire un lease:

gcloud sql instances acquire-ssrs-lease INSTANCE_NAME \
--project=PROJECT_NAME \
--setup-login=SETUP_LOGIN \
--service-login=SERVICE_LOGIN \
--report-database=REPORT_DATABASE \
--duration=DURATION \

La tabella seguente descrive i parametri gcloud di questa operazione:

Parametro Descrizione Valori consentiti Valore predefinito
--setup-login Obbligatorio. L'accesso utilizzato per connettersi all'istanza durante la configurazione di SSRS. Questo è il primo accesso richiesto in Report Server Configuration Manager durante l'impostazione di un database del server di report. Deve trattarsi di un accesso SQL Server esistente, ad esempio sqlserver Nessuno
--service-login Obbligatorio. L'accesso SQL Server utilizzato dal server di report per connettersi al database del server di report durante la configurazione di SSRS. Questo è il secondo accesso richiesto in Report Server Configuration Manager durante l'impostazione di un database del server di report. Deve essere un accesso SQL Server esistente e deve essere diverso dall'accesso di configurazione. Nessuno.
--report-database Obbligatorio. Un nome di database del report esistente o nuovo nell'istanza. Alcuni caratteri speciali non sono consentiti nel nome del database dei report, ad esempio spazi, parentesi e caratteri non inglesi. Nessuno
--duration Facoltativo. Il numero di ore in cui il lease SSRS è attivo e durante le quali puoi eseguire la configurazione di SSRS. Tra 1 e 12 ore. Ad esempio, 4h 5 ore

REST v1

Utilizzando l'API REST, puoi acquisire un lease SSRS su un'istanza. Per acquisire un lease SSRS, specifica quanto segue:
  • Due diversi accessi a SQL Server, l'accesso alla configurazione e l'accesso al servizio
  • Il nome del database del report
  • La durata per cui la concessione è attiva

Solo il campo DURATION è facoltativo. Per ulteriori informazioni, vedi AcquireSsrsLeaseContext:

  • PROJECT_ID: l'ID del progetto
  • INSTANCE_NAME: il nome dell'istanza
  • SETUP_LOGIN: l'accesso SQL Server utilizzato per connettersi all'istanza SQL Server durante la configurazione di SSRS. Questo è il primo accesso richiesto in Report Server Configuration Manager durante l'impostazione di un database del server di report.
  • SERVICE_LOGIN: l'accesso SQL Server utilizzato dal server di report per connettersi al database del server di report durante la configurazione di SSRS. Questo è il secondo accesso richiesto in Report Server Configuration Manager durante l'impostazione di un database del server di report.
  • REPORT_DATABASE: il nome di un database dei report esistente o nuovo nell'istanza. Microsoft non consente l'utilizzo di determinati caratteri speciali nel nome del database dei report, ad esempio spazi, parentesi e caratteri non inglesi.
  • DURATION: (Facoltativo) Il numero di ore in cui il lease SSRS è attivo e durante le quali puoi eseguire la configurazione di SSRS. Tra 1 e 12 ore, ad esempio 4h.

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLease

Corpo JSON della richiesta:

{
  "acquireSsrsLeaseContext": {
    "setupLogin": SETUP_LOGIN,
    "serviceLogin": SERVICE_LOGIN,
    "reportDatabase": REPORT_DATABASE,
    "duration": DURATION,
  }
}

REST v1beta4

Utilizzando l'API REST, puoi acquisire un lease SSRS su un'istanza. Per acquisire un lease SSRS, specifica quanto segue:
  • Due diversi accessi a SQL Server, l'accesso alla configurazione e l'accesso al servizio
  • Il nome del database del report
  • La durata per cui la concessione è attiva

Solo il campo DURATION è facoltativo. Per ulteriori informazioni, vedi AcquireSsrsLeaseContext:

  • PROJECT_ID: l'ID del progetto
  • INSTANCE_NAME: il nome dell'istanza
  • SETUP_LOGIN: l'accesso SQL Server utilizzato per connettersi all'istanza SQL Server durante la configurazione di SSRS. Questo è il primo accesso richiesto in Report Server Configuration Manager durante l'impostazione di un database del server di report.
  • SERVICE_LOGIN: l'accesso SQL Server utilizzato dal server di report per connettersi al database del server di report durante la configurazione di SSRS. Questo è il secondo accesso richiesto in Report Server Configuration Manager durante l'impostazione di un database del server di report.
  • REPORT_DATABASE: il nome di un database dei report esistente o nuovo nell'istanza. Microsoft non consente l'utilizzo di determinati caratteri speciali nel nome del database dei report, ad esempio spazi, parentesi e caratteri non inglesi.
  • DURATION: (Facoltativo) Il numero di ore in cui il lease SSRS è attivo e durante le quali puoi eseguire la configurazione di SSRS. Tra 1 e 12 ore, ad esempio 4h.

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLease

Corpo JSON della richiesta:

{
  "acquireSsrsLeaseContext": {
    "setupLogin": SETUP_LOGIN,
    "serviceLogin": SERVICE_LOGIN,
    "reportDatabase": REPORT_DATABASE,
    "duration": DURATION,
  }
}

Configurare SSRS

Per eseguire la configurazione di SSRS:

  1. Apri Reporting Services Configuration Manager sull'host in cui è installato SSRS.
  2. Connettiti all'istanza locale del server di report.
  3. Fai clic su Cambia database.
    1. Inserisci il nome host di SQL Server creato in Cloud DNS e le credenziali di accesso di SQL Server per l'accesso alla configurazione utilizzato per il lease di SSRS.
    2. Inserisci il nome di un nuovo database del server di report o di un database di report esistente utilizzato per il lease SSRS.
    3. Inserisci le credenziali di accesso a SQL Server per l'accesso al servizio utilizzato per il lease SSRS.
    4. Fai clic su Avanti e completa l'ultimo passaggio.
  4. Se non sono già impostati, configura l'URL del servizio web e l'URL del portale web. Il portale web dovrebbe caricarsi correttamente in pochi secondi.

Rilasciare un contratto di locazione SSRS

Puoi rilasciare un lease manualmente o attendere che scada automaticamente. Il rilascio del lease è necessario per ripristinare le autorizzazioni elevate necessarie per la configurazione e per consentire all'accesso al servizio di connettersi al database dei report. L'accesso al servizio non può accedere al database dei report finché il lease non scade o non viene rilasciato manualmente. Il seguente comando rilascia un lease SSRS.

gcloud

Utilizza il seguente comando per rilasciare un lease:

gcloud sql instances release-ssrs-lease INSTANCE_NAME \
--project=PROJECT_NAME

REST v1

Utilizzando l'API REST, puoi rilasciare un lease SSRS per un'istanza. Come mostrato nell'esempio di richiesta seguente, devi fornire solo il nome dell'istanza e l'ID progetto.

  • PROJECT_ID: l'ID del progetto
  • INSTANCE_NAME: il nome dell'istanza

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLease

REST v1beta4

Utilizzando l'API REST, puoi rilasciare un lease SSRS per un'istanza. Come mostrato nell'esempio di richiesta seguente, devi fornire solo il nome dell'istanza e l'ID progetto.

  • PROJECT_ID: l'ID del progetto
  • INSTANCE_NAME: il nome dell'istanza

Metodo HTTP e URL:

POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLease

Limitazioni

  • Gli accessi ad Active Directory non sono supportati per la configurazione del database dei report.
  • Il nome del database del report può contenere solo caratteri alfanumerici e trattini.
  • Devi acquisire un lease per modificare l'accesso utilizzato per connetterti al database dei report tramite Report Server Configuration Manager.
  • Per un database elaborato da un accesso al servizio, le operazioni di importazione dei file SQL ed eliminazione del database replicato possono non riuscire tra il completamento della configurazione di SSRS e il rilascio del lease.
  • Devi eliminare e ricreare l'utente del database per l'accesso al servizio in un database dei report importato. Questo perché l'utente esistente nel database importato non appartiene alla nuova istanza.
  • Quando aggiungi nuovi server di report per un deployment di scalabilità orizzontale in SSRS, devi acquisire e rilasciare il lease SSRS per ogni nuova VM Windows che ospita un server di report. Ogni istanza Cloud SQL richiede la configurazione del nuovo database dei report utilizzando il database dei report esistente.
  • Devi creare un nuovo lease ogni volta che vuoi modificare le credenziali di accesso per il database del server di report in Report Server Configuration Manager.

Domande frequenti

Le sezioni seguenti aiutano a rispondere alle domande frequenti relative a SSRS.

Meccanismo di configurazione e leasing

Le sezioni seguenti aiutano a rispondere alle domande relative alla configurazione e al lease di SSRS.

Come faccio a configurare SSRS con Cloud SQL?

Devi installare SSRS su un host Windows separato, ad esempio una VM Compute Engine. Poi, configura SSRS in modo che utilizzi l'istanza Cloud SQL per i database ReportServer e ReportServerTempDB. Il "contratto SSRS" è una parte importante di questo processo se gestisci la configurazione utilizzando Cloud SQL.

Che cos'è il lease SSRS e perché è necessario?

La configurazione di SSRS richiede normalmente le autorizzazioni sysadmin, che non vengono concesse agli utenti in Cloud SQL. Il meccanismo di lease concede temporaneamente le autorizzazioni con privilegi elevati necessarie a un accesso SQL Server specificato, ad esempio --setup-login, per completare la configurazione del database.

Acquisisci un lease utilizzando gcloud sql instances acquire-ssrs-lease prima della configurazione e rilascialo in seguito con gcloud sql instances release-ssrs-lease. Il lease ha una durata configurabile.

Autenticazione

La sezione seguente ti aiuta a rispondere alle domande sull'autenticazione.

No, devi utilizzare gli accessi SQL Server per i parametri --setup-login e --service-login quando acquisisci il lease e configuri il database del server di report. Gli accessi di Windows non sono supportati per questa procedura di configurazione iniziale.

Sebbene la configurazione richieda accessi SQL, puoi potenzialmente utilizzare l'autenticazione di Windows per accedere ai report se la tua istanza Cloud SQL e l'host SSRS sono entrambi uniti a uno dei seguenti tipi di dominio:

Limitazioni

La sezione seguente risponde alle domande relative a restrizioni o limitazioni.

Quali sono le limitazioni dell'utilizzo di SSRS con Cloud SQL?

  • Non sono presenti accessi a Microsoft Active Directory per la fase di configurazione del database.
  • Il nome del database del report può contenere solo caratteri alfanumerici e trattini.
  • Se vuoi modificare le credenziali del account di servizio in un secondo momento, devi acquisire un nuovo lease.
  • I deployment di scalabilità orizzontale richiedono la procedura di lease per ogni nuovo host SSRS.
  • L'importazione di database del server di report esistenti richiede passaggi manuali per rimappare l'utente di accesso al servizio.

Considerazioni sui prezzi

La sezione seguente ti aiuta a risolvere i problemi relativi ai prezzi.

Quali sono i costi associati alle licenze?

  • Per l'istanza Cloud SQL è necessaria una licenza SQL Server.
  • Poiché SSRS esegue una macchina Windows separata, assicurati che il sistema operativo Windows e tutti i componenti SQL Server su quella macchina siano concessi in licenza correttamente. Secondo le norme di Microsoft, l'esecuzione di SSRS su un server separato potrebbe richiedere una licenza SQL Server aggiuntiva.

Automazione

La sezione seguente ti aiuta a rispondere alle domande relative all'automazione.

Puoi automatizzare la procedura di installazione e configurazione dell'host SSRS?

Puoi eseguire operazioni per acquisire e rilasciare il lease SSRS in Cloud SQL utilizzando gcloud CLI o le API REST.

L'installazione e la configurazione di SSRS all'interno dell'ambiente Windows in genere comportano passaggi manuali tramite l'interfaccia di Reporting Services Configuration Manager, il che rende più difficile l'automazione end-to-end completa.

Per saperne di più, consulta Installare e configurare SSRS.

Manutenzione

La sezione seguente ti aiuta a rispondere alle domande relative alla manutenzione.

Quali sono le potenziali attività di gestione e manutenzione associate all'utilizzo di SSRS?

Prima di iniziare, considera il sovraccarico di gestione continuo associato al server SSRS separato. Sei responsabile della gestione, dell'applicazione di patch e della protezione della VM Windows che esegue il servizio SSRS. Cloud SQL gestisce solo l'istanza di database.