Skip to content

Releases: thc1006/oran-ric-platform

v2.0.0 - Architecture Refactoring & Prometheus Metrics Integration

Choose a tag to compare

@thc1006 thc1006 released this 15 Nov 23:08

🎉 Major Release: v2.0.0

🏗️ Architecture Refactoring

E2 Node Extraction - Breaking Change

  • Extracted E2 Node Simulator to independent repository: oran-e2-node
  • Set up E2 Node as git submodule at simulator/e2-simulator
  • Enables independent development and version control
  • Migration: Run git submodule update --init --recursive after pulling

Repository Cleanup

  • Removed 10,000+ lines of archived HackMD documentation
  • Updated .gitignore to exclude development artifacts
  • Reduced repository size significantly

✨ New Features

Prometheus Metrics Integration (Complete)

  • ✅ HTTP endpoints for all xApps (KPIMON, Traffic Steering, QoE Predictor, RC, FL)
  • ✅ Prometheus metrics scraping configuration
  • ✅ 8 comprehensive alert rule categories
  • ✅ Grafana dashboards with dynamic data

E2 Interface Testing

  • ✅ E2 Simulator with realistic KPI generation
  • ✅ Multi-xApp support (5 xApps)
  • ✅ Configurable simulation parameters

Observability Stack

  • ✅ Prometheus server integration
  • ✅ Grafana dashboards
  • ✅ Automated E2E testing with Playwright

🐛 Bug Fixes

  1. Traffic Steering SDL Error - Added error handling to prevent Pod restarts
  2. Port Configuration Inconsistency - Unified Service, Deployment, Prometheus annotations
  3. E2 Simulator Port Configuration - Fixed QoE Predictor (8090) and RC xApp (8100) ports
  4. KPIMON Metrics Not Incrementing - Added counter increment logic
  5. Playwright Headless Mode Failure - Updated to new headless mode (--headless=new)

📦 Component Versions

Component Version Changes
KPIMON v1.0.1 HTTP endpoint + metrics increment
Traffic Steering v1.0.2 SDL error fix + port configuration
QoE Predictor v1.0.1 HTTP endpoint
RAN Control v1.0.1 HTTP endpoint
Federated Learning v1.0.0 Initial deployment
E2 Simulator v1.0.0 Now in separate repo

📚 Documentation

Complete deployment documentation added:


🔧 Technical Stack

  • Platform: O-RAN SC Near-RT RIC J Release
  • Kubernetes: k3s
  • Monitoring: Prometheus + Grafana
  • Testing: Playwright E2E automation
  • xApps: 5 production-ready applications
  • Container Registry: Local registry (localhost:5000)

📊 Metrics & KPIs

Performance Targets:

  • E2 indication processing: < 10ms
  • Control command latency: < 100ms
  • xApp startup time: < 30s
  • Prometheus scraping: 8080/metrics

Available Metrics:

kpimon_messages_received_total
kpimon_messages_processed_total
kpimon_processing_time_seconds
kpimon_active_subscriptions
kpimon_kpi_value

🚀 Deployment

Prerequisites:

  • Kubernetes cluster (k3s recommended)
  • Helm 3.x
  • O-RAN RIC Platform deployed

Quick Deploy:

# Clone with submodules
git clone --recurse-submodules https://github.com/thc1006/oran-ric-platform.git
cd oran-ric-platform

# Deploy xApps
sudo bash scripts/redeploy-xapps-with-metrics.sh

# Deploy E2 Simulator (from submodule)
cd simulator/e2-simulator
kubectl apply -f deploy/deployment.yaml

⚠️ Breaking Changes

  1. E2 Simulator Location: Now requires submodule initialization

    git submodule update --init --recursive
  2. Directory Structure: simulator/e2-simulator is now a git submodule


🙏 Credits

Author: 蔡秀吉 (thc1006)

Related Projects:


📝 Full Changelog

See CHANGELOG.md for detailed changes.

Commits in this release:

  • 9d2c0d8 - refactor: Extract E2 Node to separate repo and clean up mono-repo
  • 2f0e21c - docs: 添加完整的部署與故障排除文檔
  • 0b5f96e - feat: 添加 Prometheus 監控與 Grafana 自動化測試基礎設施
  • f6aaa56 - feat: 為所有 xApps 添加 HTTP endpoints 並實作 E2 Simulator