什么是DevOps?

阅读文章: https://www.zhihu.com/question/58702398

同时推荐csdn的这篇:https://blog.csdn.net/weixin_BJ050106/article/details/126319867

 定义:DevOps(Development和Operations)是一种重视“  软件开发人员(Dev) ”  和“  IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例

           最初的意义是“开发运维一体化”,现在演变成“端到端”的意思。

 

 为什么会产生DevOps的概念

           因为公司的规模发展到一定程度(比如bat这种规模),需要的技术人员很多。如果一个较大的项目中或者项目后期,几乎所有的方向都会涉及。项目变得越来越难以维护,出现一个bug将会形成 牵一发而动全身的局面。除此之外,软件开发的模型从“瀑布模型”进化到”敏捷开发”,虽然有敏捷方法将项目分成各个小块,降低模块之间的耦合性,但是Scrum敏捷方法在运维方面失去了敏捷实践的速度,于是出现了DevOps。DevOps是通过解决开发人员和运维工程师之间缺乏协作的问题来实现项目维护更容易,提高实践速度的目的。个人认为,这在另一方面也可以反映出,社会的需求推动生产技术的进步。

 

DevOps工具 

           既然要实现开发和运维工程师之间的更好协作的目标,就出现了用于运维一体化的工具。

复制代码
DevOps 三大支柱,即人(People)、流程(Process)和平台(Platform)。

DevOps = 人 + 流程 + 平台

人 + 流程 = 文化

流程 + 平台 = 工具

平台 + 人 = 赋能
复制代码

            DevOps中包括版本控制&协作开发工具、自动化构建和测试工具、持续集成&交付工具、部署工具、维护工具、监控,警告&分析工具等。(以下是搜到的工具整理)

复制代码
版本控制&协作开发:GitHub、GitLab、BitBucket、SubVersion、Coding、Bazaar
自动化构建和测试:Apache Ant、Maven 、Selenium、PyUnit、QUnit、JMeter、Gradle、PHPUnit、Nexus
持续集成&交付: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
代码管理(SCM):GitHub、GitLab、BitBucket、SubVersion
构建工具:Ant、Gradle、maven
自动部署:Capistrano、CodeDeploy
持续集成(CI):Bamboo、Hudson、Jenkins
配置管理:Ansible、Chef、Puppet、SaltStack、ScriptRock GuardRail
容器:Docker、LXC、第三方厂商如AWS
编排:Kubernetes、Core、Apache Mesos、DC/OS
服务注册与发现:Zookeeper、etcd、Consul
脚本语言:python、ruby、shell
日志管理:ELK、Logentries
系统监控:Datadog、Graphite、Icinga、Nagios
性能监控:AppDynamics、New Relic、Splunk
压力测试:JMeter、Blaze Meter、loader.io
预警:PagerDuty、pingdom、厂商自带如AWS SNS
HTTP加速器:Varnish
消息总线:ActiveMQ、SQS
应用服务器:Tomcat、JBoss
Web服务器:Apache、Nginx、IIS
数据库:MySQL、Oracle、PostgreSQL等关系型数据库;cassandra、mongoDB、redis等NoSQL数据库
项目管理(PM):Jira、Asana、Taiga、Trello、Basecamp、Pivotal Tracker

原文链接:https://blog.csdn.net/weixin_BJ050106/article/details/126319867
复制代码

 

 

菜鸟学习新词

LNMP:LNMP是指一组通常一起使用来运行动态网站或者服务器的自由软件名称首字母缩写。L指Linux,N指Nginx,M一般指MySQL(数据库),也可以指MariaDB(MySQL的一个分支),P一般指PHP(超文本预处理器),也可以指Perl(一种计算机程序语言)或Python。

单体应用架构:单体应用架构(All In One)是指,我们把所有服务或者功能都封装在一个应用中。

全栈工程师(full stack):全栈工程师是指掌握多种技能,胜任前端与后端,能利用多种技能独立完成产品的人。

demo:Demo是demonstration的缩写。Demo的中文含意为“示范”、“展示”、“样片”、“样稿”,常被用来称呼具有示范或展示功能及意味的事物。 Demo源码可以理解为某种计算机语言的示例代码,是可以在相应的编译环境下直接运行的源代码,通常Demo的作用就是Demo源码开发者引导其他程序员进行二次开发所提供的模板程序代码。

分布式架构:“分工协作,专人做专事”  https://baijiahao.baidu.com/s?id=1680411397585700717&wfr=spider&for=pc

窗口期:某个趋势变明显之前的一段时期。

微服务(架构):软件架构风格,小型功能区块,模块化,语言无关。

“公司发展到bat这种体量”:bat是百度、腾讯、阿里巴巴这三家中国互联网公司。

技术栈:IT术语,某项工作或某个职位需要掌握的一系列技能组合的统称。

中台服务:https://zhuanlan.zhihu.com/p/75223466

 

本文作者:VivianMarie

本文链接:https://www.cnblogs.com/Vivianmaire/p/17207234.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   VivianMarie  阅读(35)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
💬
评论
📌
收藏
💗
关注
👍
推荐
🚀
回顶
收起
  1. 1 404 not found REOL
404 not found - REOL
00:00 / 00:00
An audio error has occurred.