Azure
这些文档处于测试阶段,仍在完善中。如果您在使用这些说明时遇到问题,请与我们联系。
本文件面向企业,提供在 Microsoft Azure 上部署 Portkey 软件的全面指导,旨在满足大规模、关键任务应用的需求。它包括组件规模、 高可用性、 灾难恢复以及与监控系统集成的具体建议。
组件和尺寸建议
组件:AI 网关
部署: 使用 Helm Charts 在您的 Kubernetes 集群中作为 Docker 容器部署。
实例类型: Azure 标准 B2ms 实例,至少具有 4GiB 内存和两个 vCPU。
高可用性: 在多个区域部署以确保高可靠性。
组件:日志存储(可选)
选项: Azure Cosmos DB,Azure Blob Storage。
大小: 每个日志文档的大小约为10kb(未压缩)。
组件:缓存(提示、配置和虚拟键)
选项: Azure Redis 缓存或自托管 Redis。
部署: 在与 Portkey Gateway 相同的 VNet 中部署。
部署步骤
前提条件
确保已安装以下工具:
Docker
Kubectl
Helm (v3 或更高版本)
步骤 1:克隆包含 Helm Chart 的 Portkey 仓库
第2步:更新Helm的values.yaml
修改Helm图表目录中的values.yaml文件,以包含Docker注册表凭据和必要的环境变量。您可以在./helm-chart/helm/enterprise/values.yaml找到示例文件。
镜像凭据配置
Portkey团队将分享您的镜像凭据。
环境变量配置
可以从秘密存储中获取
日志存储注意事项
LOG_STORE可以是:
s3,用于Azure Blob Storagemongo,用于Azure Cosmos DB
如果LOG_STORE为mongo,则需要以下环境变量:
如果LOG_STORE为s3,则以下值为必填项:
您需要从各自的提供商生成访问密钥和秘密密钥。
缓存注意事项
如果CACHE_STORE设置为redis,则在集群中还会部署一个Redis实例。如果您使用自定义Redis,则留空。以下值为必填项:
REDIS_URL默认为redis://redis:6379,REDIS_TLS_ENABLED默认为false。
分析存储注意事项
此存储托管在Portkey的控制平面中,这些凭据将由Portkey团队共享。
以下是必填项,由Portkey团队共享。
第 3 步:使用 Helm Charts 部署
导航到包含您的 Helm chart 的目录,并运行以下命令以部署应用程序:
此命令将 Helm chart 安装到 portkeyai 命名空间中.
第4步:验证部署
检查您的部署状态,以确保一切正常运行:
步骤 5:端口转发(可选)
要通过互联网访问服务,请使用端口转发:
将 <pod-name> 替换为您的 pod 名称。
卸载部署
如果您需要删除部署,请运行:
此命令将卸载 Helm 发布并清理资源.
网络配置
第一步:允许访问服务
要使服务可以从集群外部访问,请在您的 values.yaml 或 Helm 模板中定义类型为 LoadBalancer 的 Service。指定外部访问所需的端口。
将 <desired_port> 替换为应用程序内部监听的端口号,以便进行外部访问。
第2步:确保出站网络访问
默认情况下,Kubernetes 允许完全的出站访问,但如果您的集群有限制出站流量的 NetworkPolicies,请配置它们以允许出站流量。
出站访问的示例 NetworkPolicy:
这允许网关访问托管在您的 VNet 内部和外部的 LLM。它还启用了同步服务与 Portkey 控制平面之间的连接。
第3步:为Portkey控制平面配置入站访问
确保Portkey控制平面可以通过互联网或VNet对等连接访问服务。
通过互联网:
确保LoadBalancer安全组允许指定端口的入站流量。
记录控制平面连接的公共IP/主机名和端口。
通过VNet对等连接:
在您的Azure账户与控制平面的Azure账户之间设置VNet对等连接。需要Portkey团队手动设置。
本指南提供了在Azure上有效部署Portkey所需的步骤和配置,确保高可用性、可扩展性以及与您现有基础设施的集成。
Last updated