Share via


Anleitung: Bereitstellung für dezentrales Skalieren

In diesem Szenario wird gezeigt, wie eine Notification Services-Instanz auf mehreren Servern bereitgestellt wird. In diesem Szenario befinden sich die Datenbanken auf einem Remoteserver, und Modulkomponenten werden über drei Server dezentral skaliert. Dieses Bereitstellungsszenario gilt für umfangreiche Anwendungen, die mehrere Server benötigen, um eine große Anzahl von Benachrichtigungen effizient zu formatieren und zu verteilen.

ms166428.note(de-de,SQL.90).gifHinweis:
Alle Bereitstellungen von Notification Services sind eindeutig. Verwenden Sie die Verfahren in diesem Thema als Richtlinie für das Entwickeln und Testen Ihrer eigenen Bereitstellungsanweisungen.

Im folgenden Bild wird die Hardwarekonfiguration für dieses Bereitstellungsszenario gezeigt. Im Szenario werden vier Server verwendet: NS1, NS2, NS3 und SQL1. Das Notification Services-Modul wird auf den Servern NS1, NS2 und NS3 ausgeführt. Auf NS1 werden die Ereignisanbieter und Generatoren ausgeführt, und auf NS2 und NS3 werden Verteiler ausgeführt. SQL1 hostet die Instanz- und Anwendungsdatenbanken.

Konfiguration für horizontales Skalieren

NS1, NS2 und NS3 können ein oder mehrere Laufwerke verwenden. Die Anzahl der Laufwerke ist auf diesen Servern unerheblich. SQL1 verfügt jedoch über mehrere Laufwerke, je eins für Datenbankmodul, die Datendateien, die Protokolldateien und tempdb, um die Leistung der Datenbanken zu verbessern.

Voraussetzungen

Bevor Sie eine Notification Services-Instanz bereitstellen, überprüfen Sie, dass alle Voraussetzungen erfüllt sind:

  • Sie haben vorher das Betriebssystem auf NS1, NS2 und NS3 installiert und alle zugehörigen Service Packs und Updates angewendet.
  • Sie haben Microsoft Windows und Microsoft SQL Server 2005-Datenbankmodul auf SQL1 installiert und alle zugehörigen Service Packs und Updates angewendet.
  • Sie führen diese Verfahren unter einem Konto aus, das über Administratorprivilegien auf dem Server verfügt und ein Mitglied der festen Serverrolle sysadmin in SQL Server ist.
  • Ein Konto für die Notification Services Windows-Dienste wurde von Ihnen oder dem Domänenadministrator erstellt. Für diese Anleitung wird das Konto DOMAIN\NSEPGen für den Server NS1 verwendet, auf dem die gehosteten Ereignisanbieter und Generatoren ausgeführt werden, und DOMAIN\NSDist wird für die Server NS2 und NS3 verwendet, auf denen die Verteiler ausgeführt werden. Das Erstellen separater Konten ermöglicht mehr Kontrolle über Berechtigungen.
  • Sie haben alle erforderlichen Dateifreigaben für Ereignis- und Benachrichtigungsdaten erstellt und die erforderlichen Berechtigungen für den Zugriff auf diese Dateien für Ihr Konto, für das Konto DOMAIN\NSEPGen für die Ereignisauswahl und für das Konto DOMAIN\NSDist für die Benachrichtigungsverteilung erteilt.
  • TCP/IP oder das Named Pipes-Netzwerkprotokoll ist für Datenbankmodul aktiviert. Diese Netzwerkprotokolle sind in SQL Server 2005 standardmäßig deaktiviert. Weitere Informationen finden Sie unter SQL Server-Oberflächenkonfiguration.

Bereitstellung (Übersicht)

In dieser Bereitstellungsanleitung führen Sie die folgenden Aufgaben auf NS1 aus. Auf diesem Server wird anschließend das Notification Services-Modul ausgeführt:

  1. Installieren Sie Notification Services.
  2. Erteilen Sie dem NSEPGen-Konto Windows-Berechtigungen.
  3. Erstellen und aktivieren Sie die Notification Services-Instanz.
  4. Registrieren Sie die Notification Services-Instanz, wobei der Windows-Dienst erstellt wird, unter dem die Notification Services-Modulkomponenten ausgeführt werden.
  5. Starten Sie die Notification Services-Instanz, wenn Sie mit dem Generieren von Benachrichtigungen beginnen möchten.

Sie führen die folgenden Aufgaben auf NS2 und NS3 aus, auf denen zusätzliche Notification Services-Modulkomponenten ausgeführt werden:

  1. Installieren Sie Notification Services.
  2. Erteilen Sie dem NSDist-Konto Windows-Berechtigungen.
  3. Registrieren Sie die Notification Services-Instanz, wobei der Windows-Dienst erstellt wird, unter dem die Notification Services-Modulkomponenten ausgeführt werden.
  4. Starten Sie die Notification Services-Instanz, wenn Sie mit dem Generieren von Benachrichtigungen beginnen möchten.

Sie führen folgende Aufgaben auf SQL1 aus, dem Server, der die Datenbanken hostet:

  • Erteilen Sie dem Windows-Konto Datenbankberechtigungen.
    ms166428.note(de-de,SQL.90).gifHinweis:
    Von Notification Services wird auch die SQL Server-Authentifizierung unterstützt. Verwenden Sie nach Möglichkeit die Windows-Authentifizierung.

In den folgenden Anweisungen wird die Notification Services-Eingabeaufforderung verwendet, um zu zeigen, wie Sie ein Skript für die Bereitstellung erstellen können. Außerdem können Sie eine Notification Services-Instanz mithilfe von SQL Server Management Studio bereitstellen. Anweisungen zur Bereitstellung auf einem einzelnen Server mithilfe von SQL Server Management Studio finden Sie unter Beispiele für SQL Server Notification Services.

Aufgaben auf "NS1"

Schritt 1: Installieren der Software

  1. Installieren Sie Notification Services. Sie können zusätzliche Komponenten installieren, sie werden jedoch für die Schritte in dieser Anleitung nicht benötigt.

    Weitere Informationen zum Installieren von Komponenten finden Sie unter Installation von SQL Server Notification Services.

Schritt 2: Erteilen von Windows-Berechtigungen für das DOMAIN\NSEPGen-Konto

  1. Zeigen Sie im Menü Start auf Alle Programme, zeigen Sie auf Microsoft SQL Server 2005, zeigen Sie auf Notification Services, und klicken Sie dann auf Notification Services-Eingabeaufforderung, um ein Fenster der Notification Services-Eingabeaufforderung zu öffnen.

  2. Fügen Sie der lokalen Benutzergruppe das DOMAIN\NSEPGen-Konto hinzu. Geben Sie an der Eingabeaufforderung den folgenden net localgroup-Befehl ein:

    net localgroup users DOMAIN\NSEPGen /add

    Weitere Informationen zum Hinzufügen von Konten zu einer lokalen Gruppe finden Sie in der Windows-Dokumentation.

Schritt 3: Erstellen und Aktivieren der Notification Services-Instanz

  1. Geben Sie an der Eingabeaufforderung den folgenden Befehl ein, um die Instanz- und Anwendungsdatenbanken zu erstellen:

    nscontrol create -in "Path\ICFName"

    Je nach ICF müssen Sie zusätzliche Befehlszeilenargumente und Parameter angeben.

  2. Geben Sie den folgenden Befehl ein, um die Instanz zu aktivieren:

    nscontrol enable -nameinstanceName-serverdatabaseServer

    Die Modulkomponenten befinden sich im Status Aktivierung steht aus, da das Notification Services-Modul noch nicht installiert und gestartet wurde.

    Wenn Sie die Instanz nach dem Registrieren aktivieren, kann das -server-Argument ausgelassen werden.

Schritt 4: Registrieren der Notification Services-Instanz

  1. Geben Sie im geöffneten Eingabeaufforderungsfenster den folgenden Befehl ein:

    nscontrol register -nameinstanceName-serverdatabaseServer-service

        -serviceusername DOMAIN\NSEPGen

        -servicepassword"password"

    Nach Abschluss dieses Befehls ist ein Windows-Dienst mit dem Namen NS$instanceName auf dem lokalen Computer vorhanden.

ms166428.note(de-de,SQL.90).gifHinweis:
Falls Sie die SQL Server-Authentifizierung verwenden, stellen Sie einen Anmeldenamen und ein Kennwort für die SQL Server-Authentifizierung bereit, wenn Sie die Instanz registrieren. Anschließend erteilen Sie diesem Anmeldekonto Berechtigungen.

Verfahren für "NS2" und "NS3"

Auf NS2 und NS3 werden in diesem Szenario des dezentralen Skalierens die Verteiler ausgeführt. Auf diesen Servern müssen Sie die Instanz registrieren, die den Windows-Dienst erstellt. Bevor Sie die Instanz registrieren, müssen Sie Notification Services installieren und dem Dienstkonto Windows-Berechtigungen erteilen.

Schritt 1: Installieren der Software

  1. Installieren Sie Notification Services. Sie können zusätzliche Komponenten installieren, sie werden jedoch für die Schritte in dieser Anleitung nicht benötigt.

    Weitere Informationen zum Installieren von Komponenten finden Sie unter Installation von SQL Server Notification Services.

Schritt 2: Erteilen von Windows-Berechtigungen für das DOMAIN\NSDist-Konto

  1. Zeigen Sie im Menü Start auf Alle Programme, zeigen Sie auf Microsoft SQL Server 2005, zeigen Sie auf Notification Services, und klicken Sie dann auf Notification Services-Eingabeaufforderung, um ein Fenster der Notification Services-Eingabeaufforderung zu öffnen.

  2. Fügen Sie der lokalen Benutzergruppe das DOMAIN\NSDist-Konto hinzu. Geben Sie an der Eingabeaufforderung den folgenden net localgroup-Befehl ein:

    net localgroup users DOMAIN\NSDist /add

    Weitere Informationen zum Hinzufügen von Konten zu einer lokalen Gruppe finden Sie in der Windows-Dokumentation.

Schritt 3: Registrieren der Notification Services-Instanz

  1. Geben Sie im geöffneten Eingabeaufforderungsfenster den folgenden Befehl ein:

    nscontrol register -nameinstanceName-serverdatabaseServer-service

        -serviceusername DOMAIN\NSDist

        -servicepassword"[password]"

    Nach Abschluss dieses Befehls ist ein Windows-Dienst mit dem Namen NS$instanceName auf dem lokalen Computer vorhanden.

ms166428.note(de-de,SQL.90).gifHinweis:
Falls Sie die SQL Server-Authentifizierung verwenden, stellen Sie einen Anmeldenamen und ein Kennwort für die SQL Server-Authentifizierung bereit, wenn Sie die Instanz registrieren. Anschließend erteilen Sie diesem Anmeldekonto Berechtigungen.

Aufgaben auf "SQL1"

Sie müssen dem Notification Services-Modul SQL Server- und Datenbankberechtigungen erteilen. Wenn Arbeitsstationskomponenten auf NS1, NS2 oder NS3 installiert sind, können Sie diese Aufgabe auf einem dieser Server ausführen, sodass Sie sich an SQL1 nicht anmelden müssen.

Erteilen von SQL Server- und Datenbankberechtigungen

  1. Öffnen Sie ein Eingabeaufforderungsfenster.

  2. Geben Sie den folgenden Befehl ein, um SQL Server-Anmeldenamen für die Konten DOMAIN\NSEPGen und DOMAIN\NSDist zu erstellen:

    sqlcmd -E -S databaseServer -Q "CREATE LOGIN [DOMAIN\NSEPGen] FROM WINDOWS;"

    sqlcmd -E -S databaseServer -Q "CREATE LOGIN [DOMAIN\NSDist] FROM WINDOWS;"

  3. Geben Sie den folgenden Befehl an der Eingabeaufforderung ein, um DOMAIN\NSEPGen- und DOMAIN\NSDist-Benutzer in der Instanzdatenbank zu erstellen, und fügen Sie den DOMAIN\NSEPGen-Benutzer den Datenbankrollen NSEventProvider und NSGenerator und den DOMAIN\NSDist-Benutzer der NSDistributor-Datenbankrolle hinzu:

    sqlcmd -E -SdatabaseServer-Q "USEinstanceDatabase;

    **    EXEC CREATE USER [DOMAIN\NSEPGen];**

    **    EXEC CREATE USER [DOMAIN\NSDist];**

    **    EXEC sp_addrolemember N'NSEventProvider', N'DOMAIN\DOMAIN\NSEPGen';"**

    **    EXEC sp_addrolemember N'NSGenerator', N'DOMAIN\DOMAIN\NSEPGen';"**

    **    EXEC sp_addrolemember N'NSDistributor', N'DOMAIN\DOMAIN\Dist';"**

  4. Falls Sie über separate Anwendungsdatenbanken verfügen, geben Sie den folgenden Befehl ein, um DOMAIN\NSEPGen- und DOMAIN\NSDist-Benutzer in der Anwendungsdatenbank zu erstellen, und fügen Sie den DOMAIN\NSEPGen-Benutzer den Datenbankrollen NSEventProvider und NSGenerator und den DOMAIN\NSDist-Benutzer der NSDistributor-Datenbankrolle hinzu:

    sqlcmd -E -S databaseServer -Q "USE applicationDatabase**;**

    **    EXEC CREATE USER [DOMAIN\NSEPGen];**

    **    EXEC CREATE USER [DOMAIN\NSDist];**

    **    EXEC sp_addrolemember N'NSEventProvider', N'DOMAIN\DOMAIN\NSEPGen';"**

    **    EXEC sp_addrolemember N'NSGenerator', N'DOMAIN\DOMAIN\NSEPGen';"**

    **    EXEC sp_addrolemember N'NSDistributor', N'DOMAIN\DOMAIN\Dist';"**

    Falls die Instanz mehrere Anwendungen hostet, wiederholen Sie diesen Schritt für jede Anwendungsdatenbank.

Sie haben nun die Notification Services-Instanz bereitgestellt. Es sollte nun möglich sein, Abonnenten- und Abonnementdaten zu laden und Ereignisse an Anwendungen zu übermitteln. Von Notification Services werden erst dann Daten verarbeitet, wenn der Windows-Dienst gestartet wurde. Nachfolgend wird das Starten des Windows-Dienstes erläutert.

Starten der Notification Services-Instanz

Starten Sie den Windows-Dienst auf allen Servern, auf denen Modulkomponenten ausgeführt werden, wenn die Instanz mit dem Generieren von Benachrichtigungen beginnen soll. Öffnen Sie für diese Anleitung ein Eingabeaufforderungsfenster auf den Servern NS1, NS2 und NS3, und geben Sie den folgenden Befehl ein:

**net start NS$**instance_name

Weitere Informationen finden Sie unter Starten und Beenden von Notification Services-Instanzen.

Mithilfe von SQL Server Management Studio können Sie alle Dienste gleichzeitig starten. Weitere Informationen finden Sie unter Vorgehensweise: Starten einer Instanz von Notification Services (SQL Server Management Studio).

Problembehandlung

Falls die Anwendung keine Benachrichtigungen erstellt, überprüfen Sie den Status der Instanz, indem Sie an der Eingabeaufforderung von Notification Services den folgenden Befehl ausführen:

nscontrol status-name instanceName

Überprüfen Sie, dass alle Komponenten auf den erwarteten Servern ausgeführt werden und sich im Status Aktiviert befinden. Weitere Informationen finden Sie unter Anzeigen des Status von Instanzen, Anwendungen und Komponenten.

Überprüfen Sie außerdem das Windows-Anwendungsprotokoll auf Fehler. Weitere Informationen finden Sie unter Problembehandlung bei Notification Services.

Siehe auch

Konzepte

Bereitstellen einer Notification Services-Instanz
Bereitstellen eines nicht gehosteten Ereignisanbieters
Bereitstellen einer Schnittstelle der Abonnementverwaltung

Andere Ressourcen

nscontrol create (Befehl)
nscontrol enable (Befehl)
nscontrol register (Befehl)
sqlcmd (Dienstprogramm)

Hilfe und Informationen

Informationsquellen für SQL Server 2005