Häufig gestellte Frage
Wie kann man die Erstellung der Lizenzbilanz automatisieren?
Zuletzt aktualisiert vor 7 Jahren
In diesem Dokument geht es darum, wie man regelmäßig und automatisch einen neuen Lizenzberichts Snapshot (im folgenden „LB“)
erstellen kann.
Normalerweise wird die Erstellung des LB über den Webclient in Auftrag gegeben. Ist der Auftrag erstellt, übernimmt die eigentliche Erstellung der SQL-Server-Agent-Job (in der Standardeinstellung wird dieser alle 5 Minuten ausgeführt). Dieser prüft zunächst, ob schon ein LB in Berechnung ist. Ist das der Fall, wird der Job sofort wieder beendet: die gleichzeitige Berechnung verschiedener Lizenzbilanzberichte soll vermieden werden. Ansonsten wird geprüft, ob noch ein nicht berechneter LB vorliegt. Wird ein „offener Auftrag“ gefunden, dann wird dieser zur Berechnung übergeben.
Wie man sieht, ist die eigentliche Erstellung des LB schon automatisiert. Was fehlt ist die automatische Bestellung. Im Weiteren wird erläutert, wie man diese einrichtet. Dabei müssen folgende Schritte durchlaufen werden:
1. LB Voreinstellungen speichern
Wenn man über die Weboberfläche die Erstellung eines neuen LB beauftragt, dann kann man verschiedene Optionen für den Bericht einstellen.
Aber wo kommen diese Einstellungen her, wenn die Bestellung automatisiert wird?
Im Normalfall werden dazu die gespeicherten Voreinstellungen verwendet.
Aus diesem Grund ist es wichtig, bei der nächsten LB Erstellung die gewünschten Einstellungen auszuwählen und diese als Voreinstellung zu speichern.
Dazu muss das markierte Häkchen gesetzt werden, bevor man auf „Lizenzbilanzbericht erstellen“ klickt.
In der Regel wird es so sein, dass dieser Schritt ohnehin schon ausgeführt wurde, da diese Voreinstellungen auch für die händisch erzeugten Bestellungen verwendet werden.
Alternativ kann man auch einen beliebigen vorhandenen Bericht als Quelle für die Voreinstellungen verwenden. Dieser spezielle Fall wird noch weiter unten erläutert der Erstellung des SQL-Server-Agent-Jobs erläutert.
2. SQL-Server-Agent-Job erstellen und administrieren
Öffnen sie das Skript aus dem Anhang in das SQL Server Management Studio.
Die folgenden Parameter sind vor der Ausführung gegebenenfalls anzupassen. Es folgt die Beschreibung aus dem Skript:
Nach der Anpassung muss das Skript ausgeführt werden (F5), um den Agent-Job zu erstellen.
Wenn man das Skript ohne Anpassung ausführt, dann wird der Job "SMO_ManageLicenseBalanceOrder" erstellt, welcher mit den Standardparametern, jeden Ersten des Monats, die Erstellung eines neuen LB beauftragt. (wenn vor der Ausführung der Parameter @ActvivateJob auf 1 gesetzt wird, muss der Job nicht mehr nachträglich editiert werden).
Das Editieren des Jobs erfolgt im SQL-Server-Management-Studio.
In der Regel muss der Zeitplan angepasst werden. Man kann aber auch z.B. auch Benachrichtigungen hinzufügen, so dass z.B. im Fehlerfall z.B. eine E-Mail versendet wird.
Wenn das noch nicht bei der Erstellung passiert ist, muss der Job am Ende Aktiviert werden, wie im folgenden markiert:
Im Prinzip ist die "normale" Anleitung zur Automatisierung der LB Erstellung hier abgeschlossen.
3. Mehrere SQL-Server-Agent-Jobs verwenden
Man kann bei Bedarf auch mehrere Jobs, z.B. mit unterschiedlichen Zeitplänen erzeugen. Diese müssen dann aber einen eigenen Namen bekommen.
Die verschieden Jobs können dabei auch unterschiedliche Voreinstellung für die Erstellungsparameter verwenden. Siehe dazu den Parameter @ReportID_Preset des Job-Erstellungsskriptes.
Man kann auch bei einem bestehenden Job, die Quelle für die Parameter nachträglich anpassen:
Ermitteln sie zunächst die ReportID des entsprechenden Berichtes. Das ist momentan noch nicht über die Weboberfläche möglich. Man kann dazu erst mal folgendes Skript verwenden:
Wenn die ReportID bestimmt ist, dann den Job zum Editieren öffnen und auf der linken Seite den Eintrag „Schritte“ aktivieren. Dann den ersten Schritt [Bearbeiten].
Es öffnet sich folgende Ansicht. An der markierten Stelle muss statt 0 die Nummer der ermittelten ReportID eingetragen werden.
Danach den Dialog mit [OK] verlassen.
Bei der nächsten Auftragserstellung werden die neuen Parameter berücksichtigt.
erstellen kann.
Normalerweise wird die Erstellung des LB über den Webclient in Auftrag gegeben. Ist der Auftrag erstellt, übernimmt die eigentliche Erstellung der SQL-Server-Agent-Job (in der Standardeinstellung wird dieser alle 5 Minuten ausgeführt). Dieser prüft zunächst, ob schon ein LB in Berechnung ist. Ist das der Fall, wird der Job sofort wieder beendet: die gleichzeitige Berechnung verschiedener Lizenzbilanzberichte soll vermieden werden. Ansonsten wird geprüft, ob noch ein nicht berechneter LB vorliegt. Wird ein „offener Auftrag“ gefunden, dann wird dieser zur Berechnung übergeben.
Wie man sieht, ist die eigentliche Erstellung des LB schon automatisiert. Was fehlt ist die automatische Bestellung. Im Weiteren wird erläutert, wie man diese einrichtet. Dabei müssen folgende Schritte durchlaufen werden:
- LB Voreinstellungen speichern
- SQL-Server-Agent-Job erstellen und administrieren
- Optional: Mehrere SQL-Server-Agent-Jobs verwenden
1. LB Voreinstellungen speichern
Wenn man über die Weboberfläche die Erstellung eines neuen LB beauftragt, dann kann man verschiedene Optionen für den Bericht einstellen.
Aber wo kommen diese Einstellungen her, wenn die Bestellung automatisiert wird?
Im Normalfall werden dazu die gespeicherten Voreinstellungen verwendet.
Aus diesem Grund ist es wichtig, bei der nächsten LB Erstellung die gewünschten Einstellungen auszuwählen und diese als Voreinstellung zu speichern.
Dazu muss das markierte Häkchen gesetzt werden, bevor man auf „Lizenzbilanzbericht erstellen“ klickt.
In der Regel wird es so sein, dass dieser Schritt ohnehin schon ausgeführt wurde, da diese Voreinstellungen auch für die händisch erzeugten Bestellungen verwendet werden.
Alternativ kann man auch einen beliebigen vorhandenen Bericht als Quelle für die Voreinstellungen verwenden. Dieser spezielle Fall wird noch weiter unten erläutert der Erstellung des SQL-Server-Agent-Jobs erläutert.
2. SQL-Server-Agent-Job erstellen und administrieren
Öffnen sie das Skript aus dem Anhang in das SQL Server Management Studio.
Die folgenden Parameter sind vor der Ausführung gegebenenfalls anzupassen. Es folgt die Beschreibung aus dem Skript:
Nach der Anpassung muss das Skript ausgeführt werden (F5), um den Agent-Job zu erstellen.
Wenn man das Skript ohne Anpassung ausführt, dann wird der Job "SMO_ManageLicenseBalanceOrder" erstellt, welcher mit den Standardparametern, jeden Ersten des Monats, die Erstellung eines neuen LB beauftragt. (wenn vor der Ausführung der Parameter @ActvivateJob auf 1 gesetzt wird, muss der Job nicht mehr nachträglich editiert werden).
Das Editieren des Jobs erfolgt im SQL-Server-Management-Studio.
In der Regel muss der Zeitplan angepasst werden. Man kann aber auch z.B. auch Benachrichtigungen hinzufügen, so dass z.B. im Fehlerfall z.B. eine E-Mail versendet wird.
Wenn das noch nicht bei der Erstellung passiert ist, muss der Job am Ende Aktiviert werden, wie im folgenden markiert:
Im Prinzip ist die "normale" Anleitung zur Automatisierung der LB Erstellung hier abgeschlossen.
3. Mehrere SQL-Server-Agent-Jobs verwenden
Man kann bei Bedarf auch mehrere Jobs, z.B. mit unterschiedlichen Zeitplänen erzeugen. Diese müssen dann aber einen eigenen Namen bekommen.
Die verschieden Jobs können dabei auch unterschiedliche Voreinstellung für die Erstellungsparameter verwenden. Siehe dazu den Parameter @ReportID_Preset des Job-Erstellungsskriptes.
Man kann auch bei einem bestehenden Job, die Quelle für die Parameter nachträglich anpassen:
Ermitteln sie zunächst die ReportID des entsprechenden Berichtes. Das ist momentan noch nicht über die Weboberfläche möglich. Man kann dazu erst mal folgendes Skript verwenden:
Wenn die ReportID bestimmt ist, dann den Job zum Editieren öffnen und auf der linken Seite den Eintrag „Schritte“ aktivieren. Dann den ersten Schritt [Bearbeiten].
Es öffnet sich folgende Ansicht. An der markierten Stelle muss statt 0 die Nummer der ermittelten ReportID eingetragen werden.
Danach den Dialog mit [OK] verlassen.
Bei der nächsten Auftragserstellung werden die neuen Parameter berücksichtigt.