Cloud SQL es compatible con SQL Server Reporting Services (SSRS), que te ayuda a crear, implementar y administrar informes paginados.
En esta página, se proporcionan los requisitos, el procedimiento de configuración y las limitaciones para usar SSRS en Cloud SQL.
Antes de comenzar
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 cual instalar y ejecutar SSRS. Puede ser una VM de Compute Engine o un host que no use Compute Engine. Para obtener instrucciones de instalación, consulta Instala SQL Server Reporting Services.
Un registro de Cloud DNS para asignar un nombre de host para 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 administras tu propia zona DNS, crea un registro A que asigne tu nombre de host preferido a la dirección IP de tu instancia.
- Asignación de nombres de host locales: Modifica el archivo
hostsde tu sistema para crear un alias personalizado para tu instancia.
Dos accesos existentes de Cloud SQL, un acceso de configuración y un acceso de servicio. Para crear credenciales de acceso, consulta
gcloud sql users create.
Procedimiento
Para configurar SSRS en Cloud SQL, sigue estos pasos:
- Adquiere una asignación de tiempo de SSRS.
- Configura SSRS.
- Cómo liberar una asignación de tiempo de SSRS
Adquiere una asignación de tiempo de SSRS
SSRS requiere permisos elevados durante la configuración. A fin de adquirir una asignación de tiempo de SSRS para tu instancia, usa el siguiente comando:
gcloud
Usa el siguiente comando para adquirir una asignación de tiempo:
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 de gcloud de esta operación:
| Parámetro | Descripción | Valores permitidos | Valor predeterminado |
--setup-login |
Obligatorio. El acceso que se usa para conectarse a la instancia durante la configuración de SSRS. Este es el primer acceso que se solicita en el Administrador de configuración del servidor de informes cuando se configura una base de datos del servidor de informes. | Debe ser un acceso existente de SQL Server, como sqlserver. |
Ninguno |
--service-login |
Obligatorio. El acceso 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 acceso que se solicita en el Administrador de configuración del servidor de informes cuando se configura una base de datos del servidor de informes. | Debe ser un acceso existente de SQL Server y debe ser diferente del acceso de configuración. | Ninguno |
--report-database |
Obligatorio. Un nombre de base de datos de informes nuevo o existente en la instancia. | No se permiten ciertos caracteres especiales en el nombre de la base de datos del informe, como espacios, corchetes y caracteres que no sean del inglés. | Ninguno |
--duration |
Opcional. Es la cantidad de horas durante las que la asignación de tiempo de SSRS está activa y en las que puedes realizar la configuración de SSRS. | Entre 1 y 12 horas. Por ejemplo, 4h |
5 horas |
REST v1
Con la API de REST, puedes adquirir una asignación de tiempo de SSRS en una instancia. Para adquirir una asignación de tiempo de SSRS, especifica lo siguiente:- Dos accesos diferentes a SQL Server, el acceso de configuración y el acceso de servicio
- El nombre de la base de datos del informe
- La duración durante la cual el arrendamiento está activo
Solo el campo DURATION es opcional. Para obtener más información, consulta AdquireSsrsLeaseContext:
- PROJECT_ID: el ID del proyecto.
- INSTANCE_NAME: El nombre de la instancia.
- SETUP_LOGIN: el acceso de SQL Server que se usa para conectarse a la instancia de SQL Server durante la configuración de SSRS. Este es el primer acceso que se solicita en el Administrador de configuración del servidor de informes cuando se configura una base de datos del servidor de informes.
- SERVICE_LOGIN: Es el acceso a 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 acceso que se solicita en el Administrador de configuración del servidor de informes cuando se configura una base de datos del servidor de informes.
- REPORT_DATABASE: Es un nombre de base de datos de informes existente o nuevo en la instancia. Microsoft no permite ciertos caracteres especiales en el nombre de la base de datos del informe, como espacios, corchetes o caracteres que no estén en inglés.
- DURATION: Opcional Es la cantidad de horas durante las que la asignación de tiempo de SSRS está activa y en las que puedes realizar la configuración de SSRS.
Entre 1 y 12 horas, por ejemplo,
4h.
HTTP method and URL:
POST https://sqladmin.googleapis.com/sql/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLeaseCuerpo JSON de la solicitud:
{ "acquireSsrsLeaseContext": { "setupLogin": SETUP_LOGIN, "serviceLogin": SERVICE_LOGIN, "reportDatabase": REPORT_DATABASE, "duration": DURATION, } }
REST v1beta4
Con la API de REST, puedes adquirir una asignación de tiempo de SSRS en una instancia. Para adquirir una asignación de tiempo de SSRS, especifica lo siguiente:- Dos accesos diferentes a SQL Server, el acceso de configuración y el acceso de servicio
- El nombre de la base de datos del informe
- La duración durante la cual el arrendamiento está activo
Solo el campo DURATION es opcional. Para obtener más información, consulta AdquireSsrsLeaseContext:
- PROJECT_ID: el ID del proyecto.
- INSTANCE_NAME: El nombre de la instancia.
- SETUP_LOGIN: el acceso de SQL Server que se usa para conectarse a la instancia de SQL Server durante la configuración de SSRS. Este es el primer acceso que se solicita en el Administrador de configuración del servidor de informes cuando se configura una base de datos del servidor de informes.
- SERVICE_LOGIN: Es el acceso a 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 acceso que se solicita en el Administrador de configuración del servidor de informes cuando se configura una base de datos del servidor de informes.
- REPORT_DATABASE: Es un nombre de base de datos de informes existente o nuevo en la instancia. Microsoft no permite ciertos caracteres especiales en el nombre de la base de datos del informe, como espacios, corchetes o caracteres que no estén en inglés.
- DURATION: Opcional Es la cantidad de horas durante las que la asignación de tiempo de SSRS está activa y en las que puedes realizar la configuración de SSRS.
Entre 1 y 12 horas, por ejemplo,
4h.
HTTP method and URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/acquireSsrsLeaseCuerpo JSON de la solicitud:
{ "acquireSsrsLeaseContext": { "setupLogin": SETUP_LOGIN, "serviceLogin": SERVICE_LOGIN, "reportDatabase": REPORT_DATABASE, "duration": DURATION, } }
Configura SSRS
Para realizar la configuración de SSRS, sigue estos pasos:
- Abre el Administrador de configuración de Reporting Services en el host en el que está instalado SSRS.
- Conéctate a tu instancia local del servidor de informes.
- Haz clic en Cambiar base de datos.
- Ingresa el nombre de host de SQL Server creado en Cloud DNS y las credenciales de acceso de SQL Server para el acceso a la configuración que se usa en la asignación de tiempo de SSRS.
- Ingresa el nombre de una nueva base de datos del servidor de informes o de la base de datos de informes existente usada para la asignación de tiempo de SSRS.
- Ingresa las credenciales de acceso de SQL Server para el acceso al servicio que se usa para la asignación de tiempo de SSRS.
- Haz clic en Siguiente y completa el último paso.
- Si aún no está configurada, configura la URL del servicio web y la URL del portal web. El portal web debería cargarse correctamente en unos segundos.
Cómo liberar una asignación de tiempo de SSRS
Puedes liberar una asignación de tiempo de forma manual o esperar hasta que venza automáticamente la asignación. Se debe liberar la asignación de tiempo para revertir los permisos elevados necesarios para la configuración y permitir que el acceso al servicio se conecte a la base de datos del informe. El acceso al servicio no puede acceder a la base de datos de informes hasta que venza la asignación de tiempo o se libere de forma manual. El siguiente comando libera una asignación de tiempo de SSRS.
gcloud
Usa el siguiente comando para liberar una asignación de tiempo:
gcloud sql instances release-ssrs-lease INSTANCE_NAME \ --project=PROJECT_NAME
REST v1
Con la API de REST, puedes liberar una asignación de tiempo de SSRS para una instancia. Como se muestra en el siguiente ejemplo de solicitud, solo debes proporcionar el nombre de la instancia y el ID del proyecto.
- PROJECT_ID: el ID del proyecto.
- INSTANCE_NAME: El nombre de la instancia.
HTTP method and URL:
POST https://sqladmin.googleapis.com/v1/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLeaseREST v1beta4
Con la API de REST, puedes liberar una asignación de tiempo de SSRS para una instancia. Como se muestra en el siguiente ejemplo de solicitud, solo debes proporcionar el nombre de la instancia y el ID del proyecto.
- PROJECT_ID: el ID del proyecto.
- INSTANCE_NAME: El nombre de la instancia.
HTTP method and URL:
POST https://sqladmin.googleapis.com/sql/v1beta4/projects/PROJECT_ID/instances/INSTANCE_NAME/releaseSsrsLeaseLimitaciones
- No puedes alojar informes de SSRS ni ejecutarlos desde Cloud SQL.
- Los accesos de Active Directory no son compatibles con la configuración de la base de datos de informes.
- El nombre de la base de datos de informes solo puede contener caracteres alfanuméricos y guiones.
- Debes adquirir una asignación de tiempo para cambiar el acceso que se usa para conectarse a la base de datos de informes a través del Administrador de configuración del servidor de informes.
- En el caso de una base de datos que se procesa con un acceso de servicio, las operaciones de importación de archivos SQL y eliminación de bases de datos replicadas pueden fallar entre la finalización de la configuración de SSRS y la liberación de la asignación de tiempo.
- Debes borrar y volver a crear el usuario de la base de datos para el acceso al servicio en una base de datos de informes importada. Esto se debe a que el usuario existente en la base de datos importada no pertenece a la instancia nueva.
- Cuando agregas nuevos servidores de informes para una implementación de escalamiento horizontal en SSRS, debes adquirir y lanzar la asignación de tiempo de SSRS para cada VM nueva de Windows que aloje un servidor de informes. Cada instancia de Cloud SQL requiere que configures la base de datos de informes nueva mediante la base de datos de informes existente.
- Debes crear una asignación de tiempo nueva cada vez que quieras cambiar las credenciales de acceso de la base de datos del servidor de informes en el Administrador de configuración del servidor de informes.
Preguntas frecuentes
En las siguientes secciones, se abordan las preguntas frecuentes relacionadas con SSRS.
Mecanismo de configuración y asignación de tiempo
En las siguientes secciones, se abordan las preguntas sobre la configuración y la asignación de tiempo de SSRS.
¿Cómo configuro SSRS con Cloud SQL?
Debes instalar SSRS en un host de Windows independiente, como una VM de Compute Engine. Luego, configura SSRS para usar tu instancia de Cloud SQL para las bases de datos ReportServer y ReportServerTempDB. La "asignación de tiempo de SSRS" es una parte importante de este proceso si administras la configuración con Cloud SQL.
¿Qué es la asignación de tiempo de SSRS y por qué es necesaria?
La configuración de SSRS normalmente requiere permisos sysadmin, que no se otorgan a los usuarios en Cloud SQL. El mecanismo de asignación de tiempo otorga temporalmente los permisos elevados necesarios a un acceso de SQL Server especificado, por ejemplo, --setup-login, para completar la configuración de la base de datos.
Adquieres una asignación de tiempo con gcloud sql instances acquire-ssrs-lease
antes de la configuración y la liberas después con
gcloud sql instances release-ssrs-lease.
La asignación de tiempo tiene una duración configurable.
Autenticación
En la siguiente sección, se abordan las preguntas de autenticación.
¿Puedo usar la autenticación de Windows (Microsoft Active Directory) para la configuración?
No, debes usar accesos de SQL Server para los parámetros --setup-login y --service-login cuando adquieras la asignación de tiempo y configures la base de datos del servidor de informes. Los accesos de Windows no son compatibles con este proceso de configuración inicial.
Si bien la configuración requiere accesos de SQL, puedes usar la autenticación de Windows para acceder a los informes si tu instancia de Cloud SQL y el host de SSRS están unidos a uno de los siguientes tipos de dominio:
- Active Directory administrado por el cliente (CMAD) (recomendado)
- Servicio administrado para Microsoft Active Directory
Restricciones
En la siguiente sección, se abordan las preguntas relacionadas con las restricciones o limitaciones.
¿Cuáles son las limitaciones de usar SSRS con Cloud SQL?
- No hay accesos de Microsoft Active Directory para la fase de configuración de la base de datos.
- El nombre de la base de datos de informes solo puede contener caracteres alfanuméricos y guiones.
- Debes adquirir una asignación de tiempo nueva si quieres cambiar las credenciales de la cuenta de servicio más adelante.
- Las implementaciones de escalamiento horizontal requieren el proceso de asignación de tiempo para cada host de SSRS nuevo.
- La importación de bases de datos del servidor de informes existentes requiere pasos manuales para volver a asignar el usuario de acceso al servicio.
Consideraciones sobre el precio
En la siguiente sección, se abordan las consideraciones sobre el precio.
¿Cuáles son los costos asociados con las licencias?
- Se requiere una licencia de SQL Server para tu instancia de Cloud SQL.
Dado que SSRS ejecuta una máquina Windows independiente, asegúrate de que el SO Windows y los componentes de SQL Server de esa máquina tengan la licencia adecuada. Según las políticas de Microsoft, ejecutar SSRS en un servidor independiente puede requerir una licencia adicional de SQL Server. Como opción, Cloud SQL ofrece imágenes de SQL Server compiladas previamente.
Para obtener más información, consulta SQL Server en Google Cloud.
Automatización
En la siguiente sección, se abordan las preguntas relacionadas con la automatización.
¿Se puede automatizar el proceso de instalación y configuración del host de SSRS?
Puedes ejecutar operaciones para adquirir y liberar la asignación de tiempo de SSRS en Cloud SQL con gcloud CLI o las APIs de REST.
La instalación y configuración de SSRS en el entorno de Windows suele implicar pasos manuales a través de la interfaz del Administrador de configuración de Reporting Services, lo que hace que la automatización completa de extremo a extremo sea más desafiante.
Para obtener más información, consulta Instala y configura SSRS.
Mantenimiento
En la siguiente sección, se abordan las preguntas relacionadas con el mantenimiento.
¿Cuáles son las posibles actividades de administración y mantenimiento asociadas con el uso de SSRS?
Antes de comenzar, ten en cuenta la sobrecarga de administración continua asociada con el servidor de SSRS independiente. Eres responsable de administrar, aplicar parches y proteger la VM de Windows que ejecuta el servicio de SSRS. Cloud SQL solo administra la instancia de base de datos.