Ansible(二)如何在多台主机上批量执行任务

Ansible(二)如何在多台主机上批量执行任务,第1张

Ansible批量执行任务有两种方式 adhoc 和 playbook ,当执行简单的命令时,可以使用 adhoc ,当执行复杂的命令,涉及多个模块/条件等时,建议使用 playbook

ansible 的底层是 python ,但是我们在使用 ansible 的时候不需要写 python 脚本,而是直接调用模块即可。

模块是由红帽官方或者其他合作伙伴或开发爱好者开发好的脚本,我们可以通过调用模块,来执行对应的命令。

ansible-doc -l

ansible-doc ping

ansible" host-pattern" -m "module" -a"module argument" -i "inventroy-path"

playbook 是一个 yaml 格式的文件,后缀名为 .yml 或者 .yaml

在一个 playbook 文件中,可以包含多个 play

一个 play 就是要在指定主机中执行的一系列 *** 作,在一个 play 中可以指定 hosts (在哪些主机上执行)和 tasks (执行哪些命令)

tasks 中可以包含多个 task ,每个 task 就是对一个模块的调用

ansible-playbook webserver.yml -e "user=root"

Playbook通常是幂等的,即同一个playbook,无论运行多少次,最终的结果都是一样的。如果被控主机之前已经进行了更改,那么再次运行playbook的时候不会进行变更。

以下是一个 playbook 的执行结果示例

TASK 的执行结果

最近刚刚接触到RobotFramework,发现这个工具倒是可以满足我的要求,而且可以结合seleniumLibrary,用来做web的自动化测试相当不错。之前我也接触过selenium,不过感觉那个工具更贴近开发人员使用,有了robotFramework之后,感觉这个工具相当强大,而且是贴近测试人员的。之所以说强大,主要是这些测试脚本都可以用文本格式保存(如txt/html等)

==安装篇==

如果有想学的朋友可以自己下载以下文件安装(Google-code里可以找到大部分的安装文件):

这篇文章的内容比较旧了,最新的安装指南请查看 更新篇

python-2.7.1.msi(首先要有python,请选择将Python加入Path)

wxPython2.8-win32-unicode-2.8.11.0-py27.exe(wxPython,必须要的)

robotframework-2.6.0.win32.exe(然后装robot的Framework)

robotframework-ride-0.38.1.win32.exe(robotFramework的IDE,很不错)

robotframework-seleniumlibrary-2.8.win32.exe(seleniumLibrary)

安装成功后

执行[PythonDir]\Scripts\ride.py

看到界面就是安装成功了。

如果需要AutoIt支持就下载下面2个东东。

AutoItLibrary-1.1

pywin32-216.win32-py2.7.exe

==入门篇==

安装完成了,这个框架可以说是基于keyword的 *** 作,按F5可以看到所有加载的keyword。

首先新增一个project

然后新增suite

然后新增test case,接着在suite层级add library,把selenium library加进来,添加后按F5检验是否添加成功,如图

OK,继续在suite的setting里设置suite启动和结束的keyword,即Start Selenium Server和Stop Selenium Server,他会在运行时帮助我们自动启动seleniumserver。

接下来在test case里添加一个步骤,open browser(一般用selenium做web测试都要用这个方法来打开浏览器),添加后关键字变成蓝色表示找到关键字了,否则可能是拼写错误或者没有加载相应的library。红色表示有一个必选参数要给定输入值,具体参数可以看F5里的keyword说明。

输入参数,第二个参数默认是firefox,不过我没装,就用ie吧。

以上只是一个简单的例子,没有详细说明每个步骤的 *** 作,只是初步介绍。后续再详细介绍。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11541072.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存