35
分分分分AWS 分分分分

Distributed system cd in aws

  • Upload
    fei-he

  • View
    124

  • Download
    9

Embed Size (px)

DESCRIPTION

Practices of CD in AWS.

Citation preview

Page 1: Distributed system cd in aws

分布式系统AWS 持续部署

Page 2: Distributed system cd in aws

何飞ThoughtWorks 高级咨询师,项目技术负责人

多年企业级应用以及互联网开发经验。专注于分布式系统架构设计,持续交付, DevOps 以及云计算

Page 3: Distributed system cd in aws

http://www.myfun.com/

Page 4: Distributed system cd in aws

技术栈Java / Guice / Sitebricks / Spring

Ruby / Resque

Python

Jetty/Unicorn/Nginx

Solr/Zookeeper

Mongo/Redis

Page 5: Distributed system cd in aws

数字

46 EC2 Instances

30 分钟

8 个组件

1 条命令

50%

0 宕机时间

Page 6: Distributed system cd in aws

为什么做不到持续部署

Page 7: Distributed system cd in aws

原因架构设计没有对于部署的充分考虑

部署人员没有真正理解架构

Page 8: Distributed system cd in aws

策略尽早就开始部署

部署团队和开发团队一起部署,或者直接由开发团队部署

Page 9: Distributed system cd in aws

为什么要选择 AWS

省钱

省事

省心

Page 10: Distributed system cd in aws
Page 11: Distributed system cd in aws

Artifacts

War + Tomcat/Jetty

Package(Rpm/Deb)

AMI

Docker

Page 12: Distributed system cd in aws

Platform AMI + Rpm

Page 13: Distributed system cd in aws

架构图

Page 14: Distributed system cd in aws

部署图

Page 15: Distributed system cd in aws
Page 16: Distributed system cd in aws

AWS CloudFormation gives developers and systems administrators an easy way to create and manage a collection of related AWS resources, provisioning and updating them in an orderly and predictable fashion

Page 17: Distributed system cd in aws
Page 18: Distributed system cd in aws

orchestration

Page 19: Distributed system cd in aws

友情提示环境一致

应用程序和基础架构职责分离

版本管理

Page 20: Distributed system cd in aws

Resilience Testing

Page 21: Distributed system cd in aws
Page 22: Distributed system cd in aws

Configuration as Service

Page 23: Distributed system cd in aws
Page 24: Distributed system cd in aws

etcd + etcdctl

Page 25: Distributed system cd in aws

A / B 环境

Page 26: Distributed system cd in aws

版本不兼容

Page 27: Distributed system cd in aws

语义化版本Major :不兼容修改

Minor :新功能,但向后兼容

Patch : build 版本

Page 28: Distributed system cd in aws

没开发完的功能怎么办feature branch

feature toggle

Page 29: Distributed system cd in aws

监控 报警

Page 30: Distributed system cd in aws

安全

Page 31: Distributed system cd in aws

VPC

ACL

security Group

Bastion

Page 32: Distributed system cd in aws

谁来部署

Page 33: Distributed system cd in aws

人人都要做部署

Page 35: Distributed system cd in aws

谢谢