SQL Server Reporting Services (SSRS)

Cloud SQL admite SQL Server Reporting Services (SSRS), que te ayuda a crear, implementar y gestionar informes paginados.

En esta página se describen los requisitos previos, el procedimiento de configuración y las limitaciones para usar SSRS en Cloud SQL.

Antes de empezar

Antes de usar SSRS en Cloud SQL, debes tener lo siguiente:

  • Una instancia de Cloud SQL para alojar la base de datos del servidor de informes
  • Un host en el que instalar y ejecutar SSRS. Puede ser una VM de Compute Engine o un host que no use Compute Engine. Para ver las instrucciones de instalación, consulta Instalar SQL Server Reporting Services.
  • Un registro de Cloud DNS para asignar un nombre de host a tu instancia de Cloud SQL. Puedes crear un nombre de host con una de las siguientes opciones:

    • Cloud DNS: usa Cloud DNS para crear un nombre de host que apunte a tu instancia.
    • Zona DNS personalizada: si gestionas tu propia zona DNS, crea un registro A que asigne el nombre de host que prefieras a la dirección IP de tu instancia.
    • Asignación de nombre de host local: modifica el archivo hosts de tu sistema para crear un alias personalizado para tu instancia.
  • Dos inicios de sesión de Cloud SQL: uno de configuración y otro de servicio. Para crear un inicio de sesión, consulta gcloud sql users create.

    Si quieres usar la autenticación de Windows, debes usar Managed Active Directory para unir la instancia de SQL Server y el host que ejecuta SSRS. Para obtener más información, consulta el artículo Usar Microsoft AD gestionado con Cloud SQL.

Procedimiento

Para configurar SSRS en Cloud SQL, sigue estos pasos:

  1. Adquirir una concesión de SSRS.
  2. Configurar SSRS.
  3. Liberar una concesión de SSRS.

Adquirir un arrendamiento de SSRS

SSRS requiere permisos elevados durante la configuración. Para obtener un arrendamiento de SSRS para tu instancia, usa el siguiente comando:

gcloud

Usa el siguiente comando para obtener un arrendamiento:

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 \

En la siguiente tabla se describen los parámetros gcloud de esta operación:

Parámetro Descripción Valores permitidos Valor predeterminado
--setup-login Obligatorio. El inicio de sesión que se usa para conectarse a la instancia durante la configuración de SSRS. Este es el primer inicio de sesión que se solicita en el Administrador de configuración de Reporting Services al configurar una base de datos del servidor de informes. Debe ser un inicio de sesión de SQL Server, como sqlserver. Ninguno
--service-login Obligatorio. El inicio de sesión de SQL Server que usa el servidor de informes para conectarse a la base de datos del servidor de informes durante la configuración de SSRS. Es el segundo inicio de sesión que se solicita en el gestor de configuración de Reporting Services al definir una base de datos de Reporting Services. Debe ser un inicio de sesión de SQL Server y debe ser diferente del inicio de sesión de configuración. Ninguno
--report-database Obligatorio. Nombre de una base de datos de informes nueva o ya creada en la instancia. No se permiten determinados caracteres especiales en el nombre de la base de datos de informes, como espacios, corchetes o caracteres que no sean ingleses. Ninguno
--duration Opcional. Número de horas durante las que está activa la concesión de SSRS y durante las cuales puedes realizar la configuración de SSRS. Entre 1 y 12 horas. Por ejemplo, 4h 5 horas

REST v1

Con la API REST, puedes obtener un arrendamiento de SSRS en una instancia. Para obtener un arrendamiento de SSRS, especifica lo siguiente:
  • Dos inicios de sesión de SQL Server diferentes: el de configuración y el de servicio
  • Nombre de la base de datos de informes
  • La duración durante la que está activa la concesión.

Solo el campo DURATION es opcional. Para obtener más información, consulta AcquireSsrsLeaseContext:

  • PROJECT_ID: el ID del proyecto.
  • INSTANCE_NAME: el nombre de la instancia.
  • SETUP_LOGIN: el inicio de sesión de SQL Server que se usa para conectarse a la instancia de SQL Server durante la configuración de SSRS. Este es el primer inicio de sesión que se solicita en el Administrador de configuración de Reporting Services al configurar una base de datos del servidor de informes.
  • SERVICE_LOGIN: el inicio de sesión de SQL Server que usa el servidor de informes para conectarse a la base de datos del servidor de informes durante la configuración de SSRS. Este es el segundo inicio de sesión que se solicita en el Gestor de configuración de Report Server al configurar una base de datos de Report Server.
  • REPORT_DATABASE: el nombre de una base de datos de informes nueva o ya creada en la instancia. Microsoft no permite usar determinados caracteres especiales en el nombre de la base de datos de informes, como espacios, corchetes o caracteres que no sean ingleses.
  • DURATION: opcional. Número de horas durante las que está activa la concesión de SSRS y durante las cuales puedes realizar la configuración de SSRS. Entre 1 y 12 horas, por ejemplo, 4h.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

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

REST v1beta4

Con la API REST, puedes obtener un arrendamiento de SSRS en una instancia. Para obtener un arrendamiento de SSRS, especifica lo siguiente:
  • Dos inicios de sesión de SQL Server diferentes: el de configuración y el de servicio
  • Nombre de la base de datos de informes
  • La duración durante la que está activa la concesión.

Solo el campo DURATION es opcional. Para obtener más información, consulta AcquireSsrsLeaseContext:

  • PROJECT_ID: el ID del proyecto.
  • INSTANCE_NAME: el nombre de la instancia.
  • SETUP_LOGIN: el inicio de sesión de SQL Server que se usa para conectarse a la instancia de SQL Server durante la configuración de SSRS. Este es el primer inicio de sesión que se solicita en el Administrador de configuración de Reporting Services al configurar una base de datos del servidor de informes.
  • SERVICE_LOGIN: el inicio de sesión de SQL Server que usa el servidor de informes para conectarse a la base de datos del servidor de informes durante la configuración de SSRS. Este es el segundo inicio de sesión que se solicita en el Gestor de configuración de Report Server al configurar una base de datos de Report Server.
  • REPORT_DATABASE: el nombre de una base de datos de informes nueva o ya creada en la instancia. Microsoft no permite usar determinados caracteres especiales en el nombre de la base de datos de informes, como espacios, corchetes o caracteres que no sean ingleses.
  • DURATION: opcional. Número de horas durante las que está activa la concesión de SSRS y durante las cuales puedes realizar la configuración de SSRS. Entre 1 y 12 horas, por ejemplo, 4h.

Método HTTP y URL:

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

Cuerpo JSON de la solicitud:

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

Configurar SSRS

Para configurar SSRS, sigue estos pasos:

  1. Abre el Gestor de configuración de Reporting Services en el host en el que está instalado SSRS.
  2. Conéctate a tu instancia local del servidor de informes.
  3. Haz clic en Cambiar base de datos.
    1. Introduce el nombre de host de SQL Server creado en Cloud DNS y las credenciales de inicio de sesión de SQL Server para el inicio de sesión de configuración que se usa en el arrendamiento de SSRS.
    2. Introduzca el nombre de una base de datos de servidor de informes nueva o de una base de datos de informes que ya se use para la concesión de SSRS.
    3. Introduce las credenciales de inicio de sesión de SQL Server para el inicio de sesión del servicio que se usa en el alquiler de SSRS.
    4. Haz clic en Siguiente y completa el último paso.
  4. Si aún no lo ha hecho, configure la URL del servicio web y la URL del portal web. El portal web debería cargarse correctamente en unos segundos.

Liberar una concesión de SSRS

Puedes liberar una concesión manualmente o esperar a que caduque automáticamente. Es necesario liberar el arrendamiento para revertir los permisos elevados necesarios para la configuración y permitir que el inicio de sesión del servicio se conecte a la base de datos de informes. El inicio de sesión del servicio no puede acceder a la base de datos de informes hasta que caduque el arrendamiento o se libere manualmente. El siguiente comando libera un arrendamiento de SSRS.

gcloud

Usa el siguiente comando para liberar un arrendamiento:

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

REST v1

Con la API REST, puedes liberar una concesión de SSRS de una instancia. Como se muestra en el siguiente ejemplo de solicitud, solo tiene que proporcionar el nombre de la instancia y el ID del proyecto.

  • PROJECT_ID: el ID del proyecto.
  • INSTANCE_NAME: el nombre de la instancia.

Método HTTP y URL:

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

REST v1beta4

Con la API REST, puedes liberar una concesión de SSRS de una instancia. Como se muestra en el siguiente ejemplo de solicitud, solo tiene que proporcionar el nombre de la instancia y el ID del proyecto.

  • PROJECT_ID: el ID del proyecto.
  • INSTANCE_NAME: el nombre de la instancia.

Método HTTP y URL:

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

Limitaciones

  • No se admiten inicios de sesión de Active Directory para configurar la base de datos de informes.
  • El nombre de la base de datos de informes solo puede contener caracteres alfanuméricos y guiones.
  • Debe obtener una concesión para cambiar el inicio de sesión que se usa para conectarse a la base de datos de informes a través de Administrador de configuración de Reporting Services.
  • En el caso de una base de datos procesada por un inicio de sesión de servicio, las operaciones de importación de archivos SQL y de eliminación de bases de datos replicadas pueden fallar entre la finalización de la configuración de SSRS y la liberación del arrendamiento.
  • Debes eliminar y volver a crear el usuario de la base de datos para el inicio de sesión del servicio en una base de datos de informes importada. Esto se debe a que el usuario de la base de datos importada no pertenece a la nueva instancia.
  • Cuando añadas nuevos servidores de informes para una implementación de escalado horizontal en SSRS, debes adquirir y liberar el contrato de arrendamiento de SSRS para cada nueva máquina virtual de Windows que aloje un servidor de informes. Cada instancia de Cloud SQL requiere que configures la nueva base de datos de informes usando la base de datos de informes actual.
  • Debe crear un nuevo contrato de arrendamiento cada vez que quiera cambiar las credenciales de inicio de sesión de la base de datos del servidor de informes en el Administrador de configuración del servidor de informes.