SQL Server Reporting Services (SSRS)

Cloud SQL supporta SQL Server Reporting Services (SSRS), che ti aiuta a creare, eseguire il deployment 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 su cui installi ed esegui SSRS. Può essere una VM di Compute Engine o un host che non utilizza Compute Engine. Per le istruzioni di installazione, consulta Installa 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 punta alla tua istanza.
    • Zona DNS personalizzata: se gestisci la tua zona DNS, crea un record A che mappa il nome host che preferisci 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.

Procedura

Per configurare SSRS in Cloud SQL, segui questi passaggi:

  1. Acquisisci un lease SSRS.
  2. Configura SSRS.
  3. Rilascia un lease SSRS.

Acquisisci un lease 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. I dati di accesso utilizzati per connettersi all'istanza durante la configurazione di SSRS. Questo è il primo accesso richiesto in Gestione configurazione server di report quando si imposta un database del server di report. Deve essere un accesso SQL Server esistente, ad esempio sqlserver Nessuno
--service-login Obbligatorio. I dati di accesso a SQL Server utilizzati dal server di report per connettersi al database del server di report durante la configurazione di SSRS. Questo è il secondo accesso richiesto in Gestione configurazione server di report durante l'impostazione di un database del server di report. Deve essere un nome utente SQL Server esistente e deve essere diverso da quello di configurazione. Nessuno.
--report-database Obbligatorio. Il nome di un database di 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 di attività del lease SSRS 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 per la configurazione e l'accesso per il servizio
  • Il nome del database del report
  • La durata del periodo di validità del lease

Solo il campo DURATION è facoltativo. Per saperne di più, consulta AcquireSsrsLeaseContext:

  • PROJECT_ID: l'ID del progetto
  • INSTANCE_NAME: il nome dell'istanza
  • SETUP_LOGIN: i dati di accesso di SQL Server utilizzati per connettersi all'istanza SQL Server durante la configurazione di SSRS. Questo è il primo accesso richiesto in Gestione configurazione server di report quando si imposta un database del server di report.
  • SERVICE_LOGIN: l'accesso a 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 Gestione configurazione server di report quando si imposta un database del server di report.
  • REPORT_DATABASE: il nome di un database di 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 di attività del lease SSRS 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 per la configurazione e l'accesso per il servizio
  • Il nome del database del report
  • La durata del periodo di validità del lease

Solo il campo DURATION è facoltativo. Per saperne di più, consulta AcquireSsrsLeaseContext:

  • PROJECT_ID: l'ID del progetto
  • INSTANCE_NAME: il nome dell'istanza
  • SETUP_LOGIN: i dati di accesso di SQL Server utilizzati per connettersi all'istanza SQL Server durante la configurazione di SSRS. Questo è il primo accesso richiesto in Gestione configurazione server di report quando si imposta un database del server di report.
  • SERVICE_LOGIN: l'accesso a 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 Gestione configurazione server di report quando si imposta un database del server di report.
  • REPORT_DATABASE: il nome di un database di 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 di attività del lease SSRS 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,
  }
}

Configura SSRS

Per eseguire la configurazione di SSRS, segui questi passaggi:

  1. Apri Gestione configurazione Reporting Services sull'host in cui è installato SSRS.
  2. Connettiti all'istanza del server di report locale.
  3. Fai clic su Cambia database.
    1. Inserisci il nome host di SQL Server creato in Cloud DNS e le credenziali di accesso a SQL Server per l'accesso di configurazione utilizzato per il lease 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 entro pochi secondi.

Rilascia un lease 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 al login del servizio di connettersi al database dei report. Il login del 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

  • Non puoi ospitare report SSRS su Cloud SQL o eseguirli da Cloud SQL.
  • Gli accessi ad Active Directory non sono supportati per la configurazione del database dei report.
  • Il nome del database dei report può contenere solo caratteri alfanumerici e trattini.
  • Devi acquisire un lease per modificare i dati di accesso utilizzati per connetterti al database dei report tramite Gestione configurazione server di report.
  • Per un database elaborato da un log del servizio, le operazioni di importazione dei file SQL e di 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 su un database di report importato. Questo accade perché l'utente esistente nel database importato non appartiene alla nuova istanza.
  • Quando aggiungi nuovi server di report per un deployment con scale out 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 di report utilizzando il database di report esistente.
  • Devi creare un nuovo lease ogni volta che vuoi modificare le credenziali di accesso per il database del server di report in Gestione configurazione server di report.

Domande frequenti

Le sezioni seguenti rispondono alle domande frequenti relative a SSRS.

Meccanismo di configurazione e lease

Le sezioni seguenti aiutano a rispondere alle domande sulla configurazione e sul lease SSRS.

Come faccio a configurare SSRS con Cloud SQL?

Devi installare SSRS su un host Windows separato, ad esempio una VM di Compute Engine. Quindi, configura SSRS in modo che utilizzi l'istanza Cloud SQL per i database ReportServer e ReportServerTempDB. Il "lease 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 elevate necessarie a un accesso SQL Server specificato, ad esempio --setup-login, per completare la configurazione del database.

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

Autenticazione

La sezione seguente 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 Windows non sono supportati per questa procedura di configurazione iniziale.

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

Limitazioni

La sezione seguente aiuta a rispondere 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 dei report può contenere solo caratteri alfanumerici e trattini.
  • Se in un secondo momento vuoi modificare le credenziali del account di servizio, devi acquisire un nuovo lease.
  • I deployment con scale out 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 aiuta ad affrontare le considerazioni sui prezzi.

Quali sono i costi associati alle licenze?

  • Per l'istanza Cloud SQL è necessaria una licenza SQL Server.
  • Poiché SSRS viene eseguito su una macchina Windows separata, assicurati che il sistema operativo Windows e tutti i componenti di SQL Server su quella macchina siano concessi in licenza correttamente. In base alle policy di Microsoft, l'esecuzione di SSRS su un server separato potrebbe richiedere una licenza SQL Server aggiuntiva. In alternativa, Cloud SQL offre immagini SQL Server predefinite.

    Per saperne di più, consulta SQL Server su Google Cloud.

Automazione

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

È possibile automatizzare il processo di installazione e configurazione dell'host SSRS?

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

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

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

Manutenzione

La sezione seguente 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 l'overhead 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 del database.