内容简介
1.microservice
概述:简要介绍 microservice 架构下的挑战 2.持续部署实践:这里会提到『Build
Pipeline as Code』,『Infrastructure as Code』等概念。 3.持续部署了之后呢?
这里会介绍 CD 结合团队的敏捷开发流程的实践经验。
microservices概述
部署方面带来的挑战
-10 mins Unit Test -2 hours Acceptance Test -15 mins package -20 mins deployment
-1 mins Unit Test -1 mins Integration test -5 mins package -5 mins deployment
持续部署方面的实践
-使用 Docker 构建和发布 service -采用 Docker Compose 运行测试 -使用 Docker 进行部署
-Build pipe line as Code -Infrastructure as Code(base on AWS) -共享构建脚本
使用 Docker 构建和发布 service
-使用 Docker 构建 service,service 已 docker image 的方式发布 -将 docker 发布到 docker registry -从 docker registry 上 pull docker image 进行部署
使用 Docker Compose 运行测试
Build pipeline as Code
Infrastructure as Code
-可部署的机器 -机器的 IP 和网络配置 -设备硬件监控服务(GPU,Memory 等) -负载均衡(Load Balancer) -DNS -AutoScaling (services 自动伸缩服务) -Splunk 日志收集 -NewRelic 性能监控 -Sentry.io 和 PagerDuty 报警
-采用 AWS 云服务进行部署 -采用 AWS CloudFormation 描述和创建资源 -将对资源操作的脚本进行 source control
-对资源的描述和操作应该在 git 中 -在所有环境中采用相同的部署流程 -使用 ssh 等手动操作资源的方式,只能用于测试环境和做一些 debug。
共享构建脚本
1.运行测试 2.构建发布 docker image 3.部署
1.test.sh 2.docker-tag.sh 3.deploy




