如何在亚马逊云科技部署高可用MaxKB知识库应用

亚马逊云开发者 亚马逊云开发者 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

概述

MaxKB是一款基于RAG技术的开源知识库问答系统,支持对接多种大语言模型,广泛应用于智能客服、企业知识库等场景。虽然MaxKB社区版提供了便捷的Docker快速部署方式,但企业在生产环境中需要更高的可靠性、安全性和运维便利性。

本文介绍如何基于亚马逊云科技托管服务构建高可用MaxKB应用架构。方案采用AmazonECS运行容器化应用,配合RDS PostgreSQL(含pgvector扩展)和ElastiCache Valkey提供数据持久化和缓存能力,通过Application Load Balancer实现流量分发和多可用区部署,确保99.9%以上的服务可用性。方案还集成了Secrets Manager进行密钥管理,支持对接Amazon Bedrock模型服务。

本文面向需要在生产环境部署企业级AI知识库的架构师和运维工程师,提供从架构设计、服务配置到部署验证的完整实施指南。

📢限时插播:无需管理基础设施,利用亚马逊技术与生态,快速集成与部署生成式AI模型能力。

✨ 精心设计,旨在引导您深入探索Amazon Bedrock的模型选择与调用、模型自动化评估以及安全围栏(Guardrail)等重要功能。

⏩快快点击进入《多模一站通 —— Amazon Bedrock 上的基础模型初体验》实验构建无限, 探索启程!

方案价值

MaxKB核心能力¹

MaxKB是基于RAG(检索增强生成)技术的开源知识库问答系统,自2024年4月发布以来,已获得19,000+ GitHub Stars,发展为企业级智能体平台。其核心能力包括:

  • 开箱即用的RAG问答引擎:支持多格式文档导入(PDF、Word、Markdown等),自动文档解析、文本分块和向量化处理,答案支持富文本展示(图片、表格、图表等);

  • 多模型灵活对接:基于开源架构,支持对接Amazon Bedrock托管模型及国内外主流大语言模型和Embedding模型服务,兼容标准API接口,可根据业务需求灵活选择和切换;

  • 工作流编排:内置工作流引擎和函数库,支持MCP工具调用,可编排复杂的AI Agent处理流程,实现多步骤任务自动化;

  • 快速集成:提供API接口和零编码嵌入方式,可快速集成到企业现有业务系统或第三方系统,降低企业开发和部署成本。

典型应用场景:智能客服(7×24小时自动问答)、企业知识库(内部知识管理和检索)、智能办公助手等。

亚马逊云科技托管方案的增强价值

MaxKB社区版提供基于Docker Compose的快速部署方式,适合开发测试和小规模应用。但在企业生产环境中,面临单点故障风险、手动运维负担重、安全管理复杂等挑战。本方案基于亚马逊云科技托管服务,提供以下企业级增强能力:

1. 企业级高可用性

  • 多可用区架构、可用性SLA可达99.9%以上:应用层(ECS)、数据库层(RDS Multi-AZ)、缓存层(ElastiCache)均采用跨多可用区部署,RDS主节点故障时60-120秒内自动切换,ALB自动分发流量并剔除异常容器,保障整体架构可达99.9%以上的服务可用性,满足企业级应用要求;

2. 弹性伸缩能力

  • 应用层自动扩缩容:面对业务流量波动的场景需求,ECS可根据资源使用率或请求数量规则自动调整任务数量;

  • 向量查询加速:RDS PostgreSQL + pgvector提供高性能向量检索,db.r8g.16xlarge规格下100并发可达毫秒级响应;

  • 缓存层在线扩展:ElastiCache支持在线添加节点,无需停机即可提升缓存容量

3. 安全与合规

  • 密钥集中管理:Secrets Manager安全存储数据库凭证、API密钥等敏感信息,支持自动轮换,避免硬编码风险

  • 网络隔离:VPC私有子网部署数据库和缓存,仅应用层可访问,公网不可达

  • 细粒度权限控制:IAM角色和Security Group实现最小权限原则

适用场景:本方案特别适合需要在生产环境部署智能客服、企业知识库等AI应用的中大型企业,以及对可用性、安全性、合规性有较高要求的行业客户(如金融、医疗、政务等)。

解决方案概述

本解决方案将MaxKB Docker托管运行在亚马逊云科技容器服务ECS上,并配置Amazon RDS for PostgresSQL和ElastiCache Valkey(兼容Redis),作为MaxKB的外部数据库,实现MaxKB应用的高可用架构。

架构设计

 

  1. 用户通过互联网连接到应用程序,所有请求首先通过 Elastic Load Balancing 服务,确保流量均匀分布并提高系统可用性和容错能力。

  2. 负载均衡器将流量智能分配到 ECS集群 内的多个 Service Frontend 实例,实现请求的高效处理和资源的动态伸缩。ECS集群提供容器化环境,便于部署和管理应用服务。

  3. 应用程序内可以配置LLM模型和Embedding模型,支持访问Bedrock 的模型服务:

  4. Bedrock LLM:提供大型语言模型服务

  5. Bedrock Embedding:提供文本嵌入服务

  6. 系统与 Secrets Management 模块集成,通过 Secrets Manager 安全存储和管理应用所需的密钥、令牌、凭证等敏感信息,确保信息不被硬编码到应用中。

  7. 应用程序连接到 RDS PostgreSQL 数据库服务,PostgreSQL提供了强大的关系型数据库功能;同时在数据库安装了pgvector,使您能够直接在PostgreSQL 数据库中高效地存储、操作和分析向量数据。

  8. 架构引入了Amazon ElastiCache for Valkey 缓存层(兼容Redis 8.0),用于存储频繁访问的数据,减少数据库负载并提高应用响应速度。

亚马逊云科技托管数据库的产品优势

Amazon RDS for PostgresSQL

PostgreSQL 是许多企业开发人员和企业的首选开源关系数据库,为领先的商用和移动应用程序提供助力。Amazon RDS 让用户能够更轻松地在云中设置、操作和扩展 PostgreSQL 部署。借助 Amazon RDS,您可以在几分钟内完成可扩展的 PostgreSQL 部署,不仅经济实惠,而且可以调整硬件容量。Amazon RDS 除了具备托管的优势外,针对知识库应用场景也有明显的优势:

1.跨AZ强一致,保证主备数据一致性

Amazon RDS  Multi-AZ 部署架构在存储层EBS采用物理同步复制机制,主节点写入操作同步到备节点后才返回确认,确保数据零丢失,满足知识库数据完整性要求。

2.自动failover,保证系统可用性

当Amazon RDS 主节点故障时,Multi-AZ支持自动failover到备节点,故障转移时间通常在 60-120 秒内完成,应用程序自动重连,无需人工干预,提供 99.95% 的可用性 SLA。

3.vector向量查询性能高,读性能横向扩展

PostgreSQL 支持 pgvector 扩展,在满足OLTP数据库正常的业务需求之外还可以提供向量存储和高并发检索的能力,满足多模态业务需求,另外RDS只读副本可以进行在线扩展,支持最多 15 个只读副本。在10TB以内,并且有高QPS需求的场景下,性价比优于Elasticsearch和Milvus。

如下是在Amazon RDS for PostgreSQL db.r8g.16xlarge规格下使用VectorDBBench进行100并发线程进行压测,每次压测时长300s,分别在Performance768D1M和Performance768D10M两种数据集下,不同ef_search下的性能表现:

 

ElastiCache for Valkey

Valkey 是由 Linux 基金会支持的开源缓存数据库,保证了vendor的中立性,过去6个月,有50多万次container pull代码,几千个贡献,以及40多家公司的支持。亚马逊云科技作为Valkey的主要贡献之一,ElastiCache for Valkey不仅给客户带来稳定的方案,也能保证Valkey持续的创新。ElastiCache for Valkey的主要优势如下:

性价比提升

  1. 单点处理能力增强,采用IO线程多路复用技术,吞吐量增加72%和P99 耗时降低71%,可以达到1.2M QPS读取性能,用户可以用更少节点数量或者更小机型来支撑同样规模应用。

  2. 托管的ElastiCache for Valkey 8.0优化了内存结构,单节点上可以存储更多的数据(相同数据存储空间占用减少20%)。

客户端兼容性高

  1. 已有客户端访问Valkey,接口和redis 7.2 兼容,jedis、redis-benchmark、rediscluster、K6等。

  2. Valkey-glide作为亚马逊云科技贡献的开源客户端,与python/Java/node.js/golang 多种客户端提供一致能力,支持更好failover以及连接池管理等。

其他增强

  1. Valkey8.0 主从复制效率大幅提升,RDB和复制backlog的双通路实现,可以加快sync速度,单独进程处理RDB复制可以减少对主节点影响。

  2. resharding 重分片期间抗主节点故障能力增强。

  3. 提供slot级别指标,提供更好可观测性。

MaxKB on Amazon解决方案部署指南

部署要求

MaxKB应用部署要求包括:

  • 操作系统:Ubuntu 22.04 / CentOS 7(内核版本要求 ≥ 3.10)

  • CPU/内存:4C/8GB 以上

  • 磁盘空间:100GB

  • PostgrsSQL:17.6版本

  • Redis:8.0版本

在亚马逊云科技部署之前,您需要有一个可访问的亚马逊云科技账户,部署的主要资源包括:

  • Amazon VPC

  • Amazon RDS for postgreSQL

  • Amazon ElastiCache for Valkey

  • Amazon ECS

  • Amazon ALB

CDK部署方式

为了简化高可用架构的部署流程,我们提供了基于Amazon CDK(Cloud Development Kit)的一键部署代码和脚本:通过基础设施即代码(IaC)的方式,能够自动处理资源间的依赖关系,一条命令即可完成VPC、RDS、ElastiCache、ECS、ALB等所有组件的创建和配置,无需手动在控制台操作多个服务,大幅降低部署复杂度和人为错误,显著提高部署成功率和运维效率。

以下部署命令请在Linux环境运行。

1、从github下载MaxKB-on-Amazon部署代码

运行以下命令下载部署代码包:

git clone https://github.com/supinyu/sample-maxkb-on-aws.git

2、安装Docker

sudo yum install docker python3-pip git npm -y

# Configure Docker Components
sudo systemctl enable docker

sudo systemctl start docker

sudo usermod -aG docker $USER

newgrp docker

3、安装aws cdk

sudo npm install -g aws-cdk

4、安装相关的npm包

cd 20251020-hex-cdk

npm install aws-cdk-lib

5、账号信息及部署Region ID导入到环境变量中

export AWS_ACCOUNT_ID=XXXXXXXXXXXX
export AWS_REGION=us-west-2

6、进行CDK部署

cdk bootstrap aws://$AWS_ACCOUNT_ID/$AWS_REGION

cdk deploy HexRagCdkStack --require-approval never

以上部署过程通常需要15-20分钟,CDK会自动完成以下操作:

  • 创建VPC和子网

  • 配置安全组规则

  • 部署RDS PostgreSQL数据库(含pgvector扩展)

  • 部署ElastiCache Valkey集群

  • 创建ECS集群和任务定义

  • 配置ALB负载均衡器

  • 设置Secrets Manager密钥管理

  • 配置自动扩展策略

7、 验证部署

部署完成后,CDK会输出ALB的DNS地址,通过该地址即可访问MaxKB应用:

# 输出示例
RagCdkStack.LoadBalancerDNS = RagCdkStack-ALB-XXXXXXXXXX.us-west-2.elb.amazonaws.com

8、版本更新

如需更新MaxKB版本(比如从maxkb-v2.1.1升级到maxkb-v2.x.x),只需修改Dockerfile中对应的MaxKB镜像版本号,然后重新执行部署命令:

cdk deploy HexRagCdkStack —require-approval never

CDK会自动检测变更并仅更新受影响的资源,实现零停机滚动更新。

MaxKB应用效果

这里我们以一个对话问答助手为例,演示MaxKB的使用效果。

支持Bedrock模型

首先需要添加LLM模型和Embedding模型,MaxKB 支持Bedrock模型,可以在模型配置页面进行添加,具体的操作如下:

1、添加LLM模型

 

2、添加Embedding模型

 

3、知识库创建

接下来,我们创建知识库

 

4、上传需要问答的pdf文档

 

5、创建知识库问答助手

 

在创建对话助手页面,可以配置对话流程,MaxKB具有灵活的流程配置功能。配置完成,用户可以针对对话流程进行调试和发布。

 

对话助手发布之后,我们可以进行相关的问答。

 

在管理界面,我们也可以对相关的数据进行统计监控。

 

总结

本方案通过将MaxKB社区版迁移部署在亚马逊云科技托管服务上,构建了高可用、可扩展的RAG知识库应用,实现了从单机Docker部署向企业级云原生架构的转型,为企业知识管理和智能问答场景提供了完整的技术解决方案。

参考资料

[1] MaxKB on Github:https://github.com/1Panel-dev/MaxKB

[2] MaxKB社区版下载:https://community.fit2cloud.com/#/products/maxkb/downloads

[3] MaxKB离线安装文档:https://maxkb.cn/docs/v2/installation/offline_installtion/

*前述特定亚马逊云科技生成式人工智能相关的服务目前在亚马逊云科技海外区域可用。亚马逊云科技中国区域相关云服务由西云数据和光环新网运营,具体信息以中国区域官网为准。

本篇作者

 

本期最新实验《多模一站通 —— Amazon Bedrock 上的基础模型初体验》

✨ 精心设计,旨在引导您深入探索Amazon Bedrock的模型选择与调用、模型自动化评估以及安全围栏(Guardrail)等重要功能。无需管理基础设施,利用亚马逊技术与生态,快速集成与部署生成式AI模型能力。

⏩️[点击进入实验] 即刻开启 AI 开发之旅构建无限, 探索启程!

...全文

相关推荐

【MATLAB例程】基于APF的多无人机动态路径规划与避障仿真 四无人机协同避碰、动态障碍规避及安全性能分析(含公式)

程序基于多无人机二维运动学模型,采用人工势场法(APF)实现四架无人机在固定与动态障碍环境下的路径规划和协同避碰。绘制无人机运动轨迹、障碍物轨迹、安全净间隙、速度与加速度、航程及到达时间等图像,输出目标到达数量、碰撞统计和安全性能指标。无人机数量、障碍物分布、运动约束及APF算法参数均可自行调整。

MATLAB卡尔曼

《智能之门》配套PPT课件

《智能之门》配套PPT课件

Bryan Ding

chromedriver-win64-156.0.8078.80(Stable).zip

chromedriver-win64-156.0.8078.80(Stable).zip

LCG元

三相并网逆变器虚拟阻抗+统一有源阻尼策略SVPWM+SPWM调制仿真

内容概要:本文档系统梳理了电力电子与新能源并网领域的核心技术与仿真实践,聚焦三相并网逆变器的先进控制策略与调制技术,涵盖虚拟阻抗、统一有源阻尼、SVPWM与SPWM调制、预测电流控制、中点电位平衡、低电压穿越(LVRT)及孤岛检测等关键技术。文档整合了大量基于Matlab/Simulink的高保真仿真模型,涉及三电平ANPC/T型/Z源逆变器、LCL滤波器、虚拟同步发电机(VSG)、下垂控制、构网型变流器等多种主流拓扑与控制架构,并延伸至风光储联合系统、微电网能量管理、弱电网稳定性分析、序阻抗建模与扫频法等复杂应用场景,特别强调SCI论文成果复现与工程化设计实现,具有极强的科研指导性与实践价值。; 适合人群:面向电力电子、电气工程及其自动化等相关专业的研究生、高校科研人员及从事新能源发电、微电网控制、逆变器研发的工程技术人员,要求具备扎实的电路理论、自动控制原理基础及一定的Matlab/Simulink仿真能力。; 使用场景及目标:①支撑高水平学术论文的仿真实验设计与结果验证,尤其是构网型变流器、虚拟同步技术、主动阻尼机制等前沿方向的研究;②用于毕业设计、科研项目中复杂电力电子系统的建模与控制策略开发;③助力工程师掌握从单机逆变器控制到多能互补系统协同运行的全流程仿真技术体系。; 阅读建议:建议结合文档提供的参考文献与仿真资源,采用“由简入繁、循序渐进”的学习路径,先掌握三相并网逆变器PI控制与SVPWM调制等基础模型,再逐步深入VSG并离网切换、多机并联环流抑制、弱电网阻抗交互等高阶课题,注重理论推导、参数设计与仿真调试的深度融合,提升系统级建模与问题分析能力。

程序猿鑫

三相四桥臂电压不对称跌落补偿动态电压恢复器DVR(Simulink仿真实现)

内容概要:本文介绍了一种基于三相四桥臂拓扑结构的动态电压恢复器(DVR),用于补偿电网中由电压不对称跌落引起的电能质量问题。通过Simulink平台构建仿真模型,重点研究了在不平衡负载和电网电压跌落工况下,DVR对负载侧电压的快速补偿能力。系统采用多准PR(Proportional Resonant)并联控制策略,实现对各相电压的独立精确控制,有效抑制负序分量,提升系统在复杂工况下的稳定性和响应性能。仿真结果验证了所提控制方法在电压幅值、相位补偿及波形质量改善方面的有效性,适用于对供电连续性和电能质量要求较高的工业场景。; 适合人群:电力电子、电气工程及其自动化等相关专业的研究生、科研人员及从事电能质量治理的工程技术人员。; 使用场景及目标:①研究动态电压恢复器在电压跌落、三相不平衡等典型电能质量问题中的补偿机制;②掌握三相四桥臂逆变器的建模与多准PR控制策略的设计与实现;③为高精度电能质量调节装置的研发提供理论依据和仿真验证手段。; 阅读建议:建议结合提供的参考文献和说明文档,深入理解控制算法的设计原理,并在Simulink环境中动手复现仿真模型,通过调整故障条件和控制器参数,观察系统动态响应,从而全面掌握DVR的工作特性与优化方法。

大龙不吃小鱼干
评论
收藏 已收藏
分享
返回顶部
亚马逊云开发者
亚马逊云开发者 企业官方账号 企业官方账号
亚马逊云开发者 834 成员 472 内容