关于亚数信息科技(上海)有限公司
亚数信息科技(上海)有限公司是一个提供托管式持续集成、测试和使用 GitHub 和 Bitbucket 等存储库进行部署的平台。该公司在从应用程序创建一直到向最终用户交付软件的整个过程中为开发人员和运营团队提供帮助,并在整个过程中实现完全的自动化和完全的控制。平台有助于消除实现重复性持续集成/持续交付和工作流中的阻碍和难题,这样,开发人员便能够专注于交付高质量代码。
亚数信息科技(上海)有限公司平台由两部分组成:
. Continuous Integration (CI):让开发人员能够构建并测试提交的每个代码存储库或拉取请求并获取实时反馈。
.Continuous Delivery (CD) 管道:实现应用程序流程 (从源代码控制到生产) 自动化。借助上述部署管道,开发人员能够将容器化应用程序轻松部署到容器服务,比如,Amazon EC2 Container Service (Amazon ECS)。
.还可与常用工具和服务(例如,构建/测试工具、源代码控制提供商、Docker 注册表、云提供商和容器服务)集成。
面临的挑战
. 该公司使用 Docker 容器,采用微服务架构在 Amazon EC2 上构建其 CICD 平台,他们通过定制的集群管理工具管理这一平台。
. 最初的解决方案采用硬编码服务发现解决方案,难于扩展和管理配置。
. 工程团队需要花费 60%-80% 的时间维护基础设施和编排容器,这占用了实现和交付平台功能的时间。
. 管理具有大量日志聚合器及 Elasticsearch 的监控基础设施也是一项耗时的工作
. 亚数信息科技(上海)有限公司评估了 Apache Mesos 和 Kubernetes 等其他开源集群管理解决方案,但发现这些解决方案仍需要工程团队花费大量时间运营和扩展集群。
为什么选择亚马逊云科技
. 开始使用 Amazon ECS,这是一种可扩展的容器管理服务,可提供集群管理和容器编排功能。
. 每一个微服务均通过 Elastic Load Balancing 负载均衡器定义为一个 ECS service;Amazon ECS 服务计划程序会管理 ECS 集群中的每个微服务的多个副本。
. 借助 Amazon ECS 和 Amazon CloudWatch,工程团队能够花费最少的精力来处理所有基础设施日志记录。
. Docker 镜像存储在 Amazon EC2 Container Registry (Amazon ECR) 中,后者是一个完全托管的 Docker 容器注册表,它使 Docker 容器映像的存储、管理和部署变得轻而易举。
效益
. 借助 Amazon ECS,您无需安装软件和运行服务器,这可减少大规模运行容器的整体管理需求,并帮助缩短上市时间。
. 现在,工程团队只需要花费 20% 的时间维护基础设施,有了更多的时间来专注于实现新功能。
. 借助 Amazon ECS,亚数信息科技(上海)有限公司能够更迅速地向其客户交付功能,从而增加了部署频率(从每周一次到每日多次)。
. 借助适用于 Amazon ECR 的 AWS Identity Access Management (IAM) 策略,该公司又增加了一个安全保护层,以确保只有获得批准的人员才能在生产集群中推送和拉取生产镜像。