man4ish/omnibioai-hpc-policy-engin

GitHub: man4ish/omnibioai-hpc-policy-engin

OmniBioAI HPC策略引擎是一个计算治理服务,用于在分布式生物信息学和AI工作负载中执行资源配额、访问控制和零信任策略。

Stars: 0 | Forks: 0

# OmniBioAI HPC 策略引擎 `omnibioai-hpc-policy-engine` 是一个面向生产的计算治理与配额执行服务,专为 OmniBioAI 生态系统设计。 它提供: * HPC 感知型授权 * GPU/CPU 配额执行 * 集群分区访问控制 * 计算治理 * 工作负载策略评估 * 零信任执行决策 * 调度器感知型工作负载验证 该服务设计用于跨以下环境运行的分布式生物信息学、AI 和 HPC 工作流程: * 本地基础设施 * Slurm 集群 * DGX 系统 * Kubernetes * 云批处理系统 # 架构角色 该服务**不是**一个身份验证系统。 身份验证与身份管理属于: * `omnibioai-auth` * `omnibioai-iam-client` 授权逻辑属于: * `omnibioai-policy-engine` 本服务具体处理: # 核心职责 HPC 策略引擎评估工作负载是否可以在治理约束内安全执行。 示例: * GPU 访问限制 * CPU 小时配额执行 * DGX 分区授权 * 项目计算预算 * 并发作业限制 * 集群路由策略 * 昂贵工作负载预防 # 决策流程示例 ``` User Request ↓ API Gateway ↓ IAM Authentication ↓ Policy Engine (RBAC/ABAC) ↓ HPC Policy Engine ↓ TES / Scheduler ``` # 功能特性 ## 计算治理 * CPU 配额验证 * GPU 配额验证 * 内存治理 * 并发作业控制 ## HPC 感知型策略 * DGX 分区限制 * Slurm 分区治理 * GPU 角色执行 * 集群特定访问策略 ## 分布式架构 * 基于 FastAPI 的异步 API * Redis 兼容架构 * 可扩展的无状态设计 * 调度器抽象层 ## 零信任执行 每个工作负载请求均被独立评估。 服务之间不存在隐式信任。 # 仓库结构 ``` omnibioai-hpc-policy-engine/ │ ├── app/ │ ├── api/ │ │ ├── routes_policy.py │ │ ├── routes_quota.py │ │ └── deps.py │ │ │ ├── core/ │ │ ├── config.py │ │ ├── gpu.py │ │ ├── policies.py │ │ ├── quota.py │ │ └── scheduler.py │ │ │ ├── db/ │ │ ├── models.py │ │ └── session.py │ │ │ ├── models/ │ │ ├── decision.py │ │ ├── job.py │ │ └── quota.py │ │ │ ├── services/ │ │ ├── quota_service.py │ │ ├── scheduler_service.py │ │ └── usage_service.py │ │ │ └── main.py │ ├── tests/ ├── requirements.txt └── README.md ``` # API 端点 ## 健康检查 ### GET 请求 `/` 返回服务状态。 响应示例: ``` { "service": "omnibioai-hpc-policy-engine", "status": "running" } ``` # 配额 API ## POST `/quota/check` 评估工作负载是否超出计算配额。 ### 请求 ``` { "user_id": "u123", "cpu_hours": 12, "gpu_hours": 2, "gpus": 1 } ``` ### 响应 ``` { "allow": true, "reason": "quota ok", "remaining_cpu_hours": 108, "remaining_gpu_hours": 22 } ``` # 作业评估 API ## POST `/jobs/evaluate` 评估 HPC 特定的执行策略。 ### 请求 ``` { "user_id": "u123", "partition": "dgx-a100", "gpus": 1, "memory_gb": 128 } ``` ### 响应 ``` { "allow": true, "reason": "job approved", "partition": "dgx-a100" } ``` # 策略示例 ## GPU 访问控制 ``` if request.gpus > 0: if "gpu_user" not in roles: deny("GPU access denied") ``` ## DGX 分区执行 ``` if request.partition == "dgx-a100": if "dgx_access" not in roles: deny("DGX partition denied") ``` ## CPU 配额执行 ``` if request.cpu_hours > remaining_cpu: deny("CPU quota exceeded") ``` # 调度器集成 调度器层通过以下方式抽象: ``` app/core/scheduler.py ``` 这为将来的集成提供了可能,例如: * Slurm * Kubernetes * AWS Batch * Azure Batch * PBS/Torque * 自定义 HPC 调度器 # 数据库 当前实现使用 SQLAlchemy。 支持的数据库: * MySQL * MariaDB * PostgreSQL # 环境变量 | 变量 | 描述 | 默认值 | | --------------------- | ---------------- | ---------------------- | | `MYSQL_HOST` | 数据库主机 | `mysql` | | `MYSQL_PORT` | 数据库端口 | `3306` | | `MYSQL_DB` | 数据库名称 | `omnibioai_hpc` | | `MYSQL_USER` | 数据库用户 | `root` | | `MYSQL_PASSWORD` | 数据库密码 | `root` | | `REDIS_URL` | Redis URL | `redis://redis:6379` | | `DEFAULT_CPU_HOURS` | 默认 CPU 配额 | `120` | | `DEFAULT_GPU_HOURS` | 默认 GPU 配额 | `24` | | `MAX_CONCURRENT_JOBS` | 并发作业限制 | `5` | # 安装说明 ## 克隆仓库 ``` git clone git@github.com:man4ish/omnibioai-hpc-policy-engine.git cd omnibioai-hpc-policy-engine ``` ## 安装依赖 ``` pip install -r requirements.txt ``` # 本地运行 ``` uvicorn app.main:app --reload ``` 默认 URL: ``` http://localhost:8000 ``` # Docker 示例 ``` FROM python:3.12-slim WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . CMD ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"] ``` # 未来路线图 ## 计划功能 * Redis 决策缓存 * Redis Pub/Sub 失效 * 调度器遥测集成 * Prometheus 指标 * 成本感知路由 * 项目预算 * 团队配额 * 分布式配额聚合 * 公平份额调度 * GPU 内存治理 * HPC 使用分析 # 生态系统集成 设计用于与以下组件集成: * `omnibioai-auth` * `omnibioai-policy-engine` * `omnibioai-api-gateway` * `omnibioai-security-audit` * `omnibioai-tes` * `omnibioai-workbench` # 安全模型 该服务遵循零信任架构: * 每个请求均被独立评估 * 无隐式调度器信任 * 执行前强制策略执行 * 分布式计算治理 * 集中式执行审计 # 许可证 Apache License 2.0 # OmniBioAI 生态系统 OmniBioAI 是一个模块化、AI 原生的生物信息学平台,专为以下领域设计: * 基因组学 * 转录组学 * 代谢组学 * 多组学 * AI 辅助生物医学分析 * 可扩展的 HPC 工作流 * 分布式科学计算 本服务提供生态系统中的计算治理层。
标签:AV绕过, CPU配额, DGX系统, FastAPI, GPU配额, Redis, Slurm, Streamlit, Yelp, 云批处理, 人工智能, 作业控制, 分布式计算, 子域名突变, 安全策略, 工作负载管理, 异常处理, 提示注入, 提示词设计, 搜索引擎查询, 测试用例, 生物信息学, 用户模式Hook绕过, 策略引擎, 网络安全挑战, 计算治理, 计算资源治理, 访问控制, 请求拦截, 调度策略, 资源配额, 逆向工具, 配额执行, 集群管理, 零信任安全, 高性能计算