Verlagern von OCR/Voting Disk und SPFile innerhalb ASM
von Sebastian Solbach, ORACLE Deutschland B.V. & Co. KG
Das Oracle Automatic Storage Management (ASM) ist seit Oracle 10g der bevorzugte Storage Manager für Oracle Datenbanken, da
er das Management des Storage für Datenbank Files erheblich vereinfacht. Aber seit Oracle 11g Release 2 ist ASM nicht nur
für Datenbanken zu verwenden: Im neuen Release ist ASM ein vollwertiger clusterfähiger Volume Manager. Damit kommen
nun alle Files in den Genuss der ASM Vorteile:
Hierzu gehören neben dem automatische Striping der Daten über alle verwendeten Platten auch Spiegelungstechnologien zur Datensicherheit.
Dies ermöglicht unter anderem auch das sogenannte Host Based Mirroring, bei dem die Daten über mehrere Storage Systeme gespiegelt werden.
Allerdings muss gerade der Grad der Spiegelung (keine Redundanz, einfache Spiegelung oder doppelte Spiegelung) beim Einrichten
der Diskgruppen (Zusammenfassen mehrerer Platten oder LUNs zu einer großen Einheit) festgelegt werden. Diese Information und einige andere Parameter
der Diskgruppe sind leider nach dem initialen Einrichten der Diskgruppe nicht mehr zu ändern.
Dies ist insbesondere ärgerlich, da bei der Installation der 11g Release 2 Grid Infrastruktur nur
wenige Vorgaben für die Default Diskgruppe gemacht werden können. Und dies ist nachträglich
auch nicht mehr leicht zu ändern: Denn dann liegen bereits die Konfigurationsfiles der Clusterware in ASM.
Hierzu gehören die Oracle Cluster Registry (OCR), die Voting Disks und das ASM Server Parameter File (SPFile).
Hat man sogar schon eine Datenbank installiert, müssen auch die
Tablespaces, Redologfiles und das Datenbank SPFile auf die neue Diskgruppe verschoben werden.
Dieser Tipp beschreibt das Verschieben von OCR, Voting Disk und dem ASM SPFile in eine neue Diskgruppe.
Anmerkung: Bilder zum Tipp werden sichtbar, indem man mit der Maus über das Brillen Icon fährt.
Anlegen einer neuen Diskgruppe mit dem ASMCA
In diesem Beispiel gehe ich davon aus, dass bei der Installation der Oracle Grid Infrastruktur eine Diskgruppe DATA angelegt wurde, bei der keine Spiegelung (EXTERNAL REDUNDANCY) verwendet wurde.
Die Inhalte dieser Diskgruppe sollen nun in eine Diskgruppe DATA2 mit einfacher Spiegelung (NORMAL REDUNDANCY) verschoben werden.
Hierzu muss zuerst einmal die die neue Diskgruppe angelegt werden. Am einfachsten geschieht dies über den ASMCA:
Für die Diskgruppe DATA2 wählen wir diesmal "Normal" Redundancy.
Wichtig ist, dass die Diskgruppe aus mindestens 3 LUNs/Platten besteht bzw. mindestens 3 Failure Gruppen besitzt.
Dies ist notwendig, da die neue Diskgruppe auch die Voting Disks aufnehmen soll. Bei einer Diskgruppe mit normaler Spiegelung erstellt die Clusterware 3 Voting Disks, die
auf 3 unterschiedliche Failure Gruppen verteilt werden. Deswegen sollte auch, falls man Namen für die Failure Gruppen vergibt, darauf geachtet werden, mindestens
3 Failure Gruppen zu spezifizieren.
Des Weiteren benötigt die ASM Diskgruppe den ASM Kompatibilitätsparameter auf 11.2.0.0.0, da ansonsten
keine OCR und Voting Disks auf der Diskgruppe liegen dürfen. Diese Einstellungen erhält man über den Knopf "Show Advanced Options".
Hier sollte auch die Allocation Unit Size auf 4 MB gesetzt werden. Dies ist die Oracle Empfehlung für 64-bit Oracle 11g Produktivsysteme.
Verschieben des ASM SPFiles
Neben OCR und Voting Disks befindet sich auch das Server Parameter File der ASM Instanz in der DATA Diskgruppe und unterliegt, genau wie die OCR, damit der Spiegelung der Diskgruppe.
Deswegen sollte auch das SPFile verschoben werden. Leider geht dies im Cluster Stack nicht online, da die einzelnen Clusterknoten erst nach einem Reboot auf das neue SPFile zugreifen.
Das Durchstarten des Clusterstacks könnte zwar rollierend passieren, im Beispiel starte ich aber den komplette Clusterstack einfach durch.
Das Verschieben des SPFiles passiert hierbei über die Kommandozeile von ASM (ASMCMD), da diese auch die Clusterware Informationen mit aktualisiert. So ist der Ort des SPFiles extern im
sogenannten GPnP (Grid Plug & Play) Profil hinterlegt. Dies ist eine xml Datei, die nicht manuell geändert werden kann:
Der Befehl spget ermittelt hierbei die Information zu dem bisher verwendeten SPFile. Diese Information ist notwendig, um dies beim nachfolgenden spcopy mitzugeben.
Der Parameter -u beim Befehl spcopy sorgt dafür, dass auch das GPnP Profil aktualisiert wird. Ließe man diesen weg, würde zwar das SPFile kopiert,
der Clusterstack würde aber immer noch versuchen, mit dem alten SPFile zu starten. Sicherheitshalber sollten alle Clusterknoten gestartet sein,
damit das GPnP auch clusterweit aktualisiert wird.
Seit 11.2 gibt es die sogenannten clusterweiten Befehle. Deswegen ist es auch möglich, mit nur einem Befehl alle Clusterknoten zu stoppen und neu zu starten
und somit die Änderungen des SPFiles zu aktivieren.
Verlagern der Voting Disks
Wie viele Voting Disks es gibt, ist abhängig von der Redundanz der Diskgruppe. Bei "EXTERNAL REDUNDANCY" ist es eine, bei "NORMAL REDUNDANCY" sind es 3 und bei "HIGH REDUNDANCY" 5.
Die Clusterware ermittelt selber, wie viele Voting Disks in ASM angelegt werden.
Allerdings kann immer nur eine Diskgruppe die Voting Disks enthalten, diese sind niemals über mehrere Diskgruppen verteilt.
Deswegen werden die Voting Disks auf der DATA2 DISKGROUP auch nicht hinzugefügt sondern mit einem Statement ersetzt:
Der ganze Vorgang dauert nur wenige Sekunden und geht ohne Downtime der Clusterware vonstatten.
Hinzufügen und Entfernen der Oracle Cluster Registry
Oracle 11g Release 2 erlaubt mehrere Kopien der Oracle Cluster Registry. Zwar unterliegt jede einzelne Kopie der Spiegelung der Diskgruppe
und ist damit quasi schon gesichert, allerdings kann man zur sogenannten "logischen" Sicherung durchaus bis zu 5 Kopien der OCR vorhalten.
Hierbei muss jede OCR in einer eigenen Diskgruppe liegen: eine Diskgruppe kann immer nur eine OCR aufnehmen.
Aus diesem Grund wird die OCR zuerst in die Diskgruppe DATA2 kopiert und dann aus DATA1 gelöscht.
Zur Sicherheit wird die OCR vor der ganzen Aktion geprüft und ein manuelles Backup angestossen:
Sind die Aktionen abgeschlossen, kann anschliessend zum Beispiel über den ASMCA die Diskgruppe DATA gelöscht werden.
Anmerkung:
Was passiert nun, wenn die Diskgruppe schon Datenbank Files enthält?
Das Verschieben der Datenbank Tablespaces würde dann mit dem RMAN BACKUP AS COPY und dem RMAN SWITCH Befehl passieren.
Nicht aktive und bereits archivierte Redologs können einfach während des laufendes Betriebs gelöscht und in der neuen Diskgruppe neu angelegt werden.
Das Server Parameter File der Datenbank ließe sich über den Befehl CREATE SPFILE from PFILE oder ebenfalls über das
RMAN Backup bewerkstelligen.
Siehe hierzu auch den Tipps zum RMAN Restore
Nützliche Links und Referenzen
Oracle Clusterware 11g Release 2 (11.2) - Using standard NFS to support a third voting file for extended cluster configurations (PDF)
Oracle Clusterware Administration and Deployment Guide: Appendix E CRSCTL Utility Reference
Oracle Clusterware Administration and Deployment Guide: Appendix G Oracle Cluster Registry Configuration Utility Reference
Oracle Database Storage Administrator's Guide: ASMCMD Instance Management Commands
Zurück zur Community-Seite
|