=====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/