云上架构方法
云相关概念
什么是云
- 虚拟化:一台物理机上安装多个操作系统(充分利用资源)
- 云:将海量虚拟化/非虚拟化资源打包到平台统一出售(整合资源,提供服务)
- 云原生:容器化服务(让客户聚焦业务,提供敏捷、快速迭代的业务系统)
部署模式
- 公有云(资源庞大)
- 私有云(可定制化)
- 混合云
服务模式
- 传统IT:全部自己负责
- IaaS:云服务商提供虚拟化及底层
- PaaS:云服务商提供运行环境及底层
- SaaS:云服务商提供全部服务

为什么使用云?
云的优势
- 低风险(1、固资投入少;2、扩容简单,无需提前规划容量)
- 效率高(1、资源规模庞大、多地部署,可以快速获取资源,适应业务的发展;2、运维成本低,用户无需关注底层运维,可以更好聚焦业务)
- 低成本(1、规模采购,价格更低)
上云主要驱动
- 技术驱动:降本增效
- 业务驱动:快速发展新业务、快速迭代更新,提升企业竞争力
- 政策驱动:政策要求企业上云,如《“十三五”国家科技创新计划》
华为云技术设施
华为云架构
- 云核心枢纽(延迟<50ms,国内<30ms)
- 云区域枢纽(延迟<10ms),
- 云边缘枢纽(延迟<5ms),适配工业级别、无人机等对网络要求极高的情况
区域和可用区
- 区域:通过地理划分的资源集合
- 可用区:同一服务区域内,电力和网络互相独立的地理区域
注:可用区内通信往返在0.2ms-0.4ms,跨可用区在1ms-1.2ms
如何选择区域
- 合规
- 客户体验
- 功能
- 价格
如何选择可用区
可用区之间等价
无要求:一个可用区
高可用:两个可用区
注:超过3个可用区,可用性提升有限,复杂度会上升,可用区并非越多越好
架构设计支柱
- 体系安全
- 架构可靠(可用性)
- 性能适用
- 成本合理
- 运维高效
体系安全
- 业务连续不中断
- 系统透明可感知
- 数据保密不扩散
安全设计原则
- 合规
- 木桶效应
- 层次安全性(避免对外防护而对内不设防)
- 风险评估并准备对应预案
架构可靠(可用性)
- 可用性 = (1-故障时间)/服务总时间
- 可用度 = MTBF / (MTBF + MTTR)
MTBF:平均故障间隔时间,是可靠性的体现
MTTR:平均故障修复时间,是可维修性的体现
高可用设计原则

性能适用
- 访问延迟
- 并发能力
要提升性能,需要看具体组件的性能指标,如:计算资源的时延、网络资源的吞吐量、存储资源的IOPS、数据库资源的并发能力等
系统性能设计原则
- 适应业务需求:性能不用极值,超过需求一点点就好
- 了解新技术:新技术一般能带来更好的性能,但相应也会带来风险,需要评估好
- 寻找数据特点、热点,设计合理的缓存
- 为系统实现弹性(满足并发,云上一般采用水平扩展解决)
成本合理
成本优化设计原则
- 持续优化意识:持续关注利用率,随着时间推移进行优化
- 支出意识:明确成本归属,了解业务部门和产品的投入产出比
- 避免浪费:在满足了需求的前提下,选择最经济的方案
运维高效
运维高效设计原则
- 设置监控
- 自动化运维
- 替换大于维修
- 减少底层维护