什么是devops?
首先看下DevOps的定义:DevOps(英文Development和Operations的组合)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合 。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作 。
对于DevOps的提出已经很多年,其主要的推动仍来自两个方面:1. 业务和需求驱动下,推动敏捷方法论,敏捷下需要更加短周期,更快的发布和交付 。2. 技术和运维部门需要衔接,在PaaS和容器技术发展下,进一步推动这部分陷阱的自动化 。虽然是三方交融地方为DevOps的内容,但是可以看到DevOps本身更多的是要解决两大类协同和自动化的问题,其一是开发部门和QA协同,其二是开发部门和运维的协同 。
1. 第一个问题的解决:已有的持续集成方法论2. 第二个问题的解决:当前由云平台,微服务架构,容器技术发展推动的自动化发布和监控运维把上面思路理清楚后,对于DevOps要做或需要解决的事情也就更加明确的 。1. 实现软件和硬件基础设施(云平台资源)的对接(自动部署,动态扩展)-PaaS,Docker2. 实现不同环境间的自动迁移 - 持续集成 自动化迁移3. 能够满足更加高频率的发布节奏,单次发布更加快速 - 持续集成4. 能将QA和QC部分检验和审查工作自动衔接到发布和交付过程 - 自动化测试,自动化监控要做好DevOps基于上面的分析就可以从持续集成和PaaS平台融合两方面来谈DevOps和持续集成对于持续集成我前面已经专门有文章谈到过,这个没有提DevOps概念的时候也在做持续集成,通过持续集成真正实现了版本和配置管理,单元测试,自动构建,环境迁移和配置修改,集成顺序规划这些关键内容 。
比如我们常说的一个工具组合:Jenkins,Maven,Ant , Junit,SubVersion。为了更好持续异地协同开发,以及后续和公有云PaaS融合,版本库可以转到GitLab或GitHub上面 。在持续集成里面我们经常会谈一个重点,即业务系统是基于组件化架构的,即各个组件可以独立管理和部署,组件之间通过服务接口松耦合 。
只有这样才能将后续增量发布影响降低到最小 。这个概念现在转到微服务架构里面来进一步实现 。DevOps和PaaS平台融合对于和PaaS平台融合是DevOps的第二个内容,我们希望的就是我们在测试态测试和验证完成的部署包能够自动的交付和迁移到生产环境的托管资源中 。在这里就涉及到PaaS平台提供的自动部署和托管,资源动态管理等方面的能力 。
【DevOps怎么读,devops怎么读】比较重的:Cloudfoundry或Cloudify能提供完整的解决方案 。比较轻的:我们可以基于Docker容器技术 Kubernetes Puppets来实现自动化和动态资源管理 。在PaaS平台下,由于部署和资源的动态管理都被PaaS平台完全接管,因此更加需要整个平台必须提供完整的日志管理,传统IT网管,中间件资源池监控,包括到APM层性能分析的完整解决方案和工具集 。
推荐阅读
- 5道适合节后吃的家常菜,后入操
- 呼吧软件怎么使用,呼死您软件怎么购买
- 诺基亚5228,诺基亚5228怎么样啊
- huawei p30,华为p30摩天轮事件是怎么回事
- 一加手机怎么样,一加手机怎么样有用过的吗
- 联想z6 青春版,联想Z6青春版的性能怎么样?
- 用了半年的坚果手机出现问题怎么办
- 请问忘了锁屏的图案密码怎么办
- spPn85J n85
- a908n a908