DevOps的道法术器

Posted 敏捷道法术

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DevOps的道法术器相关的知识,希望对你有一定的参考价值。

Devops 的好处与价值

代码的提交直接触发:消除等待时间,快速反馈

每个变化对应一个交付管道:使问题定位和调试变得简单

全开发流程高效自动化:稳定,快速,交付结果可预测

持续进行自动化回归测试:提升交付质量

设施共享并按需提供:资源利用最大化

DevOps的文化(道)

精益思想:优化价值流,消除浪费,拉动式生产,持续改进

系统思维: 从业务概念到技术实现的系统端对端视角,破除开发与运维之间的界限

关注流程: 在整个开发生命周期一直检查产品和工作流转的速度,从而更有效地将业务概念实现为工作服务(working service)

增强反馈环: 对于变更的结果快速反馈,通过反馈才能更快了解系统

持续实践学习: 上述要点的达成正是持续改进与反馈环正确应用的体现


DevOps的原则方法(法)

  1. 去除“完成”这个词,服务是永不停止的,它们一直在运行并应该得到持续关注

  2. 将运维需求与功能需求一样视为一等公民,使运维方能够及早发现需求影响

  3. 将工作流程可视化,使所有人对全局有了解,瓶颈自然显现

  4. 协同匹配价值流,这样才能理解系统全局并发现浪费

  5. 将信息流变为产品流,以降低信息传递中的歧义并澄清人员间必须的交流

  6. 将相关数据组合起来形成有意义的指标,让组织中不同利益相关者都能意识到

  7. 通过将变更关联到相应指标并将它们图形化来提升对变更的认知

  8. 有目的地妆点办公室墙,使每个人都感觉到自己是整个系统的一分子

  9. 去中心化管控,让产品的开发者和运维者就责任达成一致(例如:开发者负责代码的正常运行,运维负责平台的正常运行)

  10. 举行内部小型会议,大家可以在会上就已经完成和可以完成的事项达成一致,会上也鼓励大家就变更发表自己的意见

  11. 强制在运维的帮助下对所有开发提交的服务进行部署验证检查,以避免在运维时才出现问题

  12. 释放你的猴子(译者注:Chaos Monkey,是Netflix一套用来故意把服务器搞下线的软件,可以测试云环境的恢复能力),这能使你对自己的服务承诺产生巨大的自信

  13. 在问题发生时不仅在管内(pipeline flow)流转(要引入更多的变更和工作),而是关注在找到瓶颈发生的真正原因并加以修正

  14. 保证对客户透明,在出现问题时勇于担当,在问题解决后保持警惕,客户自然有理由心满意足

  15. 在团队和日常工作流以外建立良好关系,例如通过“Guess the Admin”游戏或与公司内不同的人一起共进午餐

某海外大型金融保险企业的DevOps实践

开放透明的办公环境;

Lync TV在线视频把远程团队链接在一起;

随处可写写画画的白板墙;
年度FedEx创新大赛(24小时连续编程的黑客马拉松);

DevOps协会每月例会,分享最佳实践;

极客论坛每月例会,分享最新技术最佳实践和在失败中学到的经验教训;

团队每两周一次的”周五修补日”,减少技术债务;

用20%时间处理技术债和鼓励大胆创新;
定期的敏捷和DevOps成熟度评估;

人员方面:

Amazon的每个工程师都可以完全独立地编写代码,测试代码,版本管理,部署上线,服务监测等任务 无论敏捷还是DevOps,T型技能都是团队要着力打造的。在实施初期和过渡阶段,需要建立有效的流程,保证软件开发、运维和质量保证三个部门之间有效地沟通和协作。

DevOps的流程(术)

开发流程-

Before DevOps:

After=>

DevOps的道法术器


开发策略-

Before DevOps

DevOps的道法术器


After=>


DevOps的工具 (器

版本控制&协作开发:GitHub、GitLab、BitBucket、SubVersion、Coding、Bazaar

自动化构建和测试:Apache Ant、Maven 、Selenium、PyUnit、QUnit、JMeter、Gradle、phpUnit

持续集成&交付:Jenkins、Capistrano、BuildBot、Fabric、Tinderbox、Travis CI、flow.ci Continuum、LuntBuild、CruiseControl、Integrity、Gump、Go

容器平台: Docker、Rocket、Ubuntu(LXC)、第三方厂商如(AWS/阿里云)

配置管理:Chef、Puppet、CFengine、Bash、Rudder、Powershell、RunDeck、Saltstack、Ansible

微服务平台:OpenShift、Cloud Foundry、Kubernetes、Mesosphere

服务开通:Puppet、Docker Swarm、Vagrant、Powershell、OpenStack Heat

日志管理:Logstash、CollectD、StatsD

监控,警告&分析:Nagios、Ganglia、Sensu、zabbix、ICINGA、Graphite、Kibana

某海外大型金融保险企业的DevOps工具链:



参考文章:

http://www.infoq.com/cn/articles/devops-not-legend

http://www.csdn.net/article/2015-10-17/2825939



以上是关于DevOps的道法术器的主要内容,如果未能解决你的问题,请参考以下文章

Reactor 3快速上手——响应式Spring的道法术器

异步Mongo驱动的性能测试——响应式Spring的道法术器

(19)Reactor Processors——响应式Spring的道法术器

响应式流——响应式Spring的道法术器

什么是响应式编程——响应式Spring的道法术器

Spring WebFlux快速上手——响应式Spring的道法术器