阿里云
为了无法计算的价值
打开APP
阿里云APP内打开
学习中心> 自动化运维工具Ansible实战> 正文

自动化运维工具Ansible实战

9课时 |
12319人已学 |
免费
课程介绍

Ansible是一款自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。

运维工程师日常工作解析及Ansible全面介绍

 

内容介绍

一、运维软件Ansible

二、运维自动化发展历程及技术应用

三、云计算运维工程师核心职能

四、运维工程师职能划分

五、自动化运维应用场景

六、企业实际应用场景分析

七、程序发布

八、常用自动化运维工具

在生产生活中,如开发网站,包括有电商的程序,电商程序会有一些业务发生变化,它里面程序会有更新,这时需另外的辅助软件,如一些可直接实现这些自动化运维的工具,其中著名且流行的软件就是ansible,接下来将介绍ansible:

一、运维软件Ansible

1、运维自动化发展历程及技术应用

2、Ansible命令使用

3、Ansible常用模块详解

4、YAML语法简介

5、Ansible playbook基础

6、Playbook变量、tags、handlers使用

7、Playbook模板templates

8、Playbook条件判断when

9、Playbook字典with _ items

10、Ansible Roles

ansible命令像linux中一条条命令,单条命令虽然能解决问题,但是很不灵活也不自动化,如需定期的做备份,每次敲命令去备份会很麻烦,一般来讲都写成脚本,在ansible中的解决方案就叫playbook翻译叫剧本。

像电影电视剧中演员按照剧本表演一样,要实现复杂任务,单条命令输出费时费力,就可以借助playbook,相当于把多个命令集中在playbook里形成了一个相对能解决复杂任务的工具,但过于复杂一点项目,一个playbook也搞不定,因此有最终的解决方案Role,翻译叫角色,

一个playbook搞不定了,那就写多个playbook,并保证各个playbook之间是有一定的关系,互相调用,那是用角色来实现。

学习顺序就是刚开始先了解基本命令,然后想实现稍微复杂的操作就编playbook、编角色。

这中间会用到很多相关的技术,如ansible的各种模块,在实现功能的时候是基于模块来开发的某个功能,他是用一个模块来实现另外一个功能。比方说我要实现文件复制,他就会开发一个和文件相关的一个模块,专门解决文件复制等等。

也看到条件判断、变量、标签等等、也有属于自己的语言YAML,接下来逐步学习。总的简单理解Ansible是单条命令 ,playbook综合命令为脚本,Roles来调用各个脚本完成复杂任务。

二、运维自动化发展历程及技术应用

了解一下面试中可能问的大问题: 

IAAS(基础设施即服务)、PAAS(平台即服务)、SAAS(软件即服务)三者的区别:

在本地部署时,硬件与软件都是自己部署,像是在家吃饭,要买原材料,要生火,要桌子椅子来吃饭,但现阶段大部分公司没有能力或精力放到辅助IT上,所以就产生IAAS(基础设施即服务),就像吃饭买成品带回家,生火一热放上桌子就吃,若还嫌麻烦可以直接叫外卖PAAS(平台即服务),也不用热直接上桌吃,此时觉得成本依然很高,可以直接去店里吃SAAS(软件即服务),这时桌子都省了。

这样很大程度上节省了维护精力,

现大部分软件公司都采用SAAS,如手机上的app,就像计算机的发展,都从硬件向软件发展,省去很大精力可以投入到软件的研发中。

如下图:

IAAS:购买了硬件架构(如虚拟机),操作系统和软件自己开发。

PAAS:不仅购买了硬件架构,也包括了操作系统,可以直接开发软件。

SAAS:全套购买(基本上各大手机软件都是如此)不需要自己开发。

三、云计算运维工程师核心职能

1、平台架构组建:负责参与并审核架构设计的合理性和可运维性,搭建运维平台技术架构,通过开源解决方案,以确保在产品发布之后能高效稳定的运行,保障并不断提升服务的可用性,确保用户数据安全,提升用户体验。在正式上岗时企业里需要用到的服务器都是需要自己搭建的。

  1. 日常运营保障:负责用运维技术或者运维平台确保产品可以高效的发布上线,负责保障产品7*24H稳定运行,在此期间对出现的各种问题可以快速定位并解决;在日常工作中不断优化系统架构和部署的合理性,以提升系统服务的稳定性。

维护公司自研的系统,像电商网站,就需要更迭版本,维护平时的稳定运行。如各种公司开发的软件,需要日常维护升级。

3、效率优化:用自动化的工具/平台提升软件在研发生命周期中的工程效率。不断优化系统架构、提升部署效率、优化资源利用率支持产品的不断迭代,需要不断的进行架构优化调整。以确保整个产品能够在功能不断丰富和复杂的条件下,同时保持高可用性。

四、运维工程师职能划分

如图:一一一一一一一一一一一一一一一一一一一一一一一一一一一