《devops最终版本-潘野.pdf》由会员分享,可在线阅读,更多相关《devops最终版本-潘野.pdf(18页珍藏版)》请在三个皮匠报告上搜索。
1、中小团队的云原生DevOps之路潘 野承办方:主办方:l10 年DevOps/SRE/基础架构经验l曾就职于动视暴雪,eBay,SAPl擅长云平台基础架构,公有云,私有云,混合云l从2018年开始专注于云原生领域AboutAbout MeMe1.DevOps的四个组成部分2.云原生与DevOps的关系3.案例详解OutlineOutline1.DevOps就是Ops做自动化2.DevOps就是懂运维的开发3.DevOps就是SRE4.DevOps就是CI/CDDevOpsDevOps误区误区1.大规模运行和管理您的基础设施及开发流程2.加快软件开发与交付的速度3.消除开发团队与运维团队之间的壁
2、垒DevOpsDevOps职责职责1.开发人员无需关心基础架构,专注于代码功能开发2.运维人员从各种琐碎的手工配置中解脱出来,专注于基础架构的自动化,软件交付的自动化3.通过DevOps的工具,开发人员与运维人员共同关注线上问题,能快速的定位与修复线上的bug良好的良好的DevOpsDevOps评判标准评判标准1.云原生技术有利于各组织在公有云、私有云和混合云等新型动态环境中,构建和运行可弹性扩展的应用。云原生的代表技术包括容器、服务网格、微服务、不可变基础设施和声明式 API。2.这些技术能够构建容错性好、易于管理和便于观察的松耦合系统。结合可靠的自动化手段,云原生技术使工程师能够轻松地对系
3、统作出频繁和可预测的重大变更。3.云原生计算基金会(CNCF)致力于培育和维护一个厂商中立的开源生态系统,来推广云原生技术。我们通过将最前沿的模式民主化,让这些创新为大众所用。4.Ref:https:/ 传统传统 DevOpsDevOps vs vs 云原生云原生 DevOpsDevOps基础架构自动化应用生命周期管理日志监控报警追踪效能指标Infra as code基于 GitOps,不再依赖运维工程师按需分配资源,避免浪费摆脱开火车的开发模式提供灵活多变的 CI/CD 流水线测试通过即可上线通过prometheus,helm等工具将监控,报警与应用绑定开发为自己的应用负责DevOps 为监
4、控体系负责四大指标提升研发效率PXE/云厂商 API+Puppet/SaltShell 脚本依赖运维工程师开发模式-开火车模式运维模式-夜班部署运维配监控,开发看日志Everyone care or No one careDevOpsDevOps的四个组成的四个组成案例一 如何管理微服务中的数据库l 业务中会使用到多种数据库,每种数据库特点不一样l 不同的云,启动数据库方式不一样l 每一个微服务都需要一个数据库l 不同的环境,数据生命周期不一样l 数据库数量指数级别增长,脚本式管理挑战巨大Kubernetes Operatorl Kubernetes Operator是将运维人员的操作代码化,
5、同时利用Kubernetes强大的抽象来管理大规模的软件应用。l Operator使用了Kubernetes的自定义资源(CustomResourceDefinition)扩展API机制l Operator基于Kubernetes的以下两个部分组成:l CustomResourceDefinition:对象的状态定义l Controller:监视 CR 类型并采取特定于应用的操作,确保当前状态与该资源的理想状态相符多种数据库l 常见的非关系数据库l Redisl MongoDBl Elasticsearchl 常见的关系型数据库l MySQLl PostgreSQLl 常见的队列服务l Kaf
6、kal RabbitMQl Nats分配数据库l 为了提高资源利用率,多数情况下几个微服务会共享一个数据库服务器l 将过程式管理变成对象化管理l 数据库需求配置化,与应用打包在一个helm chart中l 不同环境,数据生命周期不一样l 测试环境 测试时候清空l 准生产环境 数据保留l 生产环境 数据保留且备份管理数据库l 图形化数据库查询工具对开发人员来说非常重要l 从安全角度出发,避免开发人员获取到数据库的用户名密码,而用本地查询工具直接连接数据库;同时也比较容易做数据库操作审计。l 使用vault这样的第三方工具来管理密码l确定DevOps体系有效性1.Deployment frequency2.Lead time for changesl通过DevOps的体系提升研发效率1.Change failure rate2.Mean time to restore service案例二 四个关键指标https:/ 谢 聆 听承办方:主办方: