亚马逊AWS官方博客
在中国区部署 SIMPHERA Architecture(自动驾驶仿真)
SIMPHERA 介绍
SIMPHERA,是 dSPACE 基于云的一种可扩展的软件解决方案,可使用户轻松快速地执行自动驾驶功能的计算密集型验证。包含了从创建、导入和集成,完成部署和调试,到集群测试和数据测试整个工作流程。
SIMPHERA 可部署在公有云,私有云,混合云及本地服务器上,可支持大规模集群测试,覆盖数以万计的测试场景。通过轻量化网页版操作界面无需软件的安装,随时随地完成测试部署和监控,方便跨地域团队同时进行仿真,并且提供开放的 API 接口支持 CI/CD 开发流程及自动化测试。
架构简介
SIMPHERA 部署于亚马逊云的参考架构(见下图),主要模块是基于 Amazon Elastic Kubernetes Service(Amazon EKS) 集群。集群包含两个自动伸缩组:第一组保留用于 SIMPHERA 服务和其他辅助第三方服务(如 Keycloak、nginx 等);第二组用于执行被测系统测试的执行器。
SIMPHERA 项目的数据存储在 Amazon RDS for PostgreSQL 实例中,包括了测试环境、测试信号、场景、车辆等信息列表数据。同时,Keycloak 将 SIMPHERA 用户存储在单独的 Amazon RDS for PostgreSQL 实例中。
License 服务部署在 Amazon EC2 实例上,执行者需要 License 才能执行测试和模拟,需要单独的 License 服务器用来获取许可证。
项目文件和测试结果存储在非公共 Amazon S3 存储桶中。 对于 License 服务器的初始设置,需要在管理服务器和许可证服务器之间交换多个文件。 这些文件通过非公共 S3 存储桶进行交换,可以从管理服务器和 License 服务器读取和写入该存储桶。
涉及服务
项目开源地址:https://github.com/dspace-group/simphera-reference-architecture-aws
目前该项目在亚马逊云的安装及配置主要基于 Global Region,以下是涉及的服务列表,以及在中国区进行安装需要调整的配置。
服务 | 描述 | 是否必须? | 配置是否调整? |
Amazon Elastic Kubernetes Service | 运行 SIMPHERA 的 EKS 集群 | 是 | 是 |
Amazon Virtual Private Cloud | SIMPHERA VPC 虚拟网络 | 是 | |
Elastic Load Balancing | SIMPHERA 使用网络负载均衡 NLB | 是 | |
Amazon EC2 Auto Scaling | SIMPHERA 自动扩展计算节点 | 是 | |
Amazon RDS for PostgreSQL | 项目及授权数据存储在 PostgreSQL 实例 | 是 | 是 |
Amazon Simple Storage Service | 永久二进制工作文件存储于 S3 中 | 是 | 是 |
Amazon Elastic File System | 临时二进制工作文件存储于 EFS 中 | 是 | |
AWS Key Management Service (AWS KMS) | 默认情况下启用 EKS 加密 | ||
Amazon Elastic Compute Cloud | 可选,您可以在 EC2 实例上部署 dSPACE 许可证服务器 | 是 | |
Amazon CloudWatch | 将指标和容器日志记录到 CloudWatch。同时可以在 EKS 中部署 dSPACE 监控模块 |
环境准备
- 需准备一个亚马逊云科技中国区账号
- 创建一个有以上列举服务权限的 IAM USER,并创建 Access Key 和 Secret Key
- 创建一台 EC2,并进行用户的 AK、SK 配置
- 创建一个非公开的 S3 桶,并配置创建 IAM policy 使 IAM USER 有权限访问该 S3 桶
- 在 EC2 上下载并安装 Terraform(IT 基础架构自动化编排工具,可以用代码的方式构建、更改和管理基础设施)
项目安装
- 基于 Secrets Manager 创建 PostgreSql Database Secret
- 克隆 Simphera 项目源码到 EC2 并进行初始化配置
- 基于源码开始调整 Terraform 配置(中国区需要基于下列图调整对应配置)
- PostgreSql 地址替换
- 项目初始化
- 开始部署
- 部署成功,查看 EKS 集群
- 至此,我们即可访问 EKS 集群,并且配置完对应的 License 后,就可使用 Simphera 进行自动驾驶的仿真测试了
总结
SIMPHERA 是一个业内先进的工业级的车辆和环境模型- AICM、自动化测试,支持仿真并行测试的基于云的分布式 Web 平台,用户在部署完成后都可以在云中或您公司的服务器集群上直接访问。
SIMPHERA 在亚马逊云科技 Global Region 的部署相对比较成熟。根据本文的介绍,可以帮助您快速的在亚马逊云科技中国区进行快速的部署,建立分布式团队并实现高效的流程,实现全球化的平台共享。