Dify Enterprise Edition 部署指南(AWS)
为确保顺利部署 Dify 企业版,请按照以下基础设施与配置说明进行操作。一、基础设施要求
需要权限的 AWS 服务:
- S3
- ECR
支持的认证方式:
Dify 支持以下两种方式访问 AWS 服务:- Access Key 模式(AK/SK):通过环境变量提供凭证
- IRSA 模式:IAM Roles for Service Accounts,实现更安全、精细的权限控制
二、Access Key 模式配置
步骤 1:准备凭证
创建一个只具备 S3 和 ECR 权限的 IAM 用户,获取其 Access Key 和 Secret Key。步骤 2:创建 Kubernetes Secret
步骤 3:修改 values.yaml
步骤 4:配置 dify_plugin_daemon 数据库
步骤 5:升级 Helm Release
三、IRSA 模式配置
由于企业环境对 Access Key 管控严格,我们推荐使用 AWS Pod Identity (IRSA) 方式来访问资源。✅ 优势
- 遵循 AWS 最佳安全实践
- 可对插件执行环境进行精细化权限管理
🪄 快速配置(推荐)
步骤 1:创建 IAM Role 和 Service Account
-
前置条件
- 可用的 AWS 区域以及 EKS 集群
- 已存在的 S3 Bucket 用于 Dify 文件存储
- 本地已安装并配置好 kubectl,可访问目标 EKS 集群
- 本地已安装 AWS CLI 并配置好凭证
🚀 方案 A:运行一键脚本
‼️ 一键脚本仅用于演示和测试,请根据自己的安全要求编写生产脚本。可向 Dify FDE 团队获取此演示脚本。🔨 方案 B:手动配置
- 为 EKS 集群启用 IAM OIDC Provider 请参考 AWS 官方文档,将 EKS 集群与 OIDC 身份提供者关联。此步骤是使用 IRSA 的前提。
-
创建 IAM Policy
-
创建关联 Policy 的 IAM Role
-
为 IAM Role 创建 ServiceAccount
步骤 2:设置环境变量
根据版本发布说明配置所需变量(如S3_REGION、S3_BUCKET_NAME 等)。
步骤 3:修改 values.yaml
步骤 4:添加插件数据库配置
步骤 5:升级 Helm Release
步骤 6:给应用自建的 ServiceAccount 增加 S3 权限
ServiceAccount 名称:dify-plugin-connector-sa
./irsa_one_click.sh 创建了 s3 读写的角色 ,这个 arn 会出现在脚本执行的末尾。
步骤7:重启 Dify Deamon Pod
注意事项
- ❌ 不支持 Redis Cluster 模式
- 🌐 EKS 节点需能访问互联网或配置 NAT Gateway