=====Eine Oracle RAC Umgebung mit dem AUTONOMOUS HEALTH FRAMEWORK(AHF) überprüfen===== Alle für die Analyse eines Cluster notwendigen Tools sind nun in diesem AUTONOMOUS HEALTH FRAMEWORK(AHF) Werkzeug gebundelt wie Echtzeit-Zustandsüberwachung, Fehlererkennung und -diagnose. Der Trace File Analyzer (TFA) und **oraChk** ist damit Teil des Oracle Autonomous Health Frameworks. Das hilft entscheidend dem DBA alle notwendigen Information für einen Support Fall einzusammeln und unterstützt bei der täglichen Arbeit um proaktive Fehler im Cluster zu finden. Bzgl. TFA siehe => [[dba:oracle_rac_12c_tfa_trace_file_analyser|Oracle 12c / 18c Die RAC Umgebung mit Oracle Trace File Analyzer (TFA) überprüfen)]] Siehe auch den Oracle Health Checks Collection Manager, um die Ergebnisse zentral zu verwalten => [[dba:oracle_ahf_oracle_health_checks_collection_manager|Oracle Health Checks Collection Manager]] ---- ==== Installation ==== Download der Software über folgendes Support Dokument: Autonomous Health Framework (AHF) - Including TFA and ORAchk/EXAChk (Doc ID 2550798.1) bzw. über die Patch ID 30166242. Für die Installation und ein Update ist keine Downtime notwendig, die Software wird komplett "neben" dem normalen Oracle Software Stack installiert. ===Vorbereitung=== * Prüfen ob unzip auf beiden Knoten installiert ist! yum install unzip * Port 5000 muss zwischen den beiden Knoten freigeschaltet sein! * Download des Zip Files mit dem AHF über das Support Portal - Doc ID 2550798.1 bzw. über die Patch ID 30166242. ===Installation als Root=== Auf beiden Knoten alle vorbereiten! Als **root** auspacken: #Installationsverzeichnis mkdir -p /opt/oracle/install/ahf_20_4 unzip /tmp/AHF-LINUX_v20.4.2.zip -d /opt/oracle/install/ahf_20_4/ ## Perl Package nachinstallieren falls noch nicht vorhanden yum install perl-Data-Dumper.x86_64 yum install perl-Digest-MD5 # Data Location anlegen mkdir /opt/oracle/ahf Von Konten 1 nun die Installation mit **./ahf_setup [-ahf_loc install_dir] [-data_dir data_dir]** durchführen. Die anderen Knoten im Cluster werden dann automatisch installiert! Default ist /opt für das Base Verzeichnis der Installation, AFH Home ist dann /opt/oracle.ahf. Sollte zuvor schon ein TFA auf der Umgebung existieren wird dieser gestoppt und deinstalliert. Als **root** auf Knoten 1 installieren: cd /opt/oracle/install/ahf_20_4 ./ahf_setup -ahf_loc /opt -data_dir /opt/oracle/ahf AHF Installer for Platform Linux Architecture x86_64 AHF Installation Log : /tmp/ahf_install_204200_47844_2021_02_24-15_23_43.log Starting Autonomous Health Framework (AHF) Installation AHF Version: 20.4.2 Build Date: 202102081702 TFA is already installed at : /opt/oracle.tfa/tfa/racdb01/tfa_home Installed TFA Version : 181100 Build ID : 20180328025002 AHF Location : /opt/oracle.ahf AHF Data Directory : /opt/oracle/ahf/oracle.ahf/data Shutting down TFA : /opt/oracle.tfa/tfa/racdb01/tfa_home Copying TFA Data Files from /opt/oracle.tfa/tfa/racdb01/tfa_home Uninstalling TFA : /opt/oracle.tfa/tfa/racdb01/tfa_home Do you want to add AHF Notification Email IDs ? [Y]|N : Y Enter Email IDs separated by space : gunther@pipperr.de AHF will also be installed/upgraded on these Cluster Nodes : 1. racdb02 The AHF Location and AHF Data Directory must exist on the above nodes AHF Location : /opt/oracle.ahf AHF Data Directory : /opt/oracle/ahf/oracle.ahf/data Do you want to install/upgrade AHF on Cluster Nodes ? [Y]|N : Y Extracting AHF to /opt/oracle.ahf Configuring TFA Services Copying TFA Data Files to AHF Discovering Nodes and Oracle Resources Starting TFA Services ln -s '/etc/systemd/system/oracle-tfa.service' '/etc/systemd/system/multi-user.target.wants/oracle-tfa.service' ln -s '/etc/systemd/system/oracle-tfa.service' '/etc/systemd/system/graphical.target.wants/oracle-tfa.service' .----------------------------------------------------------------------------. | Host | Status of TFA | PID | Port | Version | Build ID | +---------+---------------+-------+------+------------+----------------------+ | racdb01 | RUNNING | 51973 | 5000 | 20.4.2.0.0 | 20420020210208170237 | '---------+---------------+-------+------+------------+----------------------' Running TFA Inventory... .----------------------------------------------------------------. | Summary of AHF Configuration | +-----------------+----------------------------------------------+ | Parameter | Value | +-----------------+----------------------------------------------+ | AHF Location | /opt/oracle.ahf | | TFA Location | /opt/oracle.ahf/tfa | | Orachk Location | /opt/oracle.ahf/orachk | | Data Directory | /opt/oracle/ahf/oracle.ahf/data | | Repository | /opt/oracle/ahf/oracle.ahf/data/repository | | Diag Directory | /opt/oracle/ahf/oracle.ahf/data/racdb01/diag | '-----------------+----------------------------------------------' Starting orachk scheduler from AHF ... AHF install completed on racdb01 Installing AHF on Remote Nodes : AHF will be installed on racdb02, Please wait. Installing AHF on racdb02 : [racdb02] Copying AHF Installer [racdb02] Running AHF Installer AHF binaries are available in /opt/oracle.ahf/bin AHF is successfully installed Moving /tmp/ahf_install_204200_47844_2021_02_24-15_23_43.log to /opt/oracle/ahf/oracle.ahf/data/racdb01/diag/ahf/ Nach der Installation prüfen ob es auch läuft: cd /opt/oracle.ahf/bin/ ./tfactl status .-----------------------------------------------------------------------------------------------. | Host | Status of TFA | PID | Port | Version | Build ID | Inventory Status | +---------+---------------+-------+------+------------+----------------------+------------------+ | racdb01 | RUNNING | 51973 | 5000 | 20.4.2.0.0 | 20420020210208170237 | COMPLETE | | racdb02 | RUNNING | 32334 | 5000 | 20.4.2.0.0 | 20420020210208170237 | COMPLETE | '---------+---------------+-------+------+------------+----------------------+------------------' ---- ==== Update auf die neuste Version des Oracle Cluster Verification Utility ==== Im Hintergrund verwendet orcheck das Oracle Cluster Verification Utility aus dem Oracle Grid Home, ist diese aber noch nicht gepatched und will man nun die Umgebung vor dem Patch analysieren, ist das Tool eigentlich zu alt. Es kann aber auch Standalone installiert werden über https://www.oracle.com/database/technologies/cvu-downloads.html bzw. direkt vom Support Portal über "Patch 30839369: Standalone CVU version 19.10 January 2021" Zip Datei herunterladen in das Verzeichnis "/opt/oracle.ahf/common/cvu" auspacken. Auf jeden Knoten! scp cvupack_linux_ol7_x86_64.zip racdb02:$PWD unzip cvupack_linux_ol7_x86_64.zip -d /opt/oracle.ahf/common/cvu === Problem : CVU zu alt ==== Problem: Either Cluster Verification Utility pack (cvupack) does not exist at /opt/oracle.ahf/common/cvu or it is an old or invalid cvupack Checking Cluster Verification Utility (CVU) version at CRS Home - /opt/12.2.0.1/grid This version of Cluster Verification Utility (CVU) was released on 30-Mar-2018 and it is older than 180 days. It is highly recommended that you download the latest version of CVU from MOS patch 30839369 to ensure the highest level of accuracy of the data contained within the report Lösung: CVU manuell nach /opt/oracle.ahf/common/cvu installieren. ---- ==== Konfiguration AHF ==== === orachk Job prüfen === Der **orachkJob** braucht leider relativ viel Platz für die Ergebnisse, schnell läuft da einem die Platte voll. Prüfen ober der Dämon für orachk aktiviert ist: Status: cd /opt/oracle.ahf/bin ./tfactl orachk -d status orachk is using TFA Scheduler. TFA PID: 51973 Info: ./tfactl orachk -d info ------------------------------------------------------------ Master node = racdb01 orachk daemon version = 20.4.2 Install location = /opt/oracle.ahf/orachk Started at = Wed Feb 24 15:27:53 CET 2021 Scheduler type = TFA Scheduler Next Run: ./tfactl orachk -d nextautorun Next auto run starts on Feb 25, 2021 02:03:00 ID:orachk.AUTOSTART_CLIENT_ORATIER1 == Deaktivieren== Job Deaktivieren mit : ./tfactl run orachk -autostop .. orachk daemon successfully stopped .. ./tfactl orachk -d nextautorun orachk daemon is not running ---- === Oracle User berechtigen === **Access Denied: Only TFA Admin can run this command** ** als root user**: tfactl access lsusers # User freischalten tfactl access add -user oracle tfactl access add -user grid ---- ---- === Konfigurations Menü === Das Tool ist ausgesprochen mächtig und bündelt so einige administrative Aufgaben. Um das Setup zu vereinfachen gibt es auch einen Menü Modus: cd /opt/oracle.ahf/bin ./tfactl run menu {{ :dba:18c:oracle_trace_file_analyzer_menu.png?400 | Oracle Trace File Analyzer Menu}} Nun ist es etwas einfacher durch die ganzen Optionen zu "browsen". ---- ==== EMail benachrichtigung aktivieren==== SMTP Einstellung überprüfen: cd /opt/oracle.ahf/bin ./tfactl print smtp SMTP Einstellungen angeben: ./tfactl set smtp Email Adresse hinterlegen: #testen ./tfactl sendmail mymonitor@logger.cn Email Adresse hinterlegen: ./tfactl set notificationAddress=mymonitor@logger.cn Im TAFA Home mit nach dem "smtp.debug.log" suchen falls es zu Problemen kommt. Wenn das nächste Mal z.B. ein ORA-600 gefunden wird wird eine Benachrichtigung abgesetzt. Testweise erzeugen mit [[dba:oracle_ora_600_im_log_erzeugen|Ora-600 Eintrag für Metrik Test Zwecke im Alert Log erzeugen]]. ---- === Neue Datenbank auf dem System zur Überwachung hinzufügen mit ./tfactl rediscover === Problem: Could not find ORACLE_BASE in tfa_setup.txt [root@db01 bin]# ./tfactl rediscover OSWatcher is already deployed at /opt/oracle/tfa/db01/tfa_home/ext/oswbb Could not find ORACLE_BASE in tfa_setup.txt Einfach zu tfa_setup.txt hinzufügen: cd $TFA_HOME vi ./db01/tfa_home/tfa_setup.txt ORACLE_BASE=/opt/oracle ---- ==== Die Umgebung mit dem AHF auswerten==== ===Alle Logfiles auswerten=== cd /opt/oracle.ahf/bin ./tfactl analyze -comp # der letzten 5 tage ./tfactl analyze -last 5d === alle Logs löschen=== cd /opt/oracle.ahf/bin ./tfactl managelogs -purge -older 10d ---- === Aufruf orachk === Im dem TFA wiederum ist auch das bekannte Werkzeug **orachk** nun (siehe => [[dba:oracle_rac_12c_orachk|Oracle 12c Linux RAC Umgebung mit ORAchk überprüfen]] enthalten. Nach der Installation ist OraChk hier gelandet => "/opt/oracle.ahf/orachk/orachk". Einfacher ist, es über orachek nun über "**tfactl orachk**" aufzurufen! cd /opt/oracle.ahf/orachk [root@racdb01 orachk]# ./orachk Clusterware stack is running from /opt/12.2.0.1/grid. Is this the correct Clusterware Home?[y/n][y] Y ... ---- ==== Quellen ==== Siehe diese Whitepaper zur Übersicht => https://www.oracle.com/technetwork/database/options/clustering/overview/tracefileanalyzer-2008420.pdf Siehe dazu auch diesen Vortrag: https://www.doag.org/de/home/news/aufgezeichnet-oracles-autonomous-health-framework/detail/ Oracle: * https://prashantatridba.files.wordpress.com/2017/05/database-support-tools_webcast_ppt.pdf * http://www.brokedba.com/2020/08/