ahf,tfa工具使用

AHF以及tfactl

- 随着各种AI以及自动化工具的出现,Oracle也提供了越来越多的工具方便平时的运维,并且随着行业对每一个工程师的要求越来越高,对于需要掌握的技术不再局限一种,因此需要大家尽量通过使用安全、快捷的工具来帮助我们提高效率,能够把更多的时间去研究,开拓其他需要掌握的技术,提升自身竞争力。

- ahf注意事项
1. ahf基于java运行,但是使用的内存默认最大是64M,因此性能上不需要特别操心
2. tfactl是依赖于perl运行的,因此需要确保系统安装了perl包
3. ahf默认开始集成在11g和12.1 grid软件中,但grid安装时不会安装ahf tool<最后有具体说明>.
4. ahf可以用root或者non-root安装,因为ahf需要去获取系统级别的日志和相关参数,因此建议使用root账户安装
5. ahf在RAC环境中安装时,可以单独安装某个节点ahf,然后通过 tfactl syncnodes进行同步。注意:root账户需要配置passwordless 对等协议,如果想一次性安装好整个集群的ahf
6. ahf可以限制tfa使用系统资源,从而避免不必要的资源占用
7. 默认使用root安装好ahf后,ahf以及tfa会在后台运行,因此可能需要调整其自动删除repository的信息以便磁盘空间不浪费 <tfactl set minagetopurge=48> --48hrs 或者限制repository能使用的最大空间tfactl set reposizeMB=20480


AHF 安装

- 注意事项
1. Oracle官方是推荐使用root安装并使之daemon运行
2. 如果操作系统selinux处于enforcing 或 permissive时,则需要安装selinux相关模块,反之,直接安装ahf即可


- 安装步骤

dnf -y install perl-Data-Dumper setools selinux-policy policycoreutils policycoreutils-devel setroubleshoot 
# selinux相关的都是为了解决selinux处于enforing或者permissive下 ahf也能够正常运行

mkdir /{ahf,ahf_data}

unzip AHF-LINUX_v23.10.0.zip

./ahf_setup -ahf_loc /ahf -data_dir /ahf_data

-- 提示时输入 n 即可 , 稍等5分钟左右即可安装完毕

ahfctl 以及 tfactl优化

1. 限制tfa使用资源cpu上限
ahfctl setresourcelimit -value 0.5


2. 限制tfa使用的空间(repository)上限
tfactl set reposizeMB=20480

3. 设置自动清理repository
tfactl set minagetopurge=48

4. 手工清理repository
tfactl print repository
tfactl print collections
tfactl purge -older number[h|d] [-force]

tfactl

SRDC - 全程Service Request Data Collections,tfactl在处理故障,快速收集相关IN或者error信息(srdc)时极为方便。

tfactl极为强大,可以收集DB,RAC,ASM各种组件,具体的IN,SQL性能等数据,官方文档


此处列几个常用命令
tfactl diagcollect -srdc internalerror
tfactl diagcollect -srdc ORA-04031
tfactl diagcollect -srdc dbperf
tfactl diagcollect -srdc dbsqlperf
tfactl diagcollect -srdc dbasm
tfactl diagcollect -srdc dbrac



tfactl 授权常用命令

1. tfactl access lsusers
tfactl access lsusers
.-------------------------------------------------------------------------.
|            TFA Users in Node1                                           |
+-----------+---------+----------+----------------------------------------+
| User Name | Status  | Promoted | Roles                                  |
+-----------+---------+----------+----------------------------------------+
| dbusr     | Allowed | false    | n/a                                    |
| giusr     | Allowed | true     | n/a                                    |
| grid      | Allowed | n/a      | privileged-compliance-checks           |
| orarom    | Allowed | n/a      | platinum                               |
| oracle    | Allowed | n/a      | platinum, privileged-compliance-checks |
'-----------+---------+----------+----------------------------------------'

In this example:
dbusr has the basic set of privileges
giusr and grid have the ability to run compliance checks as root in addition to basic privileges
orarom user has the privileges of platinum user in addition to basic privileges
orarom user has the privileges of platinum and privileged-compliance-checks user in addition to basic privileges

Note:
platinum 和 privileged-compliance-check是ahf22.3的新功能,功能上platinum能运行的命令比后者多,简单的理解platinum类似于oracle中的sys,而privileged-compliance-check类似于Oracle system账户。



2. tfactl access grant -user <user_name> -role platinum


ahf , tfactl功能快看

{{uploading-image-825865.png(uploading...)}}

参考文献

- ahf tool列表
https://docs.oracle.com/en/engineered-systems/health-diagnostics/autonomous-health-framework/ahfug/analyzing-logs-using-oracle-db-support-tools.html#GUID-ECAB7936-8E48-4141-91F8-634DB19BE390

- ahf 资源限制
https://docs.oracle.com/en/engineered-systems/health-diagnostics/autonomous-health-framework/ahfug/limit-cpu-used-by-tfa.html#GUID-6D95E3ED-1488-4199-A834-E491AC3B6DA4

- tfa 使用案例
https://docs.oracle.com/en/engineered-systems/health-diagnostics/autonomous-health-framework/ahfug/collecting-diagnostics-and-using-one-command-srdc.html#GUID-F8381A7A-E2F7-442C-AED0-3FEEF4129125

posted @ 2023-08-10 22:18  DBAGPT  阅读(217)  评论(0编辑  收藏  举报