2019年必学的DevOps流行工具

这一生的挚爱 提交于 2019-12-13 13:16:43

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

   DevOps是一种利用云创新、自动化和制度化来从根本上加速传统编程的改进模式。像Git、Docker、Selenium、Jenkins、Ansible等都属于2019年必学的DevOps工具。

Git

Git是一种分布式版本管制系统,没有中央服务器,每个人的电脑就是一个完整的版本库。工作的时候不用联网,因为版本都在自己的电脑上。协同方法是这样的:比如说自己在电脑上改了文件A,其它人也在电脑上改了文件A,这时候,你们之间只需要把各自的修改推送给对方,这样就可以互相看到对方的修改了,Git是免费的,开源的。

Docker

Docker是一个开源的应用容器引擎,让开发都可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的linux或windos机器上。也可以实现虚拟化,容器是完全使用沙箱机制的,相互之间不会有任何的接口。Docker使用客户端到服务端,也就是C/S架构模式,使用远程API来管理和创建Docker容器。Docker容器通过Docker镜像来创建,容器与镜像的关系类似于面向对象编程中的对象与类。

Selenium

Selenium是一种开源的基于Web UI的自动化测试架构。Selenium是用于测试Web应用程序用户界面的常用框架。它是一款用于运行端到端功能测试的超强工具。你可以使用多个编程语言编写测试,并且Selenium能够在一个或多个浏览器中执行这些测试。

Jenkins

Jenkins是一个Java编写的开源的自动集成服务器,Jenkins可以将流水线的不同阶段都实现自动化,Jenkins可以用于持续集成。为了给你一个直观的感受,想象一下有这样一个场景:Jenkins服务器将我们应用程序划分成不同的阶段,使其在所有条件部署好之前可以提前开放给测试和QA,Jenkins服务器贯穿整个CI/CD管道,它可以自动化整个CI/CD过程。这意味着,设计人员无论在什么地方提交代码变更,该代码都将实时开放给测试服务器或QA组,他们可以即刻对这些变化提出建议。

Ansible

Ansible是一款开源的自动化运维工具,它可以用于配置管理和应用程序部署。Ansible是控制由许多机器组成的集群自动化基础。Ansible抛弃了客户端到服务器的模式。Ansible是基于模块工作的,本身它并没有批量部署的能力,真正具有批量部署能力的是Ansible所运行的模块。Ansible只是提供一种框架。

Puppet

Puppet是一种Linux、Unix和windons平台的集中配置管理系统。它使用自有的puppet描述语言,可以管理配置文件、用户、Cron任务、软件包、系统服务等。puppet把这些系统实体称之为资源,Puppet的设计目标是简化对这些资源的管理以及妥善处理资源间的依赖关系。Puppet采用C/S星状的结构,所有的客户端和一个或几个服务器交互,每个客户端周期的也就是默认半个小时向服务器发送请求,获得其最新的配置信息保证和该信息同步。

Nagios

Nagios是一款开源的免费网络监视工具,能够有效的监控windos、Linux、unix的主机状态、交换机路由器等网络设备和打印机等。在系统或服务状态异常的时候,他会发出邮件或短信报警,第一时间通知网站的运维人员,在状态恢复后发出邮件或短信通知。

Chef

Chef是IT自动化平台,可以让客户来创建、部署、变更和管理基础设施运行时的环境和应用。chef是与平台无关的,可以部署到云端、本地或作为虚拟机。chef也被称为部署自动化工具和DevOps使能者,它是一款可以为不同规模的企业提供许多集成选项的产品。客户用chef来创建、管理和部署应用栈、祼服务器以及VM。chef平台主要基于客户和服务器,受管理的系统运行Chef客户端,chef客户端再利用Http RestFull API连接chef服务器。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!