云原生指的是一个敏捷的工程团队,遵循敏捷的研发原则,使用高度自动化的研发工具,开发基于云基础设施和服务的应用以满足快速变化的客户需求。这些应用采用弹性,可扩展和高可用的架构。这个工程团队通过高效的运维提供这一应用服务,并且根据线上反馈不断地对服务进行迭代改进。
云原生应用的特征
普遍可访问(Universal Availability)–服务可在任何地方从多前端访问。
高可用性(High Availability)–基本服务随时在线。升级扩容服务无中断。单点失败影响范围小。失败触发自动恢复。
高扩展性(Scalability)–服务可以随业务需要随时迅捷线性伸缩。
自动弹性伸缩(Elasticity)–服务可以随业务需要按定义自动伸缩。
可监控(Observability)–可以通过运维工具实时收集健康信息。
安全性(Security)–高度安全,可抵御常规威胁。
可迁移性(Deployable to Different Cloud Suppliers) –基础设施分离。易于迁移到不同的云计算供应商。
快速迭代(Fast Iteration)–服务更新快速频繁。创新速度提高。
演进式设计(Evolutionary Design)–持续改进
云原生的4大支柱
团队与流程
架构
工具
运维
云原生的组织和流程
小团队开发(2-pizza Team)
全栈团队(Full Stack Team)
研发与运维的结合(DevOps)-端到端的责任(End to End Ownership)
去中心化(Decentralization)–下放技术决策权。
敏捷的研发流程(Agile Development)
云原生的架构
云化微服务架构(Micro Service Architecture)–性能专注,系统组成部件高度解耦。独立开发,快速部署,仿真测试,实时运维,资源独立。系统组件化。组件独立化。
基于云基础设施和服务(Based on Cloud Infrastructure and Services)–通过按需自获取或释放的云基础设施(计算,网络,存储)和服务。
分布式云化部署(Distributed Deployment)–服务部署在分布式的云基础设施上。快捷全球上线。
无状态(Stateless)–请求可以由任何服务器处理。单点失败对服务功能无影响。
无本地依赖(Localless)–依赖其它云资源,比如云存储(CloudData Service),云计算资源,基于云的缓存,消息队列等等云服务。
可水平扩展(Horizontal Scalable)–应用性能可以随调整通用性服务器数量得到线性调整。
冗余性(Fault Tolerance)–利用多点部署,负载均衡(ELB)。单节点失败对服务无影响。
服务注册与发现(Service Registration and Discovery)
自动弹性伸缩(Auto Scaling)–服务可以随业务需要按定义自动伸缩。
去中心化(Decentralization)–开放分布式系统。独立数据存储。
云原生的工具
持续集成(Continuous Integration)
依赖与版本管理(Dependency and Version Management)
持续交付流水线(CD Pipeline)
部署和回滚自动化(Automated Deployment and Rollback)
开发者工具网站(Simple developer web portal)
设施即代码(Infrastructure as a Service)
灰度发布(Gray Release)
端到端调试与分析(Full Stack Debugging and Profiling) –distributed tracing
设置管理(Configuration Management)
自助环境获取(Self Serviced Environment Acquisition)
统一标准的服务开发框架(Standardized Service Framework)
测试自动化(Continuous Automated Testing)
A/B测试(A/B Testing)
云原生的运维
服务状态的实时感知(Real time Service Status through Monitoring)--Service and situ
实时报警(Real time Alerting)
基于日志的运维数据采集与处理(Log Based Data Collection and Processing)
运维和业务相关指标的数据仪表盘(Visualized Dashboards of Operational and Business Relevant Metrics)
动态调度(Resource Dynamic Orchestration)–机器效率,资源利用
历史审计(Audit Trail Information)–保存部署历史数据。
可测量的服务SLA (Measurable Service Level Agreement)
快速问题定位(Issue Isolation)
从故障中自动恢复(Automated Recovery from Failure)
工单系统(Ticketing System)–跟踪处理在线系统故障。
生产线探针(Probe in Production)--在线测试
资源记账(Resource Accounting)
更多架构师技术关知识请参考“架构师技术全店资料打包汇总(全)”电子书(32本技术资料打包汇总、详解目录和内容请通过“阅读原文”获取)。
温馨提示:
请识别二维码关注公众号,点击原文链接获取“架构师技术全店资料打包汇总(全)”电子书资料详情。