RACCheck Tool - Best Practices für RAC Datenbanken
von Sebastian Solbach, ORACLE Deutschland B.V. & Co. KG
Oracle verbessert seine Dokumentation zur Installation der Grid Infrastruktur und RAC Datenbanken mit jedem Release.
Auch werden die Checks zur Vorbereitung eines Systems immer besser, so dass nur noch sehr selten Installationen fehlschlagen oder nicht den
Best Practice Vorschlägen von Oracle entsprechen. Hierzu veröffentlicht Oracle auch seine sogenannten RAC Starterkits, die
den Datenbank und System Administratoren die Vorbereitung und Installation solcher Systeme erleichtern.
Das RACCheck Skript
Das RACCheck Skript überprüft nicht nur den "Gesundheitszustand" der Grid Infrastruktur, sondern auch alle laufenden Datenbanken.
Hierbei werden veraltete und zu löschende Logfiles ebenso mit angemerkt, wie nicht konforme Tablespaces, nicht balancierte ASM Diskgroups,
falsche Kernelparameter, nicht genügend Plattenplatz etc.
Nicht erfüllte Best Practices werden hierbei in einer praktischen Liste ausgegeben, klassifiziert nach Informations-, Warnungs- und kritischen Fehlermeldungen, denen der Administrator noch einmal nachgehen sollte. Zu jeder Meldung in der Kategorie INFO, WARNING und FAIL gibt es ein detailliertes Log, in welchem mehr Informationen zum Best-Practice Vorschlag von Oracle zu finden sind: Warum zum Beispiel der eine oder andere Kernelparameter gesetzt sein sollte und warum ein Tablespace ohne das Automatic Segment Space Management (kurz ASSM) nicht optimal für eine RAC Datenbank geeignet ist. Wann sollte das RACCheck Skript verwendet werden?
Das RACCheck Skript kann der Administrator nach der RAC Installation benutzen, um das fertige System noch einmal zu prüfen.
Ebenso macht es Sinn, RACCheck ca. alle 3 Monate auszuführen, um aktuelle Patch Informationen und Informationen über neue Best Practices
zu erhalten oder Änderungen am System festzustellen.
Das RACCheck Skript lässt sich dabei in einem Silent Modus ausführen, damit man Systeme in einem festen Rhythmus ohne Interaktion der Administratoren prüfen lassen kann, oder interaktiv einfach mit "raccheck -a". Welchen Einfluss hat das RACCheck Skript auf das System?
RACCheck selber ändert nichts am System und die Performance wird durch das Sammeln der Informationen kaum beeinträchtigt.
Es benötigt nur etwas Plattenplatz, um die gesammelten Informationen (Logfiles) zu speichern.
In meinem Fall (3 Knoten Cluster, eine Datenbank) war dies weniger als 5 MB.
RACCheck Beispiel: Hier ein gekürztes Beispiel der Ausgabe des raccheck Skripts:
$ ./raccheck -a CRS stack is running and CRS_HOME is not set. Do you want to set CRS_HOME to /opt/11.2.0.2/grid?[y/n][y] Checking ssh user equivalency settings on all nodes in cluster Node bumucsvm3 is configured for ssh user equivalency for oracle user Node bumucsvm2 is configured for ssh user equivalency for oracle user Searching for running databases . . . . . List of running databases registered in OCR 1. buvmrac 2. None Select databases for checking best practices. For multiple databases, select 1 for All [1]. Checking Status of Oracle Software Stack - Clusterware, ASM, RDBMS ------------------------------------------------------------------------------------------------------- Oracle Stack Status ------------------------------------------------------------------------------------------------------- Host Name CRS Installed ASM HOME RDBMS Installed CRS UP ASM UP RDBMS UP DB Instance Name ------------------------------------------------------------------------------------------------------- bumucsvm1 Yes Yes Yes Yes Yes Yes buvmrac_1 bumucsvm3 Yes Yes Yes Yes Yes Yes bumucsvm2 Yes Yes Yes Yes Yes Yes buvmrac_2 ------------------------------------------------------------------------------------------------------- .... *** Checking RAC Best Practice Recommendations (PASS/WARNING/FAIL) *** Performing SQL collections for use with audit checks on buvmrac...please stand by. Log file for collections and audit checks are at /home/oracle/raccheck/raccheck_081611_164933/raccheck.log ============================================================= Node name - bumucsvm1 ============================================================= Collecting - ASM DIsk I/O stats Collecting - ASM Disk Groups Collecting - ASM disk partnership imbalance Collecting - ASM diskgroup attributes Collecting - ASM initialization parameters Collecting - Active sessions load balance for buvmrac database Collecting - Archived Destination Status for buvmrac database Collecting - CONNECT Role Grantees for buvmrac database Collecting - Cluster Interconnect Config for buvmrac database Collecting - Data Files In Backup Mode for buvmrac database Collecting - Database Archive Destinations for buvmrac database Collecting - Database Component Status for buvmrac database Collecting - Database Files for buvmrac database Collecting - Database Instance Settings for buvmrac database Collecting - Database Parameters for buvmrac database Collecting - Database Properties for buvmrac database Collecting - Database Registry for buvmrac database Collecting - Database Sequences for buvmrac database Collecting - Database Undocumented Parameters for buvmrac database Collecting - Database Workload Services for buvmrac database Collecting - Dataguard Status for buvmrac database Collecting - Files Needing Media Recovery for buvmrac database Collecting - Files not opened by ASM Collecting - INVALID SYS and SYSTEM objects for buvmrac database Collecting - INVALID application objects for buvmrac database Collecting - Invalid Java Objects for buvmrac database Collecting - Invalid Registry Components for buvmrac database Collecting - JVM Roles for buvmrac database Collecting - Log Sequence Numbers for buvmrac database Collecting - Objects Duplicated in SYS and SYSTEM Schema for buvmrac database Collecting - Percentage of asm disk Imbalance Collecting - Process for shipping Redo to standby for buvmrac database Collecting - Redo Log information for buvmrac database Collecting - Standby redo log creation status before switchover for buvmrac database Collecting - CPU Information Collecting - CRS active version Collecting - CRS oifcfg Collecting - CRS software version Collecting - CSS Reboot time Collecting - CSS diagwait Collecting - CSS disktimout Collecting - CSS miscount Collecting - Cluster interconnect (clusterware) Collecting - Clusterware OCR healthcheck Collecting - Clusterware Resource Status Collecting - Huge pages configuration Collecting - Kernel parameters Collecting - Linux module config. Collecting - Maximum number of semaphore sets on system Collecting - Maximum number of semaphores on system Collecting - Maximum number of semaphores per semaphore set Collecting - Memory Information Collecting - OS Packages Collecting - Oracle Executable Attributes Collecting - Shared memory segments Collecting - Table of file system defaults Collecting - Voting disks (clusterware) Collecting - number of semaphore operations per semop system call INFO => $CRS_HOME/log/hostname/client directory has too many older log files. INFO => oracleasm (asmlib) module is NOT loaded WARNING => Linux Swap Configuration does NOT meet Recommendation WARNING => kernel.shmmax parameter is NOT configured according to recommendation WARNING => Open file limit for root user (ulimit -n) is NOT >= 65536 or unlimited WARNING => pam_limits NOT configured properly for shell limits WARNING => PVM Guest xen.independent_wallclock is NOT Configured Correctly in /etc/sysctl.conf WARNING => OSWatcher is not running as is recommended. INFO => Jumbo frames (MTU 9000) are not configured for interconnect WARNING => kernel parameter rp_filter is set to 1. Best Practice checking completed.Checking recommended patches on bumucsvm3. --------------------------------------------------------------------------------- Collecting patch inventory on CRS HOME /opt/11.2.0.2/grid Collecting patch inventory on ORACLE_HOME /opt/oracle/product/11.2.0.2/db --------------------------------------------------------------------------------- 0 Recommended CRS patches for 112020 from /opt/11.2.0.2/grid on bumucsvm3 --------------------------------------------------------------------------------- Patch# CRS ASM RDBMS RDBMS_HOME Patch-Description --------------------------------------------------------------------------------- --------------------------------------------------------------------------------- 1 Recommended RDBMS patches for from /opt/oracle/product/11.2.0.2/db on bumucsvm3 --------------------------------------------------------------------------------- Patch# RDBMS ASM type Patch-Description --------------------------------------------------------------------------------- 12311357 yes merge GI PSU 11.2.0.2.2 (INCLUDES DATABASE PSU --------------------------------------------------------------------------------- ============================================================= Node name - bumucsvm2 ============================================================= ..... Nützliche Links und Referenzen
|