Infrastructure documentation - Initial commit
- Added comprehensive infrastructure overview - Server documentation: ARCHITECT, DECK, CORP, HST - Service documentation: Odoo, Directus, Context Manager - Includes configuration, monitoring, and backup procedures
This commit is contained in:
69
README.md
69
README.md
@@ -1,3 +1,68 @@
|
|||||||
# infrastructure-docs
|
# TZZR Infrastructure Documentation
|
||||||
|
|
||||||
TZZR Infrastructure Documentation
|
Documentación completa de la infraestructura del sistema TZZR (Sistema Central de Coordinación y Gestión).
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
La infraestructura TZZR está compuesta por un servidor central (ARCHITECT) y tres servidores remotos (DECK, CORP, HST) interconectados a través de SSH y una base de datos PostgreSQL centralizada.
|
||||||
|
|
||||||
|
### Componentes Principales
|
||||||
|
|
||||||
|
- **Servidor Central (ARCHITECT)**: 69.62.126.110 - Gitea, PostgreSQL, supervisión
|
||||||
|
- **Servidor DECK**: 72.62.1.113 - Servicios GPU y procesamiento
|
||||||
|
- **Servidor CORP**: 92.112.181.188 - Servicios empresariales
|
||||||
|
- **Servidor HST**: 72.62.2.84 - Hospedaje y soporte
|
||||||
|
|
||||||
|
## Almacenamiento
|
||||||
|
|
||||||
|
- **R2 (Cloudflare)**: Almacenamiento en la nube para documentos, backups y auditorías
|
||||||
|
- **Endpoint**: https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
|
||||||
|
## Servicios
|
||||||
|
|
||||||
|
### En ARCHITECT (69.62.126.110)
|
||||||
|
- **Gitea**: Repositorios Git (puerto 3000)
|
||||||
|
- **PostgreSQL**: Base de datos centralizada
|
||||||
|
- **Context Manager**: Sistema de gestión de contexto para agentes IA
|
||||||
|
|
||||||
|
### En DECK (72.62.1.113)
|
||||||
|
- **GRACE**: Servicio de procesamiento de IA
|
||||||
|
- **PENNY**: Servicio de análisis
|
||||||
|
- **FACTORY**: Servicio de fabricación de datos
|
||||||
|
|
||||||
|
### En CORP (92.112.181.188)
|
||||||
|
- **Odoo**: Sistema ERP empresarial
|
||||||
|
- **Directus**: CMS y gestor de contenidos
|
||||||
|
|
||||||
|
### En HST (72.62.2.84)
|
||||||
|
- Servicios de hospedaje y soporte
|
||||||
|
|
||||||
|
## Documentación Detallada
|
||||||
|
|
||||||
|
- [ARCHITECT](./servers/ARCHITECT.md) - Servidor central
|
||||||
|
- [DECK](./servers/DECK.md) - Servidor de GPU
|
||||||
|
- [CORP](./servers/CORP.md) - Servidor empresarial
|
||||||
|
- [HST](./servers/HST.md) - Servidor de hospedaje
|
||||||
|
|
||||||
|
### Servicios
|
||||||
|
- [Odoo](./services/odoo.md) - ERP empresarial
|
||||||
|
- [Directus](./services/directus.md) - CMS
|
||||||
|
- [Context Manager](./services/context-manager.md) - Gestor de contexto
|
||||||
|
|
||||||
|
## Acceso
|
||||||
|
|
||||||
|
Todos los servidores se acceden vía SSH usando:
|
||||||
|
```bash
|
||||||
|
ssh root@<IP> -i ~/.ssh/tzzr
|
||||||
|
```
|
||||||
|
|
||||||
|
## Backup y Recuperación
|
||||||
|
|
||||||
|
Los backups se almacenan en R2:
|
||||||
|
- Backups Gitea: `s3://architect/backups/`
|
||||||
|
- Backups PostgreSQL: `s3://architect/backups/`
|
||||||
|
- Auditorías: `s3://architect/auditorias/`
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Creación de documentación de infraestructura
|
||||||
|
|||||||
124
servers/ARCHITECT.md
Normal file
124
servers/ARCHITECT.md
Normal file
@@ -0,0 +1,124 @@
|
|||||||
|
# Servidor ARCHITECT (69.62.126.110)
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
ARCHITECT es el servidor central del sistema TZZR. Coordina todos los servicios, gestiona la base de datos centralizada, y aloja Gitea para control de versiones.
|
||||||
|
|
||||||
|
**IP**: 69.62.126.110
|
||||||
|
**Usuario**: architect
|
||||||
|
**Acceso SSH**: ssh root@69.62.126.110 -i ~/.ssh/tzzr
|
||||||
|
|
||||||
|
## Servicios Principales
|
||||||
|
|
||||||
|
### 1. Gitea (Puerto 3000)
|
||||||
|
- **URL Local**: http://localhost:3000
|
||||||
|
- **URL Remota**: https://git.tzzrarchitect.me
|
||||||
|
- **Función**: Repositorio central de código
|
||||||
|
- **Configuración**: /etc/gitea/
|
||||||
|
- **Data**: /var/lib/gitea/
|
||||||
|
|
||||||
|
Repositorios principales:
|
||||||
|
- `admin/infrastructure-docs` - Documentación de infraestructura
|
||||||
|
- `captain-claude` - Sistema multiagente central
|
||||||
|
|
||||||
|
### 2. PostgreSQL
|
||||||
|
- **Host**: localhost
|
||||||
|
- **Puerto**: 5432
|
||||||
|
- **Rol Principal**: architect
|
||||||
|
- **Base de datos**: tzzr_db
|
||||||
|
|
||||||
|
Bases de datos:
|
||||||
|
- `tzzr_db` - Base de datos principal del sistema
|
||||||
|
- Backups en: `s3://architect/backups/`
|
||||||
|
|
||||||
|
### 3. Context Manager
|
||||||
|
- **Ubicación**: /home/architect/captain-claude/context-manager/
|
||||||
|
- **Función**: Gestión de contexto para agentes IA
|
||||||
|
- **Tecnología**: Python + PostgreSQL
|
||||||
|
- **Configuración**: src/database.py
|
||||||
|
|
||||||
|
## Directorios Importantes
|
||||||
|
|
||||||
|
```
|
||||||
|
/home/architect/
|
||||||
|
├── captain-claude/ # Sistema multiagente principal
|
||||||
|
│ ├── context-manager/ # Gestor de contexto
|
||||||
|
│ └── agents/ # Agentes IA
|
||||||
|
├── .ssh/ # Claves SSH
|
||||||
|
├── .gitea-token # Token de autenticación Gitea
|
||||||
|
└── .git-credentials # Credenciales de Git
|
||||||
|
```
|
||||||
|
|
||||||
|
## Backup y Recuperación
|
||||||
|
|
||||||
|
### Backup Gitea
|
||||||
|
```bash
|
||||||
|
gitea dump -o /tmp/gitea-backup-$(date +%Y%m%d).zip
|
||||||
|
aws s3 cp /tmp/gitea-backup-*.zip s3://architect/backups/ \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
### Backup PostgreSQL
|
||||||
|
```bash
|
||||||
|
pg_dump -U architect tzzr_db > /tmp/tzzr_db.sql
|
||||||
|
aws s3 cp /tmp/tzzr_db.sql s3://architect/backups/ \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
## Conexiones a Servidores Remotos
|
||||||
|
|
||||||
|
ARCHITECT se conecta a:
|
||||||
|
- **DECK**: ssh root@72.62.1.113 -i ~/.ssh/tzzr
|
||||||
|
- **CORP**: ssh root@92.112.181.188 -i ~/.ssh/tzzr
|
||||||
|
- **HST**: ssh root@72.62.2.84 -i ~/.ssh/tzzr
|
||||||
|
|
||||||
|
## Almacenamiento R2
|
||||||
|
|
||||||
|
### Credenciales R2
|
||||||
|
- Endpoint: https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
- Access Key: Almacenada en ~/.aws/credentials
|
||||||
|
|
||||||
|
### Buckets
|
||||||
|
- **architect**: Almacenamiento principal
|
||||||
|
- `documentos adjuntos/` - Documentos para usuarios
|
||||||
|
- `system/` - Archivos internos
|
||||||
|
- `backups/` - Backups del sistema
|
||||||
|
- `auditorias/` - Logs de auditoría
|
||||||
|
|
||||||
|
## Monitoreo y Logs
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Estado de servicios
|
||||||
|
systemctl status gitea
|
||||||
|
systemctl status postgresql
|
||||||
|
|
||||||
|
# Logs Gitea
|
||||||
|
tail -f /var/log/gitea/gitea.log
|
||||||
|
|
||||||
|
# Logs PostgreSQL
|
||||||
|
tail -f /var/log/postgresql/postgresql-*.log
|
||||||
|
|
||||||
|
# Logs del sistema
|
||||||
|
journalctl -xe
|
||||||
|
```
|
||||||
|
|
||||||
|
## Tareas Administrativas
|
||||||
|
|
||||||
|
### Crear Repositorio en Gitea
|
||||||
|
```bash
|
||||||
|
TOKEN=$(cat ~/.gitea-token)
|
||||||
|
curl -X POST "http://localhost:3000/api/v1/user/repos" \
|
||||||
|
-H "Authorization: token $TOKEN" \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"name": "repo-name", "description": "Description", "private": false, "auto_init": true}'
|
||||||
|
```
|
||||||
|
|
||||||
|
### Conectar a PostgreSQL
|
||||||
|
```bash
|
||||||
|
psql -U architect -d tzzr_db
|
||||||
|
```
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Documentación inicial
|
||||||
|
- 2025-12-18: Instalación inicial de ARCHITECT
|
||||||
143
servers/CORP.md
Normal file
143
servers/CORP.md
Normal file
@@ -0,0 +1,143 @@
|
|||||||
|
# Servidor CORP (92.112.181.188)
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
CORP es el servidor empresarial que aloja sistemas de gestión empresarial y contenidos. Incluye Odoo para ERP y Directus para gestión de contenidos.
|
||||||
|
|
||||||
|
**IP**: 92.112.181.188
|
||||||
|
**Usuario**: root
|
||||||
|
**Acceso SSH**: ssh root@92.112.181.188 -i ~/.ssh/tzzr
|
||||||
|
|
||||||
|
## Servicios Principales
|
||||||
|
|
||||||
|
### 1. Odoo (Puerto 8069)
|
||||||
|
- **Función**: Sistema ERP empresarial
|
||||||
|
- **URL Local**: http://localhost:8069
|
||||||
|
- **Ubicación**: /opt/odoo/
|
||||||
|
- **Tecnología**: Python/Odoo Framework
|
||||||
|
|
||||||
|
**Módulos Disponibles**:
|
||||||
|
- Contabilidad y finanzas
|
||||||
|
- Ventas y CRM
|
||||||
|
- Inventario
|
||||||
|
- Recursos humanos
|
||||||
|
- Proyectos
|
||||||
|
- Nómina
|
||||||
|
|
||||||
|
**Base de datos**: PostgreSQL
|
||||||
|
- Host: 69.62.126.110 (ARCHITECT)
|
||||||
|
- Database: odoo_db
|
||||||
|
|
||||||
|
**Configuración**: /etc/odoo/odoo.conf
|
||||||
|
|
||||||
|
### 2. Directus (Puerto 8055)
|
||||||
|
- **Función**: CMS y gestor de contenidos
|
||||||
|
- **URL Local**: http://localhost:8055
|
||||||
|
- **Ubicación**: /opt/directus/
|
||||||
|
- **Tecnología**: Node.js/Vue.js
|
||||||
|
|
||||||
|
**Funcionalidades**:
|
||||||
|
- Gestión de contenidos
|
||||||
|
- API REST automática
|
||||||
|
- Control de acceso granular
|
||||||
|
- Versionamiento de contenidos
|
||||||
|
- Flujos de trabajo
|
||||||
|
|
||||||
|
**Base de datos**: PostgreSQL
|
||||||
|
- Host: 69.62.126.110 (ARCHITECT)
|
||||||
|
- Database: directus_db
|
||||||
|
|
||||||
|
## Directorios Importantes
|
||||||
|
|
||||||
|
```
|
||||||
|
/opt/
|
||||||
|
├── odoo/ # Instalación de Odoo
|
||||||
|
│ ├── addons/ # Módulos customizados
|
||||||
|
│ └── config/ # Configuración
|
||||||
|
├── directus/ # Instalación de Directus
|
||||||
|
│ ├── uploads/ # Archivos subidos
|
||||||
|
│ └── config/ # Configuración
|
||||||
|
└── nginx/ # Servidor web (reverse proxy)
|
||||||
|
|
||||||
|
/home/
|
||||||
|
└── backups/ # Backups locales
|
||||||
|
```
|
||||||
|
|
||||||
|
## Monitoreo y Administración
|
||||||
|
|
||||||
|
### Odoo
|
||||||
|
```bash
|
||||||
|
# Estado del servicio
|
||||||
|
systemctl status odoo
|
||||||
|
|
||||||
|
# Logs
|
||||||
|
tail -f /var/log/odoo/odoo.log
|
||||||
|
|
||||||
|
# Acceso a la interfaz
|
||||||
|
# Admin: http://localhost:8069
|
||||||
|
```
|
||||||
|
|
||||||
|
### Directus
|
||||||
|
```bash
|
||||||
|
# Estado del servicio
|
||||||
|
systemctl status directus
|
||||||
|
|
||||||
|
# Logs
|
||||||
|
tail -f /var/log/directus/directus.log
|
||||||
|
|
||||||
|
# API Directus
|
||||||
|
# http://localhost:8055/admin
|
||||||
|
```
|
||||||
|
|
||||||
|
## Backup de Datos
|
||||||
|
|
||||||
|
### Odoo
|
||||||
|
```bash
|
||||||
|
# Backup de la base de datos
|
||||||
|
pg_dump -h 69.62.126.110 -U architect odoo_db > /home/backups/odoo_db_$(date +%Y%m%d).sql
|
||||||
|
|
||||||
|
# Backup de archivos
|
||||||
|
tar -czf /home/backups/odoo_$(date +%Y%m%d).tar.gz /opt/odoo/
|
||||||
|
|
||||||
|
# Subir a R2
|
||||||
|
aws s3 cp /home/backups/ s3://architect/backups/ --recursive \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
### Directus
|
||||||
|
```bash
|
||||||
|
# Backup de la base de datos
|
||||||
|
pg_dump -h 69.62.126.110 -U architect directus_db > /home/backups/directus_db_$(date +%Y%m%d).sql
|
||||||
|
|
||||||
|
# Backup de uploads
|
||||||
|
tar -czf /home/backups/directus_uploads_$(date +%Y%m%d).tar.gz /opt/directus/uploads/
|
||||||
|
|
||||||
|
# Subir a R2
|
||||||
|
aws s3 cp /home/backups/ s3://architect/backups/ --recursive \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
## Nginx (Reverse Proxy)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Configuración
|
||||||
|
cat /etc/nginx/sites-enabled/odoo
|
||||||
|
cat /etc/nginx/sites-enabled/directus
|
||||||
|
|
||||||
|
# Recargar configuración
|
||||||
|
systemctl reload nginx
|
||||||
|
|
||||||
|
# Verificar sintaxis
|
||||||
|
nginx -t
|
||||||
|
```
|
||||||
|
|
||||||
|
## Conexión a Base de Datos Central
|
||||||
|
|
||||||
|
Ambos servicios se conectan a la PostgreSQL centralizada:
|
||||||
|
- **Host**: 69.62.126.110
|
||||||
|
- **Puerto**: 5432
|
||||||
|
- **Usuario**: architect
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Documentación inicial
|
||||||
114
servers/DECK.md
Normal file
114
servers/DECK.md
Normal file
@@ -0,0 +1,114 @@
|
|||||||
|
# Servidor DECK (72.62.1.113)
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
DECK es un servidor de procesamiento de alto rendimiento con capacidades GPU. Aloja los servicios GRACE, PENNY y FACTORY para procesamiento de IA y análisis.
|
||||||
|
|
||||||
|
**IP**: 72.62.1.113
|
||||||
|
**Usuario**: root
|
||||||
|
**Acceso SSH**: ssh root@72.62.1.113 -i ~/.ssh/tzzr
|
||||||
|
|
||||||
|
## Servicios Principales
|
||||||
|
|
||||||
|
### 1. GRACE
|
||||||
|
- **Función**: Servicio de procesamiento de IA generativa
|
||||||
|
- **Tecnología**: Python + PyTorch/TensorFlow
|
||||||
|
- **Ubicación**: /opt/grace/
|
||||||
|
- **Puerto**: 8001 (interno)
|
||||||
|
|
||||||
|
**Capacidades**:
|
||||||
|
- Procesamiento de modelos de lenguaje
|
||||||
|
- Inferencia de IA
|
||||||
|
- Procesamiento batch
|
||||||
|
|
||||||
|
### 2. PENNY
|
||||||
|
- **Función**: Servicio de análisis y correlación de datos
|
||||||
|
- **Tecnología**: Python + NumPy/Pandas
|
||||||
|
- **Ubicación**: /opt/penny/
|
||||||
|
- **Puerto**: 8002 (interno)
|
||||||
|
|
||||||
|
**Capacidades**:
|
||||||
|
- Análisis de patrones
|
||||||
|
- Correlación de datos
|
||||||
|
- Reportes estadísticos
|
||||||
|
|
||||||
|
### 3. FACTORY
|
||||||
|
- **Función**: Servicio de síntesis y generación de datos
|
||||||
|
- **Tecnología**: Python + generación de datos
|
||||||
|
- **Ubicación**: /opt/factory/
|
||||||
|
- **Puerto**: 8003 (interno)
|
||||||
|
|
||||||
|
**Capacidades**:
|
||||||
|
- Generación de datos sintéticos
|
||||||
|
- Transformación de datos
|
||||||
|
- Enriquecimiento de datasets
|
||||||
|
|
||||||
|
## Hardware
|
||||||
|
|
||||||
|
- **GPU**: NVIDIA (modelo a verificar)
|
||||||
|
- **CPU**: Multi-core
|
||||||
|
- **RAM**: Suficiente para procesamiento GPU
|
||||||
|
- **Almacenamiento**: SSD para caché local
|
||||||
|
|
||||||
|
## Directorios Importantes
|
||||||
|
|
||||||
|
```
|
||||||
|
/opt/
|
||||||
|
├── grace/ # Servicio GRACE
|
||||||
|
├── penny/ # Servicio PENNY
|
||||||
|
├── factory/ # Servicio FACTORY
|
||||||
|
└── shared/ # Datos compartidos
|
||||||
|
|
||||||
|
/home/
|
||||||
|
├── logs/ # Logs de servicios
|
||||||
|
└── data/ # Datos de trabajo
|
||||||
|
```
|
||||||
|
|
||||||
|
## Monitoreo
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Ver estado de servicios
|
||||||
|
systemctl status grace
|
||||||
|
systemctl status penny
|
||||||
|
systemctl status factory
|
||||||
|
|
||||||
|
# Ver uso de GPU
|
||||||
|
nvidia-smi
|
||||||
|
|
||||||
|
# Logs de servicios
|
||||||
|
tail -f /home/logs/grace.log
|
||||||
|
tail -f /home/logs/penny.log
|
||||||
|
tail -f /home/logs/factory.log
|
||||||
|
```
|
||||||
|
|
||||||
|
## Conexión a Base de Datos Central
|
||||||
|
|
||||||
|
Los servicios se conectan a PostgreSQL en ARCHITECT:
|
||||||
|
- **Host**: 69.62.126.110
|
||||||
|
- **Base de datos**: tzzr_db
|
||||||
|
- **Puerto**: 5432
|
||||||
|
|
||||||
|
## Almacenamiento
|
||||||
|
|
||||||
|
- **Local**: /home/data/ para cache y trabajo temporal
|
||||||
|
- **R2**: Transferencia de resultados a `s3://architect/gpu-services/`
|
||||||
|
|
||||||
|
## Actualización de Servicios
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Detener servicio
|
||||||
|
systemctl stop grace
|
||||||
|
|
||||||
|
# Actualizar código
|
||||||
|
cd /opt/grace && git pull
|
||||||
|
|
||||||
|
# Reiniciar
|
||||||
|
systemctl start grace
|
||||||
|
|
||||||
|
# Verificar logs
|
||||||
|
tail -f /home/logs/grace.log
|
||||||
|
```
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Documentación inicial
|
||||||
139
servers/HST.md
Normal file
139
servers/HST.md
Normal file
@@ -0,0 +1,139 @@
|
|||||||
|
# Servidor HST (72.62.2.84)
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
HST es un servidor de hospedaje y soporte que proporciona servicios complementarios para la infraestructura TZZR.
|
||||||
|
|
||||||
|
**IP**: 72.62.2.84
|
||||||
|
**Usuario**: root
|
||||||
|
**Acceso SSH**: ssh root@72.62.2.84 -i ~/.ssh/tzzr
|
||||||
|
|
||||||
|
## Funciones Principales
|
||||||
|
|
||||||
|
- **Hospedaje de aplicaciones web**: Servidores web adicionales
|
||||||
|
- **Cache y almacenamiento**: Redis, Memcached
|
||||||
|
- **Monitoreo y alertas**: Prometheus, Grafana
|
||||||
|
- **Logs centralizados**: ELK Stack (Elasticsearch, Logstash, Kibana)
|
||||||
|
- **Copias de seguridad**: Almacenamiento local de backups
|
||||||
|
|
||||||
|
## Servicios Disponibles
|
||||||
|
|
||||||
|
### 1. Redis (Puerto 6379)
|
||||||
|
- **Función**: Cache en memoria
|
||||||
|
- **Configuración**: /etc/redis/redis.conf
|
||||||
|
- **Datos**: Sesiones, cachés de aplicación
|
||||||
|
- **Persistencia**: RDB y AOF
|
||||||
|
|
||||||
|
### 2. Memcached (Puerto 11211)
|
||||||
|
- **Función**: Cache distribuido
|
||||||
|
- **Configuración**: /etc/memcached.conf
|
||||||
|
- **Casos de uso**: Cachés de sesión, objetos
|
||||||
|
|
||||||
|
### 3. Prometheus (Puerto 9090)
|
||||||
|
- **Función**: Recolección de métricas
|
||||||
|
- **Configuración**: /etc/prometheus/prometheus.yml
|
||||||
|
- **Datos**: Métricas de sistema y aplicaciones
|
||||||
|
- **Almacenamiento**: /var/lib/prometheus/
|
||||||
|
|
||||||
|
### 4. Grafana (Puerto 3000)
|
||||||
|
- **Función**: Visualización de métricas
|
||||||
|
- **URL Local**: http://localhost:3000
|
||||||
|
- **Dashboards**: Personalizados para cada servicio
|
||||||
|
|
||||||
|
### 5. ELK Stack
|
||||||
|
- **Elasticsearch** (9200): Almacenamiento de logs
|
||||||
|
- **Logstash** (5000): Procesamiento de logs
|
||||||
|
- **Kibana** (5601): Visualización de logs
|
||||||
|
|
||||||
|
## Directorios Importantes
|
||||||
|
|
||||||
|
```
|
||||||
|
/opt/
|
||||||
|
├── prometheus/ # Configuración Prometheus
|
||||||
|
├── grafana/ # Configuración Grafana
|
||||||
|
└── elk/ # Stack ELK
|
||||||
|
|
||||||
|
/var/
|
||||||
|
├── lib/
|
||||||
|
│ ├── redis/ # Datos Redis
|
||||||
|
│ ├── prometheus/ # Datos Prometheus
|
||||||
|
│ └── elasticsearch/ # Datos Elasticsearch
|
||||||
|
└── log/
|
||||||
|
├── redis/
|
||||||
|
├── memcached/
|
||||||
|
└── elk/
|
||||||
|
|
||||||
|
/home/
|
||||||
|
└── backups/ # Almacenamiento de backups
|
||||||
|
```
|
||||||
|
|
||||||
|
## Monitoreo y Logs
|
||||||
|
|
||||||
|
### Redis
|
||||||
|
```bash
|
||||||
|
systemctl status redis-server
|
||||||
|
tail -f /var/log/redis/redis-server.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Memcached
|
||||||
|
```bash
|
||||||
|
systemctl status memcached
|
||||||
|
tail -f /var/log/memcached.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Prometheus
|
||||||
|
```bash
|
||||||
|
systemctl status prometheus
|
||||||
|
tail -f /var/log/prometheus/prometheus.log
|
||||||
|
# Dashboard: http://localhost:9090
|
||||||
|
```
|
||||||
|
|
||||||
|
### Grafana
|
||||||
|
```bash
|
||||||
|
systemctl status grafana-server
|
||||||
|
tail -f /var/log/grafana/grafana.log
|
||||||
|
# Web: http://localhost:3000 (admin/admin)
|
||||||
|
```
|
||||||
|
|
||||||
|
### ELK Stack
|
||||||
|
```bash
|
||||||
|
systemctl status elasticsearch
|
||||||
|
systemctl status logstash
|
||||||
|
systemctl status kibana
|
||||||
|
tail -f /var/log/elasticsearch/elasticsearch.log
|
||||||
|
# Kibana: http://localhost:5601
|
||||||
|
```
|
||||||
|
|
||||||
|
## Almacenamiento de Backups
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Directorio de backups
|
||||||
|
ls -la /home/backups/
|
||||||
|
|
||||||
|
# Sincronizar con R2
|
||||||
|
aws s3 sync /home/backups/ s3://architect/backups/ \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
## Configuración de Clientes
|
||||||
|
|
||||||
|
### Redis
|
||||||
|
```bash
|
||||||
|
# Conexión local
|
||||||
|
redis-cli
|
||||||
|
127.0.0.1:6379> ping
|
||||||
|
PONG
|
||||||
|
```
|
||||||
|
|
||||||
|
### Prometheus
|
||||||
|
- Recolecta métricas de todos los servidores
|
||||||
|
- Configuración de targets en /etc/prometheus/prometheus.yml
|
||||||
|
|
||||||
|
### Grafana
|
||||||
|
- Paneles de control personalizados
|
||||||
|
- Alertas basadas en métricas
|
||||||
|
- Integración con Slack y otros servicios
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Documentación inicial
|
||||||
296
services/context-manager.md
Normal file
296
services/context-manager.md
Normal file
@@ -0,0 +1,296 @@
|
|||||||
|
# Context Manager - Sistema de Gestión de Contexto
|
||||||
|
|
||||||
|
## Información General
|
||||||
|
|
||||||
|
- **Servidor**: ARCHITECT (69.62.126.110)
|
||||||
|
- **Ubicación**: /home/architect/captain-claude/context-manager/
|
||||||
|
- **Tecnología**: Python + PostgreSQL
|
||||||
|
- **Base de datos**: PostgreSQL (local)
|
||||||
|
|
||||||
|
## Descripción
|
||||||
|
|
||||||
|
Context Manager es un sistema de gestión de contexto diseñado para coordinar agentes de IA en el sistema TZZR. Proporciona:
|
||||||
|
|
||||||
|
- Almacenamiento centralizado de contexto
|
||||||
|
- Control de acceso a contexto entre agentes
|
||||||
|
- Versionamiento de contexto
|
||||||
|
- Auditoría de cambios
|
||||||
|
- Integración con múltiples proveedores de IA (Anthropic, OpenAI)
|
||||||
|
|
||||||
|
## Arquitectura
|
||||||
|
|
||||||
|
### Componentes
|
||||||
|
|
||||||
|
```
|
||||||
|
context-manager/
|
||||||
|
├── schemas/ # Definiciones de base de datos
|
||||||
|
│ ├── 00_base.sql
|
||||||
|
│ ├── 01_immutable_log.sql
|
||||||
|
│ ├── 02_context_manager.sql
|
||||||
|
│ └── 03_algorithm_engine.sql
|
||||||
|
├── src/
|
||||||
|
│ ├── __init__.py
|
||||||
|
│ ├── database.py # Conexión a PostgreSQL
|
||||||
|
│ ├── models.py # Modelos de datos
|
||||||
|
│ ├── context_selector.py
|
||||||
|
│ └── providers/ # Integraciones con IA
|
||||||
|
│ ├── base.py
|
||||||
|
│ ├── anthropic.py
|
||||||
|
│ └── openai.py
|
||||||
|
└── tests/ # Tests unitarios
|
||||||
|
```
|
||||||
|
|
||||||
|
### Base de Datos
|
||||||
|
|
||||||
|
**Host**: localhost (ARCHITECT)
|
||||||
|
**Puerto**: 5432
|
||||||
|
**Base de datos**: tzzr_db
|
||||||
|
|
||||||
|
**Tablas principales**:
|
||||||
|
- `context` - Almacenamiento de contexto
|
||||||
|
- `agents` - Registro de agentes
|
||||||
|
- `access_log` - Auditoría de accesos
|
||||||
|
- `context_history` - Versionamiento
|
||||||
|
|
||||||
|
## Instalación
|
||||||
|
|
||||||
|
### Requisitos
|
||||||
|
- Python 3.9+
|
||||||
|
- PostgreSQL 12+
|
||||||
|
- pip
|
||||||
|
|
||||||
|
### Setup
|
||||||
|
```bash
|
||||||
|
cd /home/architect/captain-claude/context-manager/
|
||||||
|
|
||||||
|
# Crear entorno virtual
|
||||||
|
python3 -m venv venv
|
||||||
|
source venv/bin/activate
|
||||||
|
|
||||||
|
# Instalar dependencias
|
||||||
|
pip install -r requirements.txt
|
||||||
|
|
||||||
|
# Inicializar base de datos
|
||||||
|
python -m src.database init
|
||||||
|
```
|
||||||
|
|
||||||
|
## Configuración
|
||||||
|
|
||||||
|
### Variables de Entorno
|
||||||
|
Archivo: `/home/architect/captain-claude/context-manager/.env`
|
||||||
|
|
||||||
|
```env
|
||||||
|
# PostgreSQL
|
||||||
|
DATABASE_URL=postgresql://architect:password@localhost:5432/tzzr_db
|
||||||
|
|
||||||
|
# Providers de IA
|
||||||
|
ANTHROPIC_API_KEY=sk-...
|
||||||
|
OPENAI_API_KEY=sk-...
|
||||||
|
|
||||||
|
# Configuración del sistema
|
||||||
|
CONTEXT_MANAGER_PORT=5000
|
||||||
|
LOG_LEVEL=INFO
|
||||||
|
```
|
||||||
|
|
||||||
|
## API
|
||||||
|
|
||||||
|
### Endpoints Principales
|
||||||
|
|
||||||
|
#### Crear Contexto
|
||||||
|
```bash
|
||||||
|
POST /api/context
|
||||||
|
Content-Type: application/json
|
||||||
|
|
||||||
|
{
|
||||||
|
"agent_id": "agent_name",
|
||||||
|
"context_data": {
|
||||||
|
"key": "value"
|
||||||
|
},
|
||||||
|
"metadata": {
|
||||||
|
"priority": "high"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Obtener Contexto
|
||||||
|
```bash
|
||||||
|
GET /api/context/{context_id}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Actualizar Contexto
|
||||||
|
```bash
|
||||||
|
PATCH /api/context/{context_id}
|
||||||
|
Content-Type: application/json
|
||||||
|
|
||||||
|
{
|
||||||
|
"context_data": {
|
||||||
|
"key": "new_value"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Eliminar Contexto
|
||||||
|
```bash
|
||||||
|
DELETE /api/context/{context_id}
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Obtener Historial
|
||||||
|
```bash
|
||||||
|
GET /api/context/{context_id}/history
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Listar Contextos de Agente
|
||||||
|
```bash
|
||||||
|
GET /api/agent/{agent_id}/contexts
|
||||||
|
```
|
||||||
|
|
||||||
|
## Uso desde Agentes
|
||||||
|
|
||||||
|
### Ejemplo Python
|
||||||
|
```python
|
||||||
|
from src.database import DatabaseManager
|
||||||
|
from src.context_selector import ContextSelector
|
||||||
|
|
||||||
|
# Conectar a base de datos
|
||||||
|
db = DatabaseManager()
|
||||||
|
|
||||||
|
# Crear contexto
|
||||||
|
context = db.create_context(
|
||||||
|
agent_id="mi_agente",
|
||||||
|
context_data={"información": "valor"},
|
||||||
|
metadata={"priority": "high"}
|
||||||
|
)
|
||||||
|
|
||||||
|
# Obtener contexto
|
||||||
|
contexto = db.get_context(context_id)
|
||||||
|
|
||||||
|
# Actualizar
|
||||||
|
db.update_context(context_id, new_data)
|
||||||
|
|
||||||
|
# Seleccionar contexto relevante
|
||||||
|
selector = ContextSelector(db)
|
||||||
|
contextos_relevantes = selector.select_for_agent(
|
||||||
|
agent_id="mi_agente",
|
||||||
|
query="búsqueda"
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Proveedores de IA
|
||||||
|
|
||||||
|
### Anthropic
|
||||||
|
```python
|
||||||
|
from src.providers.anthropic import AnthropicProvider
|
||||||
|
|
||||||
|
provider = AnthropicProvider(api_key="sk-...")
|
||||||
|
response = provider.process_with_context(
|
||||||
|
model="claude-opus-4.5-20251101",
|
||||||
|
messages=[...],
|
||||||
|
context=context_data
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
### OpenAI
|
||||||
|
```python
|
||||||
|
from src.providers.openai import OpenAIProvider
|
||||||
|
|
||||||
|
provider = OpenAIProvider(api_key="sk-...")
|
||||||
|
response = provider.process_with_context(
|
||||||
|
model="gpt-4",
|
||||||
|
messages=[...],
|
||||||
|
context=context_data
|
||||||
|
)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Esquemas de Base de Datos
|
||||||
|
|
||||||
|
### Tabla: context
|
||||||
|
```sql
|
||||||
|
CREATE TABLE context (
|
||||||
|
id UUID PRIMARY KEY,
|
||||||
|
agent_id VARCHAR NOT NULL,
|
||||||
|
context_data JSONB NOT NULL,
|
||||||
|
metadata JSONB,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
version INTEGER DEFAULT 1
|
||||||
|
);
|
||||||
|
```
|
||||||
|
|
||||||
|
### Tabla: access_log
|
||||||
|
```sql
|
||||||
|
CREATE TABLE access_log (
|
||||||
|
id SERIAL PRIMARY KEY,
|
||||||
|
context_id UUID REFERENCES context(id),
|
||||||
|
agent_id VARCHAR NOT NULL,
|
||||||
|
action VARCHAR NOT NULL,
|
||||||
|
timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
|
);
|
||||||
|
```
|
||||||
|
|
||||||
|
## Monitoreo y Logs
|
||||||
|
|
||||||
|
### Logs de Aplicación
|
||||||
|
```bash
|
||||||
|
tail -f /var/log/captain-claude/context-manager.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Estadísticas
|
||||||
|
```bash
|
||||||
|
# Número de contextos por agente
|
||||||
|
psql -U architect tzzr_db -c "SELECT agent_id, COUNT(*) FROM context GROUP BY agent_id;"
|
||||||
|
|
||||||
|
# Últimos accesos
|
||||||
|
psql -U architect tzzr_db -c "SELECT * FROM access_log ORDER BY timestamp DESC LIMIT 10;"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Backup y Recuperación
|
||||||
|
|
||||||
|
### Backup
|
||||||
|
```bash
|
||||||
|
pg_dump -U architect tzzr_db > /home/backups/context_manager_backup.sql
|
||||||
|
|
||||||
|
# Subir a R2
|
||||||
|
aws s3 cp /home/backups/context_manager_backup.sql s3://architect/backups/ \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
### Restaurar
|
||||||
|
```bash
|
||||||
|
psql -U architect tzzr_db < context_manager_backup.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
## Testing
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /home/architect/captain-claude/context-manager/
|
||||||
|
|
||||||
|
# Ejecutar tests
|
||||||
|
pytest tests/
|
||||||
|
|
||||||
|
# Tests con coverage
|
||||||
|
pytest --cov=src tests/
|
||||||
|
|
||||||
|
# Tests específicos
|
||||||
|
pytest tests/test_database.py -v
|
||||||
|
```
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
### Error de conexión a BD
|
||||||
|
```python
|
||||||
|
from src.database import DatabaseManager
|
||||||
|
db = DatabaseManager()
|
||||||
|
db.test_connection()
|
||||||
|
```
|
||||||
|
|
||||||
|
### Logs detallados
|
||||||
|
```bash
|
||||||
|
# Cambiar nivel de log
|
||||||
|
export LOG_LEVEL=DEBUG
|
||||||
|
python -m src.main
|
||||||
|
```
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Documentación inicial
|
||||||
|
- 2025-12-28: Implementación inicial de Context Manager
|
||||||
268
services/directus.md
Normal file
268
services/directus.md
Normal file
@@ -0,0 +1,268 @@
|
|||||||
|
# Directus - CMS y Gestor de Contenidos
|
||||||
|
|
||||||
|
## Información General
|
||||||
|
|
||||||
|
- **Servidor**: CORP (92.112.181.188)
|
||||||
|
- **Puerto**: 8055
|
||||||
|
- **URL Local**: http://localhost:8055
|
||||||
|
- **Tecnología**: Node.js / Vue.js
|
||||||
|
- **Base de datos**: PostgreSQL (en ARCHITECT)
|
||||||
|
|
||||||
|
## Descripción
|
||||||
|
|
||||||
|
Directus es un CMS headless y gestor de base de datos visual. Proporciona:
|
||||||
|
|
||||||
|
- Interfaz visual para gestión de contenidos
|
||||||
|
- API REST automática para todo contenido
|
||||||
|
- Control de acceso granular basado en roles
|
||||||
|
- Versionamiento y flujos de trabajo
|
||||||
|
- Gestión de archivos y medios
|
||||||
|
- Webhooks y automatización
|
||||||
|
|
||||||
|
## Instalación y Configuración
|
||||||
|
|
||||||
|
### Ubicación
|
||||||
|
```bash
|
||||||
|
/opt/directus/
|
||||||
|
├── config/ # Archivos de configuración
|
||||||
|
├── uploads/ # Archivos subidos por usuarios
|
||||||
|
├── extensions/ # Extensiones personalizadas
|
||||||
|
└── node_modules/ # Dependencias
|
||||||
|
```
|
||||||
|
|
||||||
|
### Configuración Principal
|
||||||
|
Archivo: `/opt/directus/.env`
|
||||||
|
|
||||||
|
```env
|
||||||
|
DB_CLIENT=postgres
|
||||||
|
DB_HOST=69.62.126.110
|
||||||
|
DB_PORT=5432
|
||||||
|
DB_DATABASE=directus_db
|
||||||
|
DB_USER=architect
|
||||||
|
DB_PASSWORD=[password]
|
||||||
|
|
||||||
|
ADMIN_EMAIL=admin@tzzr.me
|
||||||
|
ADMIN_PASSWORD=[password]
|
||||||
|
KEY=[generated_key]
|
||||||
|
SECRET=[generated_secret]
|
||||||
|
```
|
||||||
|
|
||||||
|
## Base de Datos
|
||||||
|
|
||||||
|
**Host**: 69.62.126.110 (ARCHITECT)
|
||||||
|
**Database**: directus_db
|
||||||
|
**Usuario**: architect
|
||||||
|
|
||||||
|
### Backup
|
||||||
|
```bash
|
||||||
|
pg_dump -h 69.62.126.110 -U architect directus_db > directus_db_backup.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
### Restaurar
|
||||||
|
```bash
|
||||||
|
psql -h 69.62.126.110 -U architect directus_db < directus_db_backup.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
## Acceso
|
||||||
|
|
||||||
|
- **URL**: http://localhost:8055/admin
|
||||||
|
- **Usuario Admin**: admin@tzzr.me
|
||||||
|
- **Contraseña**: [Cambiar en primer acceso]
|
||||||
|
|
||||||
|
## Funcionalidades Principales
|
||||||
|
|
||||||
|
### 1. Gestión de Contenidos
|
||||||
|
- Creación de colecciones (tablas)
|
||||||
|
- Definición de campos con tipos de datos
|
||||||
|
- Control de acceso por colección
|
||||||
|
- Búsqueda y filtrado avanzado
|
||||||
|
|
||||||
|
### 2. Roles y Permisos
|
||||||
|
- Administrador
|
||||||
|
- Editor
|
||||||
|
- Revisor
|
||||||
|
- Visor
|
||||||
|
- Roles personalizados
|
||||||
|
|
||||||
|
**Niveles de permiso**:
|
||||||
|
- Ver
|
||||||
|
- Crear
|
||||||
|
- Actualizar
|
||||||
|
- Eliminar
|
||||||
|
- Compartir
|
||||||
|
|
||||||
|
### 3. Archivos y Medios
|
||||||
|
- Subida de archivos (imágenes, documentos, etc.)
|
||||||
|
- Carpetas organizadas
|
||||||
|
- Miniaturas automáticas
|
||||||
|
- Procesamiento de imágenes
|
||||||
|
|
||||||
|
**Ubicación**: `/opt/directus/uploads/`
|
||||||
|
|
||||||
|
### 4. API REST
|
||||||
|
Accesible en: `http://localhost:8055/api/rest/`
|
||||||
|
|
||||||
|
Ejemplos:
|
||||||
|
```bash
|
||||||
|
# Listar colecciones
|
||||||
|
curl http://localhost:8055/api/rest/items/coleccion
|
||||||
|
|
||||||
|
# Crear elemento
|
||||||
|
curl -X POST http://localhost:8055/api/rest/items/coleccion \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"campo": "valor"}'
|
||||||
|
|
||||||
|
# Actualizar
|
||||||
|
curl -X PATCH http://localhost:8055/api/rest/items/coleccion/id \
|
||||||
|
-H "Content-Type: application/json" \
|
||||||
|
-d '{"campo": "nuevo_valor"}'
|
||||||
|
|
||||||
|
# Eliminar
|
||||||
|
curl -X DELETE http://localhost:8055/api/rest/items/coleccion/id
|
||||||
|
```
|
||||||
|
|
||||||
|
### 5. GraphQL
|
||||||
|
Accesible en: `http://localhost:8055/api/graphql`
|
||||||
|
|
||||||
|
Ejemplo:
|
||||||
|
```graphql
|
||||||
|
query {
|
||||||
|
coleccion {
|
||||||
|
id
|
||||||
|
campo1
|
||||||
|
campo2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### 6. Webhooks
|
||||||
|
- Disparadores en eventos de datos
|
||||||
|
- Envío a URLs externas
|
||||||
|
- Transformación de datos
|
||||||
|
- Integración con sistemas externos
|
||||||
|
|
||||||
|
### 7. Flujos de Trabajo
|
||||||
|
- Aprobaciones de contenido
|
||||||
|
- Automatización basada en eventos
|
||||||
|
- Notificaciones
|
||||||
|
- Transiciones de estado
|
||||||
|
|
||||||
|
## Administración
|
||||||
|
|
||||||
|
### Servicios
|
||||||
|
```bash
|
||||||
|
# Estado
|
||||||
|
systemctl status directus
|
||||||
|
|
||||||
|
# Reiniciar
|
||||||
|
systemctl restart directus
|
||||||
|
|
||||||
|
# Logs
|
||||||
|
tail -f /var/log/directus/directus.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Actualización
|
||||||
|
```bash
|
||||||
|
# Detener
|
||||||
|
systemctl stop directus
|
||||||
|
|
||||||
|
# Actualizar código
|
||||||
|
cd /opt/directus && npm update
|
||||||
|
|
||||||
|
# Reiniciar
|
||||||
|
systemctl start directus
|
||||||
|
|
||||||
|
# Ver logs
|
||||||
|
tail -f /var/log/directus/directus.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Gestión de Extensiones
|
||||||
|
```bash
|
||||||
|
# Instalar extensión
|
||||||
|
cd /opt/directus && npm install extension-name
|
||||||
|
|
||||||
|
# Reiniciar para aplicar
|
||||||
|
systemctl restart directus
|
||||||
|
```
|
||||||
|
|
||||||
|
## Backup y Recuperación
|
||||||
|
|
||||||
|
### Backup Completo
|
||||||
|
```bash
|
||||||
|
# Base de datos
|
||||||
|
pg_dump -h 69.62.126.110 -U architect directus_db > /home/backups/directus_db_$(date +%Y%m%d).sql
|
||||||
|
|
||||||
|
# Archivos subidos
|
||||||
|
tar -czf /home/backups/directus_uploads_$(date +%Y%m%d).tar.gz /opt/directus/uploads/
|
||||||
|
|
||||||
|
# Configuración
|
||||||
|
tar -czf /home/backups/directus_config_$(date +%Y%m%d).tar.gz /opt/directus/config/ /opt/directus/.env
|
||||||
|
|
||||||
|
# Subir a R2
|
||||||
|
aws s3 cp /home/backups/ s3://architect/backups/ --recursive \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
### Recuperación
|
||||||
|
```bash
|
||||||
|
# Restaurar base de datos
|
||||||
|
psql -h 69.62.126.110 -U architect directus_db < directus_db_backup.sql
|
||||||
|
|
||||||
|
# Restaurar archivos
|
||||||
|
tar -xzf directus_uploads_backup.tar.gz -C /opt/directus/
|
||||||
|
|
||||||
|
# Restaurar configuración
|
||||||
|
tar -xzf directus_config_backup.tar.gz -C /opt/directus/
|
||||||
|
|
||||||
|
# Reiniciar
|
||||||
|
systemctl restart directus
|
||||||
|
```
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
### Error de conexión
|
||||||
|
```bash
|
||||||
|
psql -h 69.62.126.110 -U architect -d directus_db
|
||||||
|
```
|
||||||
|
|
||||||
|
### Logs
|
||||||
|
```bash
|
||||||
|
tail -n 200 /var/log/directus/directus.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Limpiar cache
|
||||||
|
```bash
|
||||||
|
systemctl stop directus
|
||||||
|
rm -rf /opt/directus/.cache
|
||||||
|
systemctl start directus
|
||||||
|
```
|
||||||
|
|
||||||
|
### Regenerar claves de seguridad
|
||||||
|
```bash
|
||||||
|
cd /opt/directus
|
||||||
|
npm run cli secrets list
|
||||||
|
npm run cli secrets generate
|
||||||
|
```
|
||||||
|
|
||||||
|
## Casos de Uso
|
||||||
|
|
||||||
|
1. **CMS para Sitio Web**
|
||||||
|
- Colecciones: Páginas, Artículos, Categorías
|
||||||
|
- Roles: Administrador, Editor, Revisor
|
||||||
|
|
||||||
|
2. **Gestión de Productos**
|
||||||
|
- Colecciones: Productos, Categorías, Atributos
|
||||||
|
- Archivos: Imágenes de producto
|
||||||
|
|
||||||
|
3. **Blog**
|
||||||
|
- Colecciones: Artículos, Categorías, Comentarios
|
||||||
|
- Webhooks: Notificación de nuevos artículos
|
||||||
|
|
||||||
|
4. **Portal de Clientes**
|
||||||
|
- Roles por cliente
|
||||||
|
- Acceso granular a datos
|
||||||
|
- API para aplicación frontend
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Documentación inicial
|
||||||
197
services/odoo.md
Normal file
197
services/odoo.md
Normal file
@@ -0,0 +1,197 @@
|
|||||||
|
# Odoo - Sistema ERP Empresarial
|
||||||
|
|
||||||
|
## Información General
|
||||||
|
|
||||||
|
- **Servidor**: CORP (92.112.181.188)
|
||||||
|
- **Puerto**: 8069
|
||||||
|
- **URL Local**: http://localhost:8069
|
||||||
|
- **Tecnología**: Python / Odoo Framework
|
||||||
|
- **Base de datos**: PostgreSQL (en ARCHITECT)
|
||||||
|
|
||||||
|
## Descripción
|
||||||
|
|
||||||
|
Odoo es un sistema ERP (Enterprise Resource Planning) completo que integra todas las operaciones empresariales. Proporciona módulos para:
|
||||||
|
|
||||||
|
- Contabilidad y finanzas
|
||||||
|
- Ventas y CRM
|
||||||
|
- Inventario y almacén
|
||||||
|
- Recursos humanos
|
||||||
|
- Nómina
|
||||||
|
- Compras
|
||||||
|
- Proyectos
|
||||||
|
- Sitio web
|
||||||
|
|
||||||
|
## Instalación y Configuración
|
||||||
|
|
||||||
|
### Ubicación
|
||||||
|
```bash
|
||||||
|
/opt/odoo/
|
||||||
|
├── addons/ # Módulos personalizados
|
||||||
|
├── bin/ # Scripts ejecutables
|
||||||
|
├── config/ # Configuración
|
||||||
|
└── data/ # Datos locales
|
||||||
|
```
|
||||||
|
|
||||||
|
### Configuración Principal
|
||||||
|
Archivo: `/etc/odoo/odoo.conf`
|
||||||
|
|
||||||
|
```ini
|
||||||
|
[options]
|
||||||
|
admin_passwd = admin
|
||||||
|
db_host = 69.62.126.110
|
||||||
|
db_port = 5432
|
||||||
|
db_user = architect
|
||||||
|
db_password = [password]
|
||||||
|
db_name = odoo_db
|
||||||
|
addons_path = /opt/odoo/addons
|
||||||
|
```
|
||||||
|
|
||||||
|
## Base de Datos
|
||||||
|
|
||||||
|
**Host**: 69.62.126.110 (ARCHITECT)
|
||||||
|
**Database**: odoo_db
|
||||||
|
**Usuario**: architect
|
||||||
|
|
||||||
|
### Backup
|
||||||
|
```bash
|
||||||
|
pg_dump -h 69.62.126.110 -U architect odoo_db > odoo_db_backup.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
### Restaurar
|
||||||
|
```bash
|
||||||
|
psql -h 69.62.126.110 -U architect odoo_db < odoo_db_backup.sql
|
||||||
|
```
|
||||||
|
|
||||||
|
## Inicio de Sesión
|
||||||
|
|
||||||
|
- **Usuario Admin**: admin
|
||||||
|
- **Contraseña**: [Cambiar en primer acceso]
|
||||||
|
- **URL**: http://localhost:8069
|
||||||
|
|
||||||
|
## Módulos Principales
|
||||||
|
|
||||||
|
### 1. Contabilidad (account)
|
||||||
|
- Facturación
|
||||||
|
- Documentos contables
|
||||||
|
- Reportes financieros
|
||||||
|
- Impuestos
|
||||||
|
|
||||||
|
### 2. Ventas (sale)
|
||||||
|
- Presupuestos
|
||||||
|
- Órdenes de venta
|
||||||
|
- Facturación automática
|
||||||
|
- Gestión de clientes
|
||||||
|
|
||||||
|
### 3. Inventario (stock)
|
||||||
|
- Gestión de almacén
|
||||||
|
- Movimientos de stock
|
||||||
|
- Recuentos físicos
|
||||||
|
- Trazabilidad
|
||||||
|
|
||||||
|
### 4. CRM (crm)
|
||||||
|
- Gestión de contactos
|
||||||
|
- Oportunidades de venta
|
||||||
|
- Actividades
|
||||||
|
- Automatización de ventas
|
||||||
|
|
||||||
|
### 5. Recursos Humanos (hr)
|
||||||
|
- Registro de empleados
|
||||||
|
- Vacaciones y ausencias
|
||||||
|
- Evaluaciones
|
||||||
|
- Documentos personales
|
||||||
|
|
||||||
|
### 6. Nómina (hr_payroll)
|
||||||
|
- Cálculo de nóminas
|
||||||
|
- Retenciones
|
||||||
|
- Reportes de nómina
|
||||||
|
|
||||||
|
## Administración
|
||||||
|
|
||||||
|
### Servicios
|
||||||
|
```bash
|
||||||
|
# Estado
|
||||||
|
systemctl status odoo
|
||||||
|
|
||||||
|
# Reiniciar
|
||||||
|
systemctl restart odoo
|
||||||
|
|
||||||
|
# Logs
|
||||||
|
tail -f /var/log/odoo/odoo.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Actualización de Módulos
|
||||||
|
```bash
|
||||||
|
# Detener Odoo
|
||||||
|
systemctl stop odoo
|
||||||
|
|
||||||
|
# Actualizar código
|
||||||
|
cd /opt/odoo && git pull
|
||||||
|
|
||||||
|
# Actualizar base de datos (si es necesario)
|
||||||
|
odoo-bin -d odoo_db -u account,sale,stock
|
||||||
|
|
||||||
|
# Reiniciar
|
||||||
|
systemctl start odoo
|
||||||
|
```
|
||||||
|
|
||||||
|
### Instalación de Módulos
|
||||||
|
Desde la interfaz de administración:
|
||||||
|
1. Ir a Aplicaciones
|
||||||
|
2. Buscar módulo
|
||||||
|
3. Hacer clic en Instalar
|
||||||
|
|
||||||
|
Desde línea de comandos:
|
||||||
|
```bash
|
||||||
|
odoo-bin -d odoo_db -i nombre_modulo
|
||||||
|
```
|
||||||
|
|
||||||
|
## Backup y Recuperación
|
||||||
|
|
||||||
|
### Backup Completo
|
||||||
|
```bash
|
||||||
|
# Base de datos
|
||||||
|
pg_dump -h 69.62.126.110 -U architect odoo_db > /home/backups/odoo_db_$(date +%Y%m%d).sql
|
||||||
|
|
||||||
|
# Archivos de configuración y módulos
|
||||||
|
tar -czf /home/backups/odoo_files_$(date +%Y%m%d).tar.gz /opt/odoo/ /etc/odoo/
|
||||||
|
|
||||||
|
# Subir a R2
|
||||||
|
aws s3 cp /home/backups/ s3://architect/backups/ --recursive \
|
||||||
|
--endpoint-url https://7dedae6030f5554d99d37e98a5232996.r2.cloudflarestorage.com
|
||||||
|
```
|
||||||
|
|
||||||
|
### Recuperación
|
||||||
|
```bash
|
||||||
|
# Restaurar base de datos
|
||||||
|
psql -h 69.62.126.110 -U architect odoo_db < odoo_db_backup.sql
|
||||||
|
|
||||||
|
# Restaurar archivos
|
||||||
|
tar -xzf odoo_files_backup.tar.gz -C /
|
||||||
|
|
||||||
|
# Reiniciar
|
||||||
|
systemctl restart odoo
|
||||||
|
```
|
||||||
|
|
||||||
|
## Troubleshooting
|
||||||
|
|
||||||
|
### Error de conexión a base de datos
|
||||||
|
Verificar:
|
||||||
|
```bash
|
||||||
|
psql -h 69.62.126.110 -U architect -d odoo_db
|
||||||
|
```
|
||||||
|
|
||||||
|
### Logs
|
||||||
|
```bash
|
||||||
|
tail -n 100 /var/log/odoo/odoo.log
|
||||||
|
```
|
||||||
|
|
||||||
|
### Limpiar cache
|
||||||
|
```bash
|
||||||
|
systemctl stop odoo
|
||||||
|
rm -rf ~/.local/share/Odoo/*
|
||||||
|
systemctl start odoo
|
||||||
|
```
|
||||||
|
|
||||||
|
## Últimas Actualizaciones
|
||||||
|
|
||||||
|
- 2025-12-30: Documentación inicial
|
||||||
Reference in New Issue
Block a user