Hochverfügbarkeit beim SQL Server – DBCC 2021 – Teil 1

Jeder meiner Kunden hat sich irgendwann mal die Frage gestellt oder zumindest sollte er sich diese Frage stellen, “brauche ich für meine SQL Server oder einen meiner SQL Server eine gewisse Hochverfügbarkeit”. Leider enden diese Überlegungen immer bei der Frage nach dem Budget… natürlich kosten solche HA-Lösungen mehr Geld, je nach Auswahl der Lösung und der Ausstattung der Umgebung müssen entsprechende Lizenzen zur Verfügung gestellt werden. Aber wenn man die im “worst-case” anfallenden Kosten während oder durch einen Ausfall dagegen rechnet, sollte man ganz klar zur Einsicht kommen, dass diese Kosten vertretbar sind.

Ich durfte heute auf der Data Blaster Community Conference 2021 einen Vortrag dazu halten (Vielen Dank liebe SQLPASS Deutschland), hier kommt eine kleine Zusammenfassung aus meinem Vortrag.

Ich habe direkt am Anfang dargestellt, wie hoch solche Kosten sein können, hierzu habe ich mit Hilfe eines Online-Rechners von Percona eine beispielhafte Rechnung aufgemacht. Der SQL Server fällt für 1-2 Stunden aus, 5 Mitarbeiter sind an dem Restore beschöftigt, jeder von ihnen verdient 100.000 pro Jahr, 100 weitere Mitarbeiter können nicht richtig arbeiten, diese verdienen durchschnittlich 50.000 pro Jahr. Im folgenden Screenshot könnt ihr die Zahlen lesen, die unter Umständen während des Ausfalls, bei der Behebung und deren Nachwirkungen entstehen können.

Warum SQLServer Hochverfuegbarkeit sich rechnet - Percona Calculator

Bei Gesamtkosten von rund 8.000.000 Euro für einen Ausfall eines SQL Servers von rund 2 Stunden, würde ich mir schon vorher überlegen, ob ich z.B. 250.000 Euro im Rahmen der Installation mehr ausgebe, um einen zweiten Server hinzustellen und mit den jeweiligen Lizenzen auszustatten. Aber wie können solche Hochverfügbarkeiten im SQL Server Umfeld aussehen, dazu komme ich in den nächsten Abschnitten, aber erst einmal sollten wir die Überschriften klären… 😉

Hochverfügbarkeit vs Desaster Recovery

Die Definition von Hochverfügbarkeit auf wikipedia.de lautet wie folgt :

Hochverfügbarkeit (englisch high availabilityHA) bezeichnet die Fähigkeit eines Systems, trotz Ausfalls einer seiner Komponenten mit einer hohen Wahrscheinlichkeit (oft 99,99 % oder besser) den Betrieb zu gewährleisten. In Abgrenzung zur Fehlertoleranz kann es bei dem Betrieb im Fehlerfall zu einer Unterbrechung kommen.

https://de.wikipedia.org/wiki/Hochverf%C3%BCgbarkeit

Im Vergleich dazu die Definition von Desaster Recovery

Der englische Begriff Disaster Recovery (im Deutschen auch Katastrophenwiederherstellung oder Notfallwiederherstellung genannt) bezeichnet Maßnahmen, die nach einem Ausfall von Komponenten in der Informationstechnik eingeleitet werden. Dazu zählt sowohl die Datenwiederherstellung als auch das Ersetzen nicht mehr benutzbarer InfrastrukturHardware und Organisation. Umfassender als Disaster Recovery ist der Begriff Business Continuity, der nicht die Wiederherstellung der IT-Dienste, sondern unterbrechungsfreie Geschäftsabläufe in den Vordergrund stellt.

https://de.wikipedia.org/wiki/Disaster_Recovery

Bei der Hochverfügbarkeit geht es eben mehr darum, die eintretende Zeit des Ausfalls, also die Downtime möglichst gering zu halten, so dass alle angeschlossenen Systeme möglichst ohne Datenverlust und manuellen Eingriff schnellstmöglich weiterlaufen. Hierzu sollte man sich vor der Installation natürlich Gedanken zur Prozessgestaltung, den zu erreichenden Zielen und der Notwendigkeit zu machen.

  • Was braucht das Business?
  • Was kostet es das Business wenn sie nicht mehr arbeiten können?
  • Gibt es ggfs einen Kompromiss zwischen Technik und Business? Müssen es wirklich die minimalsten Ausfallzeiten (< 10 Sekunden) sein oder reichen vielleicht auch maximale Ausfallzeiten von kleiner einer Minute?
  • Was kann die Technik überhaupt abbilden? Wissen, Prozesse u.ä.
  • Welceh rechtlichen Rahmen müssen ggfs eingehalten werden?

Und erst wenn man diese Fragen vorher geklärt hat, kann man sich Gedanken über die eigentliche Hochverfügbarkeitslösung machen und wie diese implementiert werden kann/soll.

Das AlwaysOn Failover-Cluster (FCI)

Hochverfuegbarkeit - SQLServer - AlwaysOn Failover Cluster

Kommen wir zu einer der möglichen Lösungen zur Realisierung der Hochverfügbarkeit des SQL Servers innerhalb des eigenen Rechenzentrums, das Windows Failover Cluster (im Grunde identisch zu einem Linux Failover Cluster, hier sollte man sich an die Angaben/Dokumentation der jeweiligen Distribution und eingesetzten Cluster-Software halten).

Initial erstellt man aus zwei Windows Servern mit dem zusätzlich installierten Failover-Cluster Feature ein Windows Failover Cluster, grob gesagt, man verbindet beide Server logisch (und im AD) miteinander. Beide kennen sich und wissen nun, dass sie zusammengehören und tauschen mehrere entsprechenden Health-Status Informationen untereinander aus. Dieses Windows Failover Cluster erhält eine eigene IP und einen eigenen DNS Namen, sowie ein Cluster-Named-Object im AD, dieses CNO “steuert” später das Cluster im AD.

Zu den notwendigen Storage-Requirements kann ich hier wenig sagen, da dies von den jeweiligen Umgebungen abhängt… SAN, NAS, NFS, HCI oder ähnliches, auf jeden Fall muss es sich um einen Storage handeln, der in der Lage ist beiden Servern Zugriff zu gewähren. Microsoft schreibt dazu folgendes:

Storage

Im Gegensatz zur Verfügbarkeitsgruppe muss eine FCI freigegebenen Speicher zwischen allen Knoten der FCI für Datenbank und Protokolle verwenden. Der freigegebene Speicher kann die Form von WSFC-Clusterdatenträgern, direkten Speicherplätzen (Storage Spaces Direct, S2D), Datenträgern auf einem SAN oder Dateifreigaben auf einem SMB aufweisen. Auf diese Weise verfügen alle Knoten in der FCI immer dann über die gleiche Sicht der Instanzdaten, wenn ein Failover auftritt. Dies bedeutet jedoch, dass der freigegebene Speicher das Potenzial hat, die einzelne Fehlerquelle zu sein. Die FCI hängt zudem von der zugrunde liegenden Speicherlösung ab, um Datenschutz sicherzustellen.

https://docs.microsoft.com/de-de/sql/sql-server/failover-clusters/windows/always-on-failover-cluster-instances-sql-server?view=sql-server-ver15&WT.mc_id=DP-MVP-5002576#Recommendations

Nun kann man mit der eigentlichen Installation des SQL Servers beginnen, auf dem Node 1 wird die Basis-Installation für das SQL Server Failover Cluster geschaffen “Erstellung eines Failover-Clusters”, während auf dem Node 2 “nur” ein Knoten zu einem bestehenden SQL Server Cluster hinzugefügt wird.

Je nach Ausgestaltung dieses Cluster – nur eine Instanz oder mehrere Instanzen – müssen SQL Server Lizenzen beschafft werden. Hierbei kann man zwischen zwei Betriebsmodis unterscheiden, aktiv/passiv oder aktiv/aktiv. Bei aktiv/passiv dürfen die SQL Server Instanzen immer nur auf einem Knoten des Clusters laufen, im Fehlerfall für einen begrenzten Zeitraum auch auf beiden Knoten. Bei aaktiv/aktiv können beide Knoten gleichermaßen und zeitlich unbegrenzt voll genutzt werden, was gerade bei mehreren Instanzen unter Umständen Sinn machen kann, da man so eine gewisse Last-Aufteilung vornehmen kann.

Sollte nun ein Knoten im Cluster ausfallen, so kann der zweite Knoten vereinfacht gesagt nicht mehr der anderen Seite kommunizieren und versucht schnellstmöglich die ausgefallenen Services auf seine Seite zu holen und dort zu starten.

Ein hybrides Szenario ist hierbei leider nicht möglich, da es keine Möglichkeit der gesharten Ressourcen zwischen on-premise und Cloud gibt. Aber man kann alternativ auch ein Failover-Cluster in der Azure Cloud aufbauen. Hierzu benötigt man eine Proximity Placement Group, entsprechende Managed Disks mit aktiviertem “Shared Storage” Feature und die beschriebenen zwei virtuellen Maschinen, die eigentliche Installation und Betrieb ist im Grunde identisch.

Hochverfügbarkeit Azure SQLServer Failover Cluster - DBCC2021

Mehr zu Hochverfügbarkeiten des SQL Servers kommt demnächst in einem zweiten Beitrag.

aMS Germany 2020 – ein weiterer virtueller Event

Am gestrigen Dienstag durfte ich zwei Sessions auf der aMS Germany 2020 halten, ein virtueller Event organisiert durch mehrere Community-bekannte Größen wie Sascha Fredrich und Martin Gudel. Diese Zusammenarbeit zeigt auch sehr schön, dass es möglich ist solche Veranstaltungen zu organisieren, auch wenn man 100te Kilometer auseinander wohnt. Sascha im Süden von Deutschland (also zumindest für mich – Süden 😉 ) und Martin in Hamburg. Dem Organisationsteam gehörten auch noch Patrick Guimonet an, sowie Mr. OneDrive Hans Brender, gemeinsam haben Sie einen Event erstellt, der insgesamt in 7 parallelen Tracks mit mehr als 50 Session beinhaltet.

Einen Überblick über alle Sprecher und Sessions könnt ihr auf den Schedule-Seiten der Veranstaltung finden. => https://ams-germany-2020.sessionize.com/

meine erste Session – Einstieg in Azure SQL Managed Instance

In dieser Session ging um einen ersten groben Einblick, was die Azure SQL Managed Instance ist, was sie kann und was man für sein Geld bekommt. Begonnen habe ich mit einem ersten Überblick welche Möglichkeiten Azure SQL alles bietet, zum Beispiel das Deployment eines normalen SQL Server in einer Azure virtuellen Maschine oder als Azure SQL Database in den unterschiedlichen Ausprägungen. Weiter ging es mit den verschiedenen Fakten zu aktuellen Features und Fakten rund um die Managed Instance und woran man bei der Vorbereitung und Planung eines Deployments denken sollte.

aMS Germany 2020 - Bjoern Peters - Einstieg in Azure SQL Managed Instance - Beispiele für Features und Capabilities - Business Continuity

In der Demo bin ich einmal ein exemplarisches Deployment einer Azure SQL Managed Instance über das Portal durchgegangen und habe zu den wichtigsten Konfigurationspunkten etwas erklärt, damit alle Teilnehmer der Session verstehen was wichtig ist und was man beachten sollte. In meiner Demo-Umgebung konnte ich abschließend noch zeigen, wie sich die neue Instanz sowohl im SQL Server Management Studio als auch im Azure Data Studio darstellt.

Fragen wurden leider keine gestellt, was darauf hindeutet, dass mein Vortrag verständlich und nicht zu kompliziert war. 😉

meine zweite Session – Change your skills – Überblick über aktuelle Lernpfade und Zertifizierungen

Da ich mich in diesem Jahr verstärkt um das Thema Zertifizierungen gekümmert habe, vor allem meine eigenen, und immer wieder in Gesprächen feststellen musste, das viele hier große Fragen haben, wollte ich hier einmal Licht ins Dunkel bringen. Also ging es in diesem Vortrag um die verschiedenen – unter anderem kostenfreien – Möglichkeiten wie man zum einen Wissen aufbauen kann zu den aktuellen Themen im Microsoft Umfeld, zum anderen wie man mit diesem Wissen sich die dazugehörigen Prüfungen vorbereiten kann.

aMS Germany 2020 - Bjoern Peters - Change your skills - Überblick über aktuelle Lernpfade und Zertifizierungen - von der produktspezifischen Prüfung zur Rollenbasierten Zertifizierung

Microsoft bietet mit Microsoft Learn ein sehr gute Plattform und vor allem in Zeiten der Corona-Pandemie erweiterte Möglichkeiten zur Weiterbildung, wie man hier seinen eigenen Bildungsweg findet und welche Inhalte für wen relevant sind, sowie was man mit diesem Wissen erreichen kann, darum ging es in diesem Vortrag. Ich wollte einen Überblick über die unterschiedlichen Plattformen und Wege aufzeigen mit denen man sich den neuen Herausforderungen in der aktuellen Projektsituation bewähren kann oder eben auf neue, zukünftige Aufgaben vorbereiten kann.

Gerade heute habe ich erst wieder ein längeres Gespräch mit einem Kollegen gehabt, der mich zu den Details in der Vorbereitung und Durchführung einer Microsoft Prüfung aus dem Home-Office heraus befragte. Ich erklärte im die wichtigen Punkte beim System-Test, dem CheckIn-Prozess und auf was man achten muss, wenn man die Prüfung aus den eigenen vier Wänden angehen möchte. Denn Microsoft hat diese Möglichkeit eingeräumt bzw ausgeweitet, damit viele neue Teilnehmer – trotz geschlossener Prüfungscenter – und gerade bei Kurzarbeit oder Unternehmungsschließung sich auf neue Abenteuer vorbereiten kann.

Hierzu gibt es auch eine neue Zusammenarbeit zwischen Microsoft und Linkedin, bei der es darum geht, Arbeitssuchenden oder Umschulungswilligen eine Plattform zu bieten, auf einfachen und unkomplizierten Wegen sich Wissen anzueignen und so sich Vorteile auf dem Arbeitsmarkt zu verschaffen.

meine Präsentationen der aMS Germany 2020

Mir haben diese beiden Vorträge – sowohl in der Vorbereitung und der Durchführung – sehr viel Spaß gemacht, ich hoffe ich konnte zumindest einem Teilnehmer ein wenig helfen. Vielen Dank den Organisatoren und Sponsoren der #aMSGermany2020.

Ich spreche beim PASS Meetup in München über Azure SQL DB

Ich bin am 12.September 2019 zu Gast beim SQL PASS Meetup der Regionalgruppe Bayern und werde einen Überblick über die verschiedenen Azure SQL Databases geben. Kommt natürlich gerne vorbei, jeder ist herzlich eingeladen, die Veranstaltung ist kostenlos und nicht umsonst 😉

Hier kommt eine Kurzbeschreibung meines Vortrages:

Jeder spricht davon, in die Cloud zu gehen, auch mit seinen Datenbanken. Lassen Sie mich Ihnen die Azure SQL Database in all ihren wunderschönen Farben und Optionen vorstellen. Es geht von der allgemeinen Beschreibung über die verschiedenen Engines / Dienste und natürlich die Features, die Sie für Ihr Geld bekommen. Desweiteren werden wir die unterschiedlichen Bereitstellungs-Methoden und Migrationspfade Ihrer Daten anschauen.
Nach meiner Session können Sie die verschiedenen Datenbank-Dienste unterscheiden und wissen, welcher für Sie und Ihre Anwendung der richtige sein könnte!

Ich freue mich auf einen spannenden Abend mit Ihnen!
Anmeldungen bitte hier vornehmen 😉
https://www.meetup.com/de-DE/pass-bayern/events/264489827/

An diesem Abend werde ich aber nicht der einzige Vortragende sein, denn Sebastian Sproß (Microsoft Cloud Architekt) wird auch eine spannende Geschichte zu Datenbanken CI/CD erzählen und was das Ganze mit (Azure) Devops zu tun hat. Auch auf diesen Vortrag freue ich mich schon sehr.

CommunityRocks

Aha-Effekt beim Setzen von SQL Instanz Parametern mit dbatools

In der letzten Woche habe ich bei einem Kunden mehrere SQL Server installiert und musste diese alle identisch installieren und konfigurieren. Was liegt hier näher als dies mit einem Powershell Skript zu machen, daher habe ich mir die “Mühe” gemacht und die einzelnen Schritte der SQL Server Konfiguration mit dbatools zu realisieren. Ich möchte in diesem Beitrag nicht auf alle Schritte der Konfiguration eingehen, sondern nur einen Teil davon zeigen, der mir einen gewissen “Aha-Effekt” brachte.

Im Rahmen der SQL Server Konfiguration sollten die Default-Werte von “MaxDop” und “Cost Threshold for Parallelism” angepasst werden. Das Setzen von MaxDoP mittels Powershell bzw dbatools ist relativ einfach da es hierfür einen eigenen Befehl gibt, aber auf für den “Cost Threshold for Parallelism” hat dbatools einen “Workaround”, hier gibt es leider (noch) keinen direkten Befehl für.

Set-DbaMaxDop -SqlInstance sql2008, sql2012

Diese Befehlszeile legt den Wert von “Max DOP” (Maximal Degree of Parallelism) auf den empfohlenen Wert für die SQL Server Instanzen “SQL2008” und “SQL2012” fest. Immer in Verbindung mit diesem Konfigurations-Parameter steht immer der “Cost Threshold”, welcher per Default immer noch auf 5 steht.

Alle SQL Server Instanzen auf einmal…

Um alle SQL Server Instanzen relativ schnell und einfach zu konfigurieren, habe ich mir das Kommando “Get-DbaRegisteredServer” (als Alias von Get-DbaRegServer) vorgenommen. Als Vorbereitung hierfür habe ich auf allen Servern im SQL Server Management Studio die notwendigen Server (hier 2 Server mit je 3 Instanzen) als “Registered Server” angelegt und konnte dann mit Powershell aka dbatools darauf zugreifen.

Laut dbatools-Dokumentation, ruft dieser Befehl eine Liste der SQL Server-Objekte ab, die in lokal registrierten Gruppen sowohl im Azure Data Studio als auch auf dem zentralen Verwaltungsserver gespeichert sind.

geborgt bei dbatools.io - Vielen Dank an Chrissy

Mit diesem Befehl und der Möglichkeit die Objekte aus dem Ergebnis-Objekt als Pipeline weiterzugeben, kann man schöne Dinge machen, wie eben den Wert für “MaxDoP” auf allen Server bzw Instanzen in einer Kommandozeile zu konfigurieren…

Get-DbaRegisteredServer | Set-DbaMaxDop

Nun aber zu meinem Aha-Effekt mit einer weiteren Kommandozeile 😉

Cost Threshold For Parallelism

Wie oben schon angedeutet, geht die Anpassung nur über eine Work-around mit dbatools und nicht mit einem dbatools-Kommando, hierzu verwende ich jetzt “Set-DbaSpConfigure”. Natürlich könnte ich auch den “MaxDoP” mit diesem Kommando konfigurieren, dann muss ich aber selber für die vorherige Ermittlung und Berechnung des jeweiligen Wertes für MaxDoP sorgen, also die vorhandenen Kerne ermitteln, diese dann gegen die Best-Practise matchen und den Wert über eine Variable an den Set-Befehl weitergeben. Ich setze diesen Werte in 98% aller Instanzen auf 40 (ausser der Kunde oder die Applikation möchten etwas anderes), daher benötige ich hier keine Logik.

Meiner obigen Logik bzw der Dokumentation folgend habe ich es mit folgender Kommandozeile versucht:

Get-DbaRegisteredServer | Set-DbaSpConfigure -Name 'CostThresholdForParallelism' -Value 40

Dies brachte mich aber zu einem (auf den ersten Blick) nicht nachvollziehbaren Fehler (auch mein Versuch den Wert als String zu übergeben war nicht erfolgreich):

WARNING: [13:02:23][Set-DbaSpConfigure] Value out of range for Server1\Instanz1 ( <-> )
WARNING: [13:02:23][Set-DbaSpConfigure] Value out of range for Server2\Instanz1 ( <-> )
WARNING: [13:02:23][Set-DbaSpConfigure] Value out of range for Server1\Instanz2 ( <-> )
WARNING: [13:02:23][Set-DbaSpConfigure] Value out of range for Server2\Instanz2 ( <-> )
WARNING: [13:02:23][Set-DbaSpConfigure] Value out of range for Server1\Instanz3 ( <-> )
WARNING: [13:02:23][Set-DbaSpConfigure] Value out of range for Server2\Instanz3 ( <-> )

Ich habe den Grund hierfür leider noch nicht wirklich gefunden, vielleicht kann mir jemand das Phänomen näher bringen… vielleicht ist dies ja aber auch so gewollt oder ggfs sogar ein “Bug”…

Aber ich war vorher schon so erfolgreich mit dem Pipelining, dass ich das auch hier angewendet habe… also Ermitteln wir erst alle SQL-Instanzen, ermitteln dann auf diesen Instanzen den aktuellen Parameter für den “Cost Threshold For Parallelism” und setzen ihn dann auf den neuen Wert 40.

Get-DbaRegisteredServer | Get-DbaSpConfigure -Name 'CostThresholdForParallelism' | Set-DbaSpConfigure -Value 40
ComputerName  : Server1
InstanceName  : Instanz1
SqlInstance   : Server1\Instanz1
ConfigName    : CostThresholdForParallelism
PreviousValue : 5
NewValue      : 40

ComputerName  : Server2
InstanceName  : Instanz1
SqlInstance   : Server2\Instanz1
ConfigName    : CostThresholdForParallelism
PreviousValue : 5
NewValue      : 40

ComputerName  : Server1
InstanceName  : Instanz2
SqlInstance   : Server1\Instanz2
ConfigName    : CostThresholdForParallelism
PreviousValue : 5
NewValue      : 40

ComputerName  : Server2
InstanceName  : Instanz2
SqlInstance   : Server2\Instanz2
ConfigName    : CostThresholdForParallelism
PreviousValue : 5
NewValue      : 40

ComputerName  : Server1
InstanceName  : Instanz3
SqlInstance   : Server1\Instanz3
ConfigName    : CostThresholdForParallelism
PreviousValue : 5
NewValue      : 40

ComputerName  : Server2
InstanceName  : Instanz3
SqlInstance   : Server2\Instanz3
ConfigName    : CostThresholdForParallelism
PreviousValue : 5
NewValue      : 40

Und schon habe ich wieder etwas großartiges für mich selber herausgefunden und bin um eine Erfahrung im Umgang mit dbatools reicher!

Ich liebe dieses Powershell-Modul, mit dem ich zahlreiche (nahezu alles!) Dinge am und um den SQL Server herum anpassen, optimieren und automatisieren kann. Ich verwende es sehr gerne (wie man auch meinen anderen Blog-Posts sehen kann) und mittlerweile bei allen meinen Kunden. VIELEN DANK an @Chrissy und die vielen anderen Contributors, die sich die Mühe rund um dieses Community-Tool zu machen!

Beitragsbild – von Ben White auf Unsplash

Screenshots für Dokumentation und Blogbeiträge

Gerade für uns technischen Blog-Beitrag-Schreiber ist es aus mehreren Gründen relevant gute Screenshots in unsere Beiträge einzubinden. Wie aber kommen wir zu qualitativ hochwertigen Screenshots für unsere Beiträge oder auch für Vorträge jeglicher Art?
Es gibt sicherlich eine Vielzahl von Tools, die man für solche Zwecke nutzen kann… ich möchte euch heute mein Tool/ meinen Favoriten zeigen.

Techsmith Snagit

Es gab in den letzten Jahren viele Tools, die ich genutzt habe um Screenshots für meine Dokumentation, Vorträge oder Blogbeiträge zu erstellen… da waren auch echt gute (freie) Tools (zum Beispiel Greenshot) drunter, aber wenn man dann etwas mehr damit machen wollte, als schnell und einfach einen bloßen Copyright-Text hinzufügen, dann wurde es schwer und ich musste oftmals weitere Tools wie zum Beispiel Gimp nutzen. Aber es hat als MVP (Microsoft Most Valuable Professional) den einen oder anderen Vorteil, denn wir erhalten von einigen Herstellern Software zum Testen und oft auch für ein Jahr zur Nutzung for free. So auch Snagit von Techsmith, was in der 2019 Version schon echt gut ist, denn man kann nicht nur bloße Screenshots damit machen, sondern auch Videos aufzeichnen und diese editieren!

bestimmte Bereiche als Screenshots erfassen

Snagit 2019 erkennt eigenständig erfassbare Bildschirmbereiche, wie Kopfzeilen, Menübänder oder das eigentliche Fenster… man kann natürlich auch selber bestimmte Bereiche des sichtbaren Bereiches auswählen. Hierbei bietet Snagit auch die Möglichkeit des “Scrolling Screenshot”, bei dem auch größere Bereiche erfasst werden können. Dies ist zum Beispiel sehr gut nutzbar, wenn man eine ganze Webseite – bei der man scrollen müsste – erfassen und als Screenshots abspeichern.

Beispiele, Anleitungen und Videos dazu man in der Dokumentation von Techsmith

auch Animationen oder kleine Videos möglich

Mit Snagit 2019 kann man nicht nur einfache Screenshots erstellen, sondern auch Videosequenzen aufzeichnen, zum Beispiel für Klickfolgen mit Eingabe der entsprechende Werte in die zu benutzenden Felder. So kann man dem Betrachter schnell und einfach eine Handlungsanweisung erstellen und diese im Snagit-Editor bearbeiten. Auch wenn man die Bearbeitung im Editor nicht mit einem richtigen Schnittprogramm vergleichen kann, so lassen sich doch erstaunliche Ergebnisse erzielen.

Das Entfernen/Rausschneiden von ungewünschten Anfängen oder Enden, zu lange Ladevorgänge können ebenso für die Darstellung entfernt werden. Diese Funktion ist sehr nützlich für Vorträge, Demonstrationen oder zur Veranschaulichung in Schulungen, um nicht zuviel (unnötige) Zeit zu verlieren.

Fazit – großartiges Tool nicht nur Screenshots

Ich scheine nicht alleine zu sein mit meiner Meinung, denn knapp 83% 5 Sterne aus allen Bewertungen im Techsmith-Store sind schon ein deutliches Indiz für eine sehr gut nutzbare Software. Ja, dieses Tool um Screenshots zu erstellen ist nicht kostenfrei, sondern kostet (April 2019) ~52 Euro (je nach Wechselkurs), dieses Geld ist aber sehr gut investiert, denn man erhält ein wirklich professionelles Tool für zwei Arbeitsplätze!