The Oracle Autonomous Health Framework is described in Support Document "Autonomous Health Framework (AHF) - Including TFA and ORAchk/EXAchk (Doc ID 2550798.1)"
In a recent video I have demonstrated running 24.1 orachk (with "-b" for "Best Practices Check) against a 21.3 RAC Cluster.
Here I demonstrate the installation and execution against a 12.2 non-RAC database.
When you download the 24.1 release of AHF (AHF-LINUX_v24.1.0.zip, approximately 410MB), you have to unzip it and then run ahf_setup. It is preferable to use the default location /opt/oracle.ahf (and precreate a "data" subfolder if it doesn't exist).
If your first attempt at installation returns an error :
[ERROR] : AHF-00074: Required Perl Modules not found : Data::Dumper
you can check the perl version and download and install this module (Note : In the listings below "AHF_Installer is the location where I have extracted the installation zip file).
[root@vbgeneric AHF_Installer]# /bin/perl -v This is perl 5, version 16, subversion 3 (v5.16.3) built for x86_64-linux-thread-multi (with 34 registered patches, see perl -V for more detail) Copyright 1987-2012, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page. [root@vbgeneric AHF_Installer]# yum install perl-Data-Dumper Loaded plugins: langpacks, ulninfo ol7_UEKR4 | 3.0 kB 00:00:00 ol7_latest | 3.6 kB 00:00:00 (1/5): ol7_latest/x86_64/group_gz | 136 kB 00:00:00 (2/5): ol7_UEKR4/x86_64/updateinfo | 130 kB 00:00:00 (3/5): ol7_latest/x86_64/updateinfo | 3.6 MB 00:00:00 (4/5): ol7_latest/x86_64/primary_db | 50 MB 00:00:02 (5/5): ol7_UEKR4/x86_64/primary_db | 37 MB 00:00:04 Resolving Dependencies --> Running transaction check ---> Package perl-Data-Dumper.x86_64 0:2.145-3.el7 will be installed --> Finished Dependency Resolution Dependencies Resolved =========================================================================================== Package Arch Version Repository Size =========================================================================================== Installing: perl-Data-Dumper x86_64 2.145-3.el7 ol7_latest 47 k Transaction Summary =========================================================================================== Install 1 Package Total download size: 47 k Installed size: 97 k Is this ok [y/d/N]: y Downloading packages: perl-Data-Dumper-2.145-3.el7.x86_64.rpm | 47 kB 00:00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Warning: RPMDB altered outside of yum. Installing : perl-Data-Dumper-2.145-3.el7.x86_64 1/1 Verifying : perl-Data-Dumper-2.145-3.el7.x86_64 1/1 Installed: perl-Data-Dumper.x86_64 0:2.145-3.el7 Complete! [root@vbgeneric AHF_Installer]#
Then resume the installation (precreate the "data" folder if it doesn't exist)
[root@vbgeneric AHF_Installer]# mkdir /opt/oracle.ahf/data [root@vbgeneric AHF_Installer]# ./ahf_setup AHF Installer for Platform Linux Architecture x86_64 AHF Installation Log : /tmp/ahf_install_241000_6588_2024_02_27-13_48_51.log Starting Autonomous Health Framework (AHF) Installation AHF Version: 24.1.0 Build Date: 202402051317 Default AHF Location : /opt/oracle.ahf Do you want to install AHF at [/opt/oracle.ahf] ? [Y]|N : Y AHF Location : /opt/oracle.ahf AHF Data Directory stores diagnostic collections and metadata. AHF Data Directory requires at least 5GB (Recommended 10GB) of free space. Please Enter AHF Data Directory : /opt/oracle.ahf/data AHF Data Directory : /opt/oracle.ahf/data Do you want to add AHF Notification Email IDs ? [Y]|N : N Extracting AHF to /opt/oracle.ahf Setting up AHF CLI and SDK Configuring TFA Services Discovering Nodes and Oracle Resources Successfully generated certificates. Starting TFA Services Created symlink from /etc/systemd/system/multi-user.target.wants/oracle-tfa.service to /etc/systemd/system/oracle-tfa.service. Created symlink from /etc/systemd/system/graphical.target.wants/oracle-tfa.service to /etc/systemd/system/oracle-tfa.service. .-------------------------------------------------------------------------------. | Host | Status of TFA | PID | Port | Version | Build ID | +-----------+---------------+------+-------+------------+-----------------------+ | vbgeneric | RUNNING | 8540 | 39049 | 24.1.0.0.0 | 240100020240205131724 | '-----------+---------------+------+-------+------------+-----------------------' Running TFA Inventory... Adding default users to TFA Access list... .-------------------------------------------------------. | 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/data | | Repository | /opt/oracle.ahf/data/repository | | Diag Directory | /opt/oracle.ahf/data/vbgeneric/diag | '-----------------+-------------------------------------' Starting ORAchk Scheduler from AHF AHF binaries are available in /opt/oracle.ahf/bin AHF is successfully Installed Do you want AHF to store your My Oracle Support Credentials for Automatic Upload ? Y|[N] : N Moving /tmp/ahf_install_241000_6588_2024_02_27-13_48_51.log to /opt/oracle.ahf/data/vbgeneric/diag/ahf/ [root@vbgeneric AHF_Installer]#
orachk can then be executed. This execution is to check against "Best Practices" :
[root@vbgeneric AHF_Installer]# orachk -b
List of running databases
1. orcl12c
2. None of above
Select databases from list for checking best practices. For multiple databases, select 1 for All or comma separated number like 1,2 etc [1-2][1]. 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
-------------------------------------------------------------------------------------------------------
vbgeneric No No Yes No No Yes orcl12c
-------------------------------------------------------------------------------------------------------
Copying plug-ins
. .
. . . . . .
*** Checking Best Practice Recommendations ( Pass / Warning / Fail ) ***
.
============================================================
Node name - vbgeneric
============================================================
. . . . . .
Collecting - Database Parameters for orcl12c database
Collecting - Database Undocumented Parameters for orcl12c database
Collecting - List of active logon and logoff triggers for orcl12c database
Collecting - CPU Information
Collecting - Disk I/O Scheduler on Linux
Collecting - DiskMount Information
Collecting - Kernel parameters
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 - Operating system release information and kernel version
Collecting - Patches for RDBMS Home
Collecting - Patches xml for RDBMS Home
Collecting - RDBMS patch inventory
Collecting - Table of file system defaults
Collecting - number of semaphore operations per semop system call
Collecting - Database Server Infrastructure Software and Configuration
Collecting - Disk Information
Collecting - Root user limits
Collecting - Verify ORAchk scheduler configuration
Collecting - Verify TCP Selective Acknowledgement is enabled
Collecting - Verify no database server kernel out of memory errors
Collecting - Verify the vm.min_free_kbytes configuration
Data collections completed. Checking best practices on vbgeneric.
------------------------------------------------------------
INFO => Traditional auditing is enabled in database for orcl12c
WARNING => Linux swap configuration does not meet recommendation
WARNING => Hidden database initialization parameters should not be set per best practice recommendations for orcl12c
FAIL => loopback interface MTU value needs to be set to 16436
INFO => Most recent ADR incidents for /u01/app/oracle/product/12.2/db_1
FAIL => Verify Database Memory Allocation
INFO => Oracle GoldenGate failure prevention best practices
FAIL => The vm.min_free_kbytes configuration is not set as recommended
INFO => user_dump_dest has trace files older than 30 days for orcl12c
INFO => At some times checkpoints are not being completed for orcl12c
WARNING => One or more redo log groups are not multiplexed for orcl12c
WARNING => Primary database is not protected with Data Guard (standby database) for real-time data protection and availability for orcl12c
INFO => Important Storage Minimum Requirements for Grid & Database Homes
CRITICAL => Operating system hugepages count does not satisfy total SGA requirements
FAIL => Table AUD$[FGA_LOG$] should use Automatic Segment Space Management for orcl12c
FAIL => Database parameter DB_LOST_WRITE_PROTECT is not set to recommended value on orcl12c instance
INFO => umask for RDBMS owner is not set to 0022
FAIL => Database parameter DB_BLOCK_CHECKING on primary is not set to the recommended value. for orcl12c
INFO => Operational Best Practices
INFO => Database Consolidation Best Practices
INFO => Computer failure prevention best practices
INFO => Data corruption prevention best practices
INFO => Logical corruption prevention best practices
INFO => Database/Cluster/Site failure prevention best practices
INFO => Client failover operational best practices
WARNING => Oracle patch 30712670 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 29867728 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 31142749 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 26749785 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 29302565 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 29259068 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle clusterware is not being used
WARNING => RAC Application Cluster is not being used for database high availability on orcl12c instance
WARNING => DISK_ASYNCH_IO is NOT set to recommended value for orcl12c
WARNING => Flashback on PRIMARY is not configured for orcl12c
INFO => Database failure prevention best practices
WARNING => fast_start_mttr_target has NOT been changed from default on orcl12c instance
FAIL => Active Data Guard is not configured for orcl12c
WARNING => Perl Patch 31858212 is not found in 12.2.0.1 RDBMS_HOME. /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 31602782 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 33121934 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
WARNING => Oracle patch 31211220 is not applied on RDBMS_HOME /u01/app/oracle/product/12.2/db_1
INFO => Software maintenance best practices
INFO => Oracle recovery manager(rman) best practices
INFO => Database feature usage statistics for orcl12c
WARNING => Consider investigating changes to the schema objects such as DDLs or new object creation for orcl12c
WARNING => Consider investigating the frequency of SGA resize operations and take corrective action for orcl12c
------------------------------------------------------------
UPLOAD [if required] - /opt/oracle.ahf/data/vbgeneric/orachk/user_root/output/orachk_vbgeneric_orcl12c_022724_140315.zip
[root@vbgeneric AHF_Installer]#
Thus, you can actually run the 24.1 orachk against even a 12.2 non-RAC (single instance) database.