Der Link, den Thomas in seinem Kommentar zur Frage angegeben hat, ist eine gute Quelle für einige zu testende Szenarien. Bob hat auch einige Tests bereitgestellt, die gut sind, von denen viele in dem verlinkten Blog-Beitrag enthalten sind.
Ich würde sagen, dass Sie zusätzlich zu den großartigen Listen mit den zu überprüfenden "was" auch verschiedene Anwendungsszenarien betrachten möchten, um das Failover während zu testen. Ich habe gesehen, wie viele Cluster erstellt und dann von der Seite des Serverteams / DBA-Teams getestet wurden - aber die Anwendungsteams waren nie beteiligt.
Was passiert mit Ihren Anwendungen während dieses Failovers? Jetzt sieht es wirklich meistens wie ein Neustart der Anwendung aus (genau das ist das Failover. Der Dienst fällt auf Knoten A aus. Der Dienst geht auf Knoten B hoch. SQL macht das, was es tut, wenn SQL heruntergefahren und neu gestartet wird oder Wenn es abstürzt und wieder hochfährt, werden DBs auf der anderen Seite des Neustarts wiederhergestellt. Alle Verbindungen werden dort abgebrochen, wo sie sind usw.) Es mag also sinnlos erscheinen, sie zu testen, aber es ist gut zu sehen, welche Art von Prozess Die Benutzer erfahren und verstehen, welche Prozesse die Anwendungsbesitzer, Helpdesk-Mitarbeiter usw. ausführen müssen, wenn dieses Failover stattfindet.
Sie sollten Fragen stellen wie:
- Gibt es eine Komponente, die nach einem Datenbankneustart zurückgesetzt oder neu gestartet werden muss?
- Müssen Sie eine bestimmte Reihenfolge für das Herunterfahren / Neustarten von SQL Server während Wartungsfenstern einhalten? Das sieht wahrscheinlich so aus, als würden zuerst die Anwendungs- oder Middleware-Server und dann die Datenbank ausfallen. Bei einem Cluster-Failover wird die Datenbank zuerst heruntergefahren. Was bedeutet das für Sie und Ihr Unternehmen?
- Unterstützen Ihre Drittanbieter von Softwarepaketen Installationen in einem Cluster? Sie sollten, es ist nicht viel anders, aber sie können eine Anleitung haben, die während eines Failovers zu beachten ist.
- Versuchen Ihre Apps automatisch, eine bestimmte Anzahl von Malen wieder herzustellen? Wenn nicht, können sie? Dies kann in Ihrer Clusterumgebung eine gute Sache sein, um Zeit bei der erneuten Verbindung zu sparen und nach dem Failover wieder an die Arbeit zu gehen.
Wenn Sie einige dieser Tests durchführen, wird Ihre Anwendung ausgeführt (keine Live-Produktion ...), wobei Benutzer oder Testskripte während des Failovers Arbeiten ausführen. Was ist passiert? Sehen Sie etwas, das erledigt werden muss?