Unterstützung für SQL Server Reporting Services in Amazon RDS for SQL Server
Microsoft SQL Server Reporting Services (SSRS) ist eine serverbasierte Anwendung, die für die Berichterstellung und -verteilung verwendet wird. Es ist Teil einer Suite von SQL Server-Services, die auch SQL Server Analysis Services (SSAS) und SQL Server Integration Services (SSIS) enthält. SSRS ist ein Service, der auf SQL Server basiert. Sie können damit Daten aus verschiedenen Datenquellen sammeln und auf eine Weise präsentieren, die leicht verständlich und für die Analyse bereit ist.
Amazon RDS for SQL Server unterstützt das Ausführen von SSRS direkt auf RDS-DB-Instances. Sie können SSRS für vorhandene oder neue DB-Instances aktivieren.
RDS unterstützt SSRS für SQL Server Standard und Enterprise Edition in den folgenden Versionen:
-
SQL Server 2019, Version 15.00.4043.16.v1 und höher
-
SQL Server 2017, Version 14.00.3223.3.v1 und höher
-
SQL Server 2016, Version 13.00.5820.21.v1 und höher
Inhalt
Einschränkungen und Empfehlungen
Die folgenden Einschränkungen und Empfehlungen gelten für die Ausführung von SSRS auf RDS for SQL Server:
-
Sie können SSRS nicht für DB-Instances verwenden, die Lesereplikate haben.
-
Instances müssen AWS Managed Microsoft AD für die SSRS-Webportal- und Webserverauthentifizierung verwenden.
-
Das Importieren und Wiederherstellen von Berichtsserverdatenbanken aus anderen SSRS-Instances wird nicht unterstützt.
Stellen Sie sicher, dass Sie die Datenbanken verwenden, die erstellt werden, wenn die
SSRS
-Option zur RDS-DB-Instance hinzugefügt wird. Weitere Informationen finden Sie unter Berichtsserverdatenbanken. -
Sie können SSRS nicht so konfigurieren, dass der standardmäßige SSL-Port (443) überwacht wird. Die zulässigen Werte sind 1150–49511, außer 1234, 1434, 3260, 3343, 3389 und 47001.
-
Abonnements per E-Mail oder eine Microsoft Windows-Dateifreigabe werden nicht unterstützt.
-
Die Verwendung von Reporting Services Configuration Manager wird nicht unterstützt.
-
Das Erstellen und Ändern von Rollen wird nicht unterstützt.
-
Das Ändern der Eigenschaften des Berichtsservers wird nicht unterstützt.
-
Systemadministrator- und Systembenutzerrollen werden nicht erteilt.
-
Sie können Rollenzuweisungen auf Systemebene nicht über das Webportal bearbeiten.
Aktivieren von SSRS
Verwenden Sie den folgenden Prozess, um SSRS für Ihre DB-Instance zu aktivieren:
-
Erstellen Sie eine neue Optionsgruppe oder wählen Sie eine bestehende Optionsgruppe aus.
-
Fügen Sie die Option
SSRS
zur Optionsgruppe hinzu. -
Ordnen Sie die Optionsgruppe der DB-Instance zu.
-
Erlauben Sie eingehenden Zugriff auf die VPC-Sicherheitsgruppe (Virtual Private Cloud) für den SSRS-Listener-Port.
Erstellen einer Optionsgruppe für SSRS
Um mit SSRS zu arbeiten, erstellen Sie eine Optionsgruppe, die der SQL Server-Engine und der Version der DB-Instance entspricht, die Sie verwenden möchten. Verwenden Sie dazu die AWS Management Console oder AWS CLI.
Sie können auch eine vorhandene Optionsgruppe verwenden, wenn es sich um die korrekte SQL Server-Engine und -Version handelt.
Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2017 erstellt.
So erstellen Sie die Optionsgruppe
Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/
. -
Wählen Sie im Navigationsbereich Option groups (Optionsgruppen) aus.
-
Wählen Sie Create group (Gruppe erstellen) aus.
-
Führen Sie im Bereich Create option group (Optionsgruppe erstellen) Folgendes aus:
-
Geben Sie unter Name einen Namen für die Optionsgruppe ein, der innerhalb Ihres AWS-Kontos nur einmal vorkommt, z. B.
ssrs-se-2017
. Der Name darf nur Buchstaben, Ziffern und Bindestriche enthalten. -
Geben Sie unter Beschreibung eine kurze Beschreibung der Optionsgruppe ein, z. B.
SSRS option group for SQL Server SE 2017
. Die Beschreibung ist nur zur Information. -
Wählen Sie für Engine die Option sqlserver-se aus.
-
Wählen Sie im Feld Major Engine Version (Engine-Hauptversion) 14.00 aus.
-
-
Wählen Sie Create (Erstellen) aus.
Mit der folgenden Prozedur wird eine Optionsgruppe für SQL Server Standard Edition 2017 erstellt.
So erstellen Sie die Optionsgruppe
-
Führen Sie einen der folgenden Befehle aus.
Für Linux, macOS oder Unix:
aws rds create-option-group \ --option-group-name
ssrs-se-2017
\ --engine-namesqlserver-se
\ --major-engine-version14.00
\ --option-group-description "SSRS option group for SQL Server SE 2017
"
Für Windows:
aws rds create-option-group ^ --option-group-name
ssrs-se-2017
^ --engine-namesqlserver-se
^ --major-engine-version14.00
^ --option-group-description "SSRS option group for SQL Server SE 2017
"
Hinzufügen der SSRS-Option zu Ihrer Optionsgruppe
Verwenden Sie als Nächstes die AWS Management Console oder AWS CLI, um die Option SSRS
zu Ihrer Optionsgruppe hinzuzufügen.
So fügen Sie die SSRS-Option hinzu
Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/
. -
Wählen Sie im Navigationsbereich Option groups (Optionsgruppen) aus.
-
Wählen Sie die Optionsgruppe aus, die Sie gerade erstellt haben.
-
Wählen Sie Add option (Option hinzufügen).
-
Wählen Sie unter Optionsdetails für Optionsname die Option SSRS aus.
-
Führen Sie unter Optionseinstellungen die folgenden Schritte aus:
-
Geben Sie den Port ein, den der SSRS-Service überwachen soll. Der Standardwert ist 8443. Eine Liste der zulässigen Werte finden Sie unter Einschränkungen und Empfehlungen.
-
Geben Sie einen Wert für Max. Speicher ein.
Max. Speicher gibt den oberen Schwellenwert an, über dem keine neuen Speicherzuordnungsanforderungen für Berichtsserveranwendungen erteilt werden. Die Zahl ist ein Prozentsatz des Gesamtspeichers der DB-Instance. Die zulässigen Werte sind 10–80.
-
-
Wählen Sie für Security groups (Sicherheitsgruppen) die VPC-Sicherheitsgruppe aus, die der Option zugeordnet werden soll. Verwenden Sie dieselbe Sicherheitsgruppe, die Ihrer DB-Instance zugeordnet ist.
-
Wählen Sie unter Scheduling (Planung) aus, ob die Option sofort oder während des nächsten Wartungsfensters hinzugefügt werden soll.
-
Wählen Sie Add option (Option hinzufügen).
So fügen Sie die SSRS-Option hinzu
-
Erstellen Sie beispielsweise
ssrs-option.json
, eine JSON-Datei mit den folgenden Parametern:-
OptionGroupName
– Der Name der Optionsgruppe, die Sie zuvor erstellt oder ausgewählt haben (ssrs-se-2017
im folgenden Beispiel). -
Port
– Der Port, den der SSRS-Service überwachen soll. Der Standardwert ist 8443. Eine Liste der zulässigen Werte finden Sie unter Einschränkungen und Empfehlungen. -
VpcSecurityGroupMemberships
– VPC-Sicherheitsgruppenmitgliedschaften für Ihre RDS-DB-Instance. -
MAX_MEMORY
– Der obere Schwellenwert, über dem keine neuen Speicherzuordnungsanforderungen für Berichtsserveranwendungen erteilt werden. Die Zahl ist ein Prozentsatz des Gesamtspeichers der DB-Instance. Die zulässigen Werte sind 10–80.
{ "OptionGroupName": "
ssrs-se-2017
", "OptionsToInclude": [ { "OptionName": "SSRS", "Port":8443
, "VpcSecurityGroupMemberships": ["sg-0abcdef123
"], "OptionSettings": [{"Name": "MAX_MEMORY","Value": "60
"}] }], "ApplyImmediately": true } -
-
Fügen Sie die Option
SSRS
zur Optionsgruppe hinzu.Für Linux, macOS oder Unix:
aws rds add-option-to-option-group \ --cli-input-json file://
ssrs-option.json
\ --apply-immediatelyFür Windows:
aws rds add-option-to-option-group ^ --cli-input-json file://
ssrs-option.json
^ --apply-immediately
Zuordnen Ihrer Optionsgruppe zu Ihrer DB-Instance
Verwenden Sie die AWS Management Console oder AWS CLI, um Ihre Optionsgruppe Ihrer DB-Instance zuzuordnen.
Wenn Sie eine vorhandene DB-Instance verwenden, muss ihr bereits eine Active Directory-Domäne und eine AWS Identity and Access Management (IAM)-Rolle zugeordnet sein. Wenn Sie eine neue Instance erstellen, geben Sie eine vorhandene Active Directory-Domäne und IAM-Rolle an. Weitere Informationen finden Sie unter Verwenden der Windows-Authentifizierung mit einer Amazon-RDS-for-SQL-Server-DB-Instance.
Sie können Ihre Optionsgruppe einer neuen oder vorhandenen DB-Instance zuordnen:
-
Ordnen Sie bei einer neuen DB-Instance die Optionsgruppe beim Starten der Instance zu. Weitere Informationen finden Sie unter Erstellen einer Amazon RDS-DB-Instance.
-
Ändern Sie für eine vorhandene DB-Instance die Instance und ordnen Sie die neue Optionsgruppe zu. Weitere Informationen finden Sie unter Ändern einer Amazon RDS-DB-Instance.
Sie können Ihre Optionsgruppe einer neuen oder vorhandenen DB-Instance zuordnen.
So erstellen Sie eine DB-Instance, die Ihre Optionsgruppe verwendet
-
Geben Sie denselben DB-Engine-Typ und dieselbe Hauptversion an, die Sie beim Erstellen der Optionsgruppe verwendet haben.
Für Linux, macOS oder Unix:
aws rds create-db-instance \ --db-instance-identifier
myssrsinstance
\ --db-instance-classdb.m5.2xlarge
\ --enginesqlserver-se
\ --engine-version14.00.3223.3.v1
\ --allocated-storage100
\ --master-user-passwordsecret123
\ --master-usernameadmin
\ --storage-typegp2
\ --license-modelli
\ --domain-iam-role-namemy-directory-iam-role
\ --domainmy-domain-id
\ --option-group-namessrs-se-2017
Für Windows:
aws rds create-db-instance ^ --db-instance-identifier
myssrsinstance
^ --db-instance-classdb.m5.2xlarge
^ --enginesqlserver-se
^ --engine-version14.00.3223.3.v1
^ --allocated-storage100
^ --master-user-passwordsecret123
^ --master-usernameadmin
^ --storage-typegp2
^ --license-modelli
^ --domain-iam-role-namemy-directory-iam-role
^ --domainmy-domain-id
^ --option-group-namessrs-se-2017
So ändern Sie eine DB-Instance für die Verwendung Ihrer Optionsgruppe
-
Führen Sie einen der folgenden Befehle aus.
Für Linux, macOS oder Unix:
aws rds modify-db-instance \ --db-instance-identifier
myssrsinstance
\ --option-group-namessrs-se-2017
\ --apply-immediatelyFür Windows:
aws rds modify-db-instance ^ --db-instance-identifier
myssrsinstance
^ --option-group-namessrs-se-2017
^ --apply-immediately
Zulassen des eingehenden Zugriffs auf Ihre VPC-Sicherheitsgruppe
Um eingehenden Zugriff auf die VPC-Sicherheitsgruppe zu gewähren, die Ihrer DB-Instance zugeordnet ist, erstellen Sie eine eingehende Regel für den angegebenen SSRS-Listener-Port. Weitere Informationen zum Einrichten von Sicherheitsgruppen finden Sie unter Ermöglichen des Zugriffs auf Ihre DB-Instance in der VPC durch Erstellen einer Sicherheitsgruppe.
Berichtsserverdatenbanken
Wenn Ihre DB-Instance mit der Option SSRS verknüpft ist, werden zwei neue Datenbanken für Ihre DB-Instance erstellt: rdsadmin_ReportServer und rdsadmin_ReportServerTempDB. Diese Datenbanken fungieren als ReportServer- und ReportServerTempDB-Datenbanken. SSRS speichert seine Daten in der ReportServer-Datenbank und speichert die Daten in der ReportServerTempDB-Datenbank zwischen.
RDS besitzt und verwaltet diese Datenbanken, sodass Datenbankoperationen auf ihnen wie ALTER und DROP nicht zulässig sind. Sie können jedoch Lesevorgänge in der rdsadmin_ReportServer-Datenbank ausführen.
SSRS-Protokolldateien
Sie können auf ReportServerService_Zeitstempel
.log-Dateien zugreifen. Diese Berichtsserver-Protokolle finden Sie im Verzeichnis D:\rdsdbdata\Log\SSRS
. (Das Verzeichnis D:\rdsdbdata\Log
ist auch das übergeordnete Verzeichnis für Fehlerprotokolle und SQL-Server-Agent-Protokolle.)
Für vorhandene SSRS-Instances ist möglicherweise ein Neustart des SSRS-Service erforderlich, um auf Berichtsserverprotokolle zuzugreifen. Sie können den Service neu starten, indem Sie die SSRS
-Option aktualisieren.
Weitere Informationen finden Sie unter Arbeiten mit Microsoft SQL Server-Protokollen.
Zugriff auf das SSRS-Webportal
Gehen Sie wie folgt vor, um auf das SSRS-Webportal zuzugreifen:
-
Aktivieren Sie Secure Sockets Layer (SSL).
-
Gewähren Sie Domänenbenutzern Zugriff.
-
Greifen Sie mit einem Browser und den Anmeldeinformationen des Domänenbenutzers auf das Webportal zu.
Aktivieren von SSL auf RDS
SSRS verwendet das HTTPS-SSL-Protokoll für seine Verbindungen. Um mit diesem Protokoll arbeiten zu können, importieren Sie ein SSL-Zertifikat in das Microsoft Windows-Betriebssystem auf Ihrem Client-Computer.
Weitere Informationen zu SSL-Zertifikaten finden Sie unter Verwenden von SSL/TLS für die Verschlüsselung einer Verbindung zu einer DB-Instance. Weitere Informationen über die Verwendung von SSL mit SQL Server finden Sie unter Verwenden von SSL mit einer Microsoft SQL Server-DB-Instance.
Gewähren des Zugriffs für Domänenbenutzer
Bei einer neuen SSRS-Aktivierung gibt es keine Rollenzuweisungen in SSRS. Um einem Domänenbenutzer oder einer Benutzergruppe Zugriff auf das Webportal zu gewähren, stellt RDS eine gespeicherte Prozedur bereit.
So erteilen Sie einem Domänenbenutzer Zugriff auf das Webportal
-
Verwenden Sie die folgende gespeicherte Prozedur.
exec msdb.dbo.rds_msbi_task @task_type='SSRS_GRANT_PORTAL_PERMISSION', @ssrs_group_or_username=N'
AD_domain
\user
';
Dem Domänenbenutzer oder der Benutzergruppe wird die RDS_SSRS_ROLE
-Systemrolle erteilt. Diese Rolle hat die folgenden Aufgaben auf Systemebene erteilt:
-
Ausführen von Berichtsdefinitionen
-
Verwalten von Aufträgen
-
Verwalten von freigegebenen Zeitplänen
-
Anzeigen von freigegebenen Zeitplänen
Die Rolle Content Manager
auf Elementebene im Stammordner wird ebenfalls gewährt.
Zugriff auf das Webportal
Nachdem die SSRS_GRANT_PORTAL_PERMISSION
-Aufgabe erfolgreich abgeschlossen wurde, haben Sie Zugriff auf das Portal über einen Webbrowser. Die Webportal-URL hat das folgende Format.
https://
rds_endpoint
:port
/Reports
In diesem Format gilt Folgendes:
-
– Der Endpunkt für die RDS-DB-Instance, die Sie mit SSRS verwenden.rds_endpoint
Sie finden den Endpunkt auf der Registerkarte Konnektivität und Sicherheit für Ihre DB-Instance. Weitere Informationen finden Sie unter Herstellen einer Verbindung zu einer DB-Instance in der Microsoft SQL Server-Datenbank-Engine.
-
– Der Listener-Port für SSRS, den Sie in derport
SSRS
-Option festgelegt haben.
So greifen Sie auf das Webportal zu
-
Geben Sie die Webportal-URL in Ihrem Browser ein.
https://myssrsinstance.cg034itsfake.us-east-1.rds.amazonaws.com:8443/Reports
-
Melden Sie sich mit den Anmeldeinformationen für einen Domänenbenutzer an, dem Sie Zugriff mit der
SSRS_GRANT_PORTAL_PERMISSION
-Aufgabe gewährt haben.
Bereitstellen von Berichten zu SSRS
Nachdem Sie Zugriff auf das Webportal haben, können Sie Berichte für das Webportal bereitstellen. Sie können das Upload-Tool im Webportal verwenden, um Berichte hochzuladen oder direkt über SQL Server Data Tools (SSDT)
-
Der Benutzer, der SSDT gestartet hat, hat Zugriff auf das SSRS-Webportal.
-
Der
TargetServerURL
-Wert in den SSRS-Projekteigenschaften ist auf den HTTPS-Endpunkt der RDS-DB-Instance mit dem SuffixReportServer
gesetzt, zum Beispiel:https://myssrsinstance.cg034itsfake.us-east-1.rds.amazonaws.com:8443/ReportServer
Widerrufen von Berechtigungen auf Systemebene
Die RDS_SSRS_ROLE
-Systemrolle verfügt nicht über ausreichende Berechtigungen zum Löschen von Rollenzuweisungen auf Systemebene. Verwenden Sie zum Entfernen eines Benutzers oder einer Benutzergruppe aus RDS_SSRS_ROLE
dieselbe gespeicherte Prozedur, die Sie zum Erteilen der Rolle verwendet haben, verwenden Sie jedoch den SSRS_REVOKE_PORTAL_PERMISSION
-Aufgabentyp.
So widerrufen Sie den Zugriff eines Domänenbenutzers für das Webportal
-
Verwenden Sie die folgende gespeicherte Prozedur.
exec msdb.dbo.rds_msbi_task @task_type='SSRS_REVOKE_PORTAL_PERMISSION', @ssrs_group_or_username=N'
AD_domain
\user
';
Dadurch wird der Benutzer aus der RDS_SSRS_ROLE
-Systemrolle gelöscht. Außerdem wird der Benutzer aus der Content Manager
-Rolle auf Elementebene gelöscht, wenn der Benutzer sie hat.
Überwachung des Status einer Aufgabe
Rufen Sie die rds_fn_task_status
-Funktion auf, um den Status Ihrer Erteilungs- oder Widerrufsaufgabe zu verfolgen. Dazu sind zwei Parameter erforderlich. Der erste Parameter sollte immer NULL
sein, da er sich nicht auf SSRS bezieht. Der zweite Parameter akzeptiert eine Aufgaben-ID.
Um eine Liste aller Aufgaben anzuzeigen, setzen Sie den ersten Parameter auf NULL
und den zweiten Parameter auf 0
, wie im folgenden Beispiel gezeigt.
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
0
);
Um eine bestimmte Aufgabe zu erhalten, setzen Sie den ersten Parameter auf NULL
und den zweiten Parameter auf die Aufgaben-ID, wie im folgenden Beispiel gezeigt,
SELECT * FROM msdb.dbo.rds_fn_task_status(NULL,
42
);
Die rds_fn_task_status
-Funktion gibt die folgenden Informationen zurück.
Ausgabeparameter |
Beschreibung |
---|---|
|
Die ID der Aufgabe. |
|
Für SSRS können Aufgaben die folgenden Aufgabentypen haben:
|
|
Gilt nicht für SSRS-Aufgaben. |
|
Verlauf der Aufgabe als Prozentwert. |
|
Zeitdauer für die Ausführung der Aufgabe (in Minuten). |
|
Der Status der Aufgabe. Die folgenden Status sind möglich:
|
|
Zusätzliche Informationen über die Aufgabe. Wenn bei der Verarbeitung ein Fehler auftritt, enthält diese Spalte Informationen zu dem Fehler. |
|
Datum und Uhrzeit der letzten Aktualisierung des Aufgabenstatus. |
|
Datum und Uhrzeit, an denen die Aufgabe angelegt wurde. |
|
Gilt nicht für SSRS-Aufgaben. |
|
Gilt nicht für SSRS-Aufgaben. |
|
Gilt nicht für SSRS-Aufgaben. |
|
Gilt nicht für SSRS-Aufgaben. |
|
Gilt nicht für SSRS-Aufgaben. |
|
Metadaten, die der SSRS-Aufgabe zugeordnet sind. |
Deaktivieren von SSRS
Um SSRS zu deaktivieren, entfernen Sie die Option SSRS
aus der Optionsgruppe. Wenn Sie die Option entfernen, werden die SSRS-Datenbanken nicht gelöscht. Weitere Informationen finden Sie unter Löschen der SSRS-Datenbanken.
Sie können SSRS erneut aktivieren, indem Sie die Option SSRS
wieder hinzufügen. Wenn Sie auch die SSRS-Datenbanken gelöscht haben, werden bei der erneuten Aktivierung von SSRS auf derselben DB-Instance neue Berichtsserverdatenbanken erstellt.
So entfernen Sie die SSRS-Option aus der Optionsgruppe
Melden Sie sich bei der AWS Management Console an und öffnen Sie die Amazon-RDS-Konsole unter https://console.aws.amazon.com/rds/
. -
Wählen Sie im Navigationsbereich Option groups (Optionsgruppen) aus.
-
Wählen Sie die Optionsgruppe mit der Option
SSRS
(ssrs-se-2017
in den vorherigen Beispielen). -
Wählen Sie Delete option (Option löschen) aus.
-
Wählen Sie unter Löschoptionen für Zu löschende Optionen die Option SSRS aus.
-
Wählen Sie unter Apply immediately (Sofort anwenden) die Option Yes (Ja) aus, um die Option sofort zu löschen, oder No (Nein), um sie während des nächsten Wartungsfensters zu löschen.
-
Wählen Sie Delete (Löschen).
So entfernen Sie die SSRS-Option aus der Optionsgruppe
-
Führen Sie einen der folgenden Befehle aus.
Für Linux, macOS oder Unix:
aws rds remove-option-from-option-group \ --option-group-name
ssrs-se-2017
\ --options SSRS \ --apply-immediatelyFür Windows:
aws rds remove-option-from-option-group ^ --option-group-name
ssrs-se-2017
^ --options SSRS ^ --apply-immediately
Löschen der SSRS-Datenbanken
Wenn Sie die SSRS
-Option entfernen, werden die Berichtsserverdatenbanken nicht gelöscht. Verwenden Sie die folgende gespeicherte Prozedur, um sie zu löschen.
Um die Berichtsserverdatenbanken zu löschen, müssen Sie zuerst die SSRS
-Option entfernen.
So löschen Sie die SSRS-Datenbanken
-
Verwenden Sie die folgende gespeicherte Prozedur.
exec msdb.dbo.rds_drop_ssrs_databases