# 🔬 Oracle AHF 25.1 y 25.3: Qué hay de nuevo y cómo hacer upgrade sin downtime

> *"En la salud de tu infraestructura está la paz de tu producción."*  
> — La Botica del DBA

---

## 🧠 ¿Qué es Oracle AHF y por qué deberías tenerlo al día?

Oracle **Autonomous Health Framework (AHF)** es una suite vital para cualquier DBA moderno. Se trata del conjunto de herramientas que automatiza el diagnóstico, monitoreo, trazabilidad y verificación del estado de nuestros servidores Oracle, ya sea en RAC, Standalone, Exadata u OCI.

AHF permite:

* Diagnósticos automáticos cuando ocurre una falla
    
* Recolección inteligente de datos con análisis preconfigurados
    
* Verificación del cumplimiento de buenas prácticas (orachk)
    
* Insights históricos y en tiempo real
    
* Análisis de performance e integridad del sistema operativo, clúster y ASM
    

---

## 🆕 ¿Qué trae de nuevo la versión 25.1?

Liberada en febrero de 2024, esta versión introdujo mejoras especialmente útiles para entornos modernos como Oracle Linux 9, destacando:

* 🔧 **Nuevo sistema de configuración de upgrades automáticos** (vía `ahfctl setupgrade`)
    
* 🧩 **Soporte de cgroups v2** en Oracle Linux 9 para limitar consumo de recursos
    
* ⚙️ Corrección de errores en sistemas multipath y redes redundantes
    

---

## 🚀 ¿Y la 25.3? (versión estable más reciente a abril 2025)

Liberada en **marzo de 2025**, AHF 25.3 mejora aún más la capacidad de análisis y trazabilidad:

* 📊 Visualización del estado de ASM por nodo en AHF Insights
    
* 📌 Muestra **qué evento exacto disparó una colección automática**
    
* ⚠️ Advertencias al usar comandos obsoletos
    
* 🔁 Análisis diferencial para eventos críticos de bajo uso de memoria
    
* 🕒 Recolección mínima de diagnósticos establecida en 15 minutos
    

✅ Disponible para Linux, AIX, Solaris, Windows y más.

📚 Referencia: [Doc ID 2550798.1 – AHF Downloads y Release Notes](https://support.oracle.com/epmos/faces/DocumentDisplay?id=2550798.1)

---

## 🛠️ Mini taller: Upgrade de AHF sin downtime (de 24.11 a 25.1 o 25.3)

### Escenario:

* Servidores Oracle Linux en RAC
    
* Versión actual de AHF: **24.11**
    
* Upgrade objetivo: **25.1 (o directamente 25.3)**
    
* Tiempo estimado: ⏱️ **2 horas**
    
* Impacto: ✅ **Sin interrupción de servicios**
    

---

### 🔍 Paso 1: Verificar la versión actual

```sql
tfactl print version
```

📌 Ejemplo de salida:

```sql
TFA Version : 24.11.0.0.0
```

---

### 📦 Paso 2: Preparar staging y copiar ZIP

* Descarga el ZIP desde Oracle Support ([enlace directo](https://support.oracle.com/epmos/faces/DocumentDisplay?id=2550798.1))
    
* Copia el ZIP a los servidores, por ejemplo: `/chemist/DIR_AHF/ahf_25.1.0_Linux.zip`
    

---

### 🧰 Paso 3: Configurar el entorno de upgrade

Ejecutar como `root`:

```sql
ahfctl setupgrade -all
```

Y responde:

```sql
Introduzca el indicador de autoupgrade <on/off>: off
Introduzca la ubicación de almacenamiento en área temporal del software: /chemist/DIR_AHF
Introduzca la frecuencia de upgrade: 30
```

✅ Verifica con:

```sql
ahfctl getupgrade -all
```

---

### 🔄 Paso 4: Ejecutar el upgrade

También como `root`:

```sql
ahfctl upgrade
```

📌 Repetir en **ambos nodos**, si estás en Oracle RAC.

---

### 🧪 Paso 5: Validar nueva versión

```sql
tfactl print version
```

🔎 Salida esperada:

```sql
TFA Version : 25.1.0.0.0
```

O si instalaste 25.3:

```sql
TFA Version : 25.3.0.0.0
```

---

## 🧪 Caso real: Upgrade de AHF a 25.3 en Oracle RAC Exadata

Durante un laboratorio realizado en servidores de la botica, se ejecutó el upgrade de AHF desde la versión **25.2.1.0.0** a **25.3.0.0.0** con los siguientes resultados:

```sql
Host                        | TFA Version   | Upgrade Status
----------------------------+---------------+----------------
exaociboticario-boticaaa1   | 25.3.0.0.0    | UPGRADED
exaociboticario-boticabb2   | 25.3.0.0.0    | UPGRADED
```

💡 *Observación destacada*: AHF identificó automáticamente el paquete ZIP en `/expdp/REPO_AHF`, validó la firma, detuvo y reinició los servicios sin afectar las bases de datos, y dejó los logs de instalación en:

```sql
/u01/oracle.ahf/data/<hostname>/diag/ahf/
```

📂 Esto también confirmó que **no se añadieron nuevos directorios a TFA**, lo que garantiza una actualización limpia y sin reconfiguraciones.

✅ Resultado final: ambos nodos quedaron **homogéneos**, operativos y con la versión 25.3 lista para producción.

---

## 🧬 Internals de AHF: El rol de TFA y su magia silenciosa

Aunque muchos conocen el AHF por herramientas como `orachk`, `oswbb` o `ahfctl`, el corazón operativo de esta suite es **TFA (Trace File Analyzer)**. Y lo encontrarás instalado, silencioso y vigilante, en:

```sql
/opt/oracle.ahf/tfa/
```

### 🔎 ¿Qué hace TFA?

TFA se encarga de:

* 📦 **Recolectar y comprimir archivos de trazas, logs, core dumps y más**
    
* 🔍 **Detectar eventos críticos y disparar análisis automáticos**
    
* ⏱️ **Generar colecciones de diagnóstico por rango horario o evento**
    
* 📘 **Documentar todo en paquetes listos para enviar a Oracle Support**
    

### 🗂️ Estructura destacada dentro de `/opt/oracle.ahf/tfa`

| Carpeta | Función |
| --- | --- |
| `bin/` | Ejecutables, como `tfactl` |
| `log/` | Logs de ejecución del propio TFA |
| `data/` | Colecciones históricas |
| `supporttools/` | Scripts avanzados de soporte |
| `resources/` | Configuraciones internas y plugins |

### ⚙️ Comandos esenciales con `tfactl`

📥 Recolectar todo lo de las últimas 2 horas para análisis de rendimiento:

```sql
tfactl diagcollect -last 2h -srdc dbperf
```

🧪 Analizar la base de datos y mostrar hallazgos clave:

```sql
tfactl analyze -database <SID>
```

🔧 Ver estado del framework y nodos:

```sql
tfactl status
```

🌐 Mostrar la versión actual:

```sql
tfactl print version
```

### 💡 Bonus: Interfaz interactiva con `tfactl menu`

👌 Ideal para DBAs que prefieren menús sobre comandos:

```sql
tfactl menu
```

🎨 Presenta un menú de texto donde puedes elegir:

1. System Analysis
    
2. Collections
    
3. Administration
    

Permite hacer recolecciones y diagnósticos de forma guiada. Muy útil en auditorías, soporte remoto y tareas de rutina.

---

## 💎 Cierre al estilo de La Botica del DBA

Actualizar AHF es como renovar los frascos de tu botica: los principios activos siguen ahí, pero ahora con mejor empaque, nueva formulación y diagnóstico más rápido para los síntomas de tu sistema.

Este tipo de mantenimiento preventivo **no solo reduce el tiempo de reacción ante incidentes**, sino que te da tranquilidad operativa… esa que cuando todo está bien, simplemente no suena el teléfono.

🔗 **¿Te gustó este taller?**  
Suscríbete a nuestra newsletter técnica en [laboticadeldba.com](https://laboticadeldba.com) o escribeme directamente a la casila de correo: **Admin@LaBoticaDelDBA.Com**  
📬 Publicamos cada semana casos reales, scripts útiles y upgrades que salvan madrugadas.
