在生产环境中运行
在生产环境中运行 API7 网关需要仔细规划并遵循最佳实践,以确保稳定性、安全性和性能。本指南提供上线前检查清单和部署建议。
上线前检查清单
在部署到生产环境之前,请验证以下内容:
- 硬件规格:确保网关节点满足建议的硬件要求。
- 网络拓扑:确认你的网络架构已正确配置以实现高可用性和低延迟。
- 全面启用 TLS:为所有通信通道启用 TLS,包括网关与客户端之间以及网关与 上游之间的通信。
- 备份策略:为 PostgreSQL 数据库实施定期备份和灾难恢复计划。
- 监控设置:与 Prometheus 和 Grafana 集成以进行实时性能监控。
- 日志管理:配置集中式日志,以支持审计和故障排查。
- 安全加固:检查并应用安全最佳实践,以保护网关和 API。
硬件选型指南
对于典型的生产环境,建议采用以下硬件规格:
- 控制面节点:2 个及以上 CPU 核心、4 GB 及以上内存、20 GB 及以上磁盘空间。
- 数据面节点:4 个及以上 CPU 核心、8 GB 及以上内存、20 GB 及以上磁盘空间。
- PostgreSQL 数据库:根据配置数量和存储的历史数据规划容量。
网络拓扑建议
- 高可用:部署至少两个控制面节点和多个数据面节点。
- 负载均衡器:在数据面节点前面使用高性能负载均衡器。
- 延迟:将控制面和数据面节点部署在同一区域,以最大限度降低延迟。
监控和日志
将 API7 网关与现有监控和日志系统集成,以实现可观测性。
- Prometheus:从 CP 和 DP 节点收集指标以进行性能监控。
- Grafana:创建仪表板以可视化 QPS、延迟和错误率等指标。
- 集中式日志:将日志发送到 ELK 或 Splunk 等系统进行分析和审计。
安全加固
使用以下安全措施保护你的 API7 网关部署:
- RBAC:使用基于角色的访问控制来管理控制面中的用户权限。
- Admin API 访问控制:将 Admin API 的访问来源限制为特定 IP 地址。
- 密钥管理:使用密钥管理器(例如,HashiCorp Vault、AWS Secrets Manager)安全地存储和管理敏感信息。
- WAF:集成 Web 应用防火墙(WAF),以防御常见的 Web 攻击。