Ansible自动运维学习笔记

       Ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。Ansible架构相对比较简单,仅需通过SSH连接客户机执行任务即可。

  Ansible是基于 paramiko 开发的,并且基于模块化工作,本身没有批量部署的能力。真正具有批量部署的是ansible所运行的模块,ansible只是提供一种框架。ansible不需要在远程主机上安装client/agents,因为它们是基于ssh来和远程主机通讯的。ansible目前已经已经被红帽官方收购,是自动化运维工具中大家认可度最高的,并且上手容易,学习简单。是每位运维工程师必须掌握的技能之一。

第一章Ansible安装配置

第一节安装所需的软件包

可以用redhat或者centos,配置源后,安装以下软件包。

实验环境:在vmware虚拟机上进行试验机的安装,我这是使用了1台控制端命名console,4台集群服务器:web1,web2,nod1,nod2四台。

在console端,配置了域名地址转换,具体修改/etc/hosts文件,如下:

这样就可以免输入IP直接访问对应终端。ssh web1=ssh 192.168.248.132

之后配置ansible的hosts文件也很方便。

第二节配置ansible

Ansible主配置文件生效顺序:

一般是在用户目录建立配置文件 “~/ansible.cfg”
主要配置信息:

同一目录生成主机清单文件hosts

测试首先要进入,ansible配置的文件夹,用户目录下的ansible,然后进行主机连接,使用模块进行测试。图中是使用ping模块进行连接测试成功提示success,失败是提示错误并告知原因。

多台或多组同时操作,可以用逗号隔开。

小结:
1.配置文件生效顺序,首先ANSIBLE_CONFIG变量定义的配置文件> 其次当前目录下./ansible.cfg> 然后,用户家目录下~/ansible.cfg > 最后,/etc/ansible/ansible.cfg
2.一般在用户home下建立ansible文件夹,然后建立ansible.cfg配置文件和服务器hosts文件。
3.使用ansible时,进入到配置文件所在文件夹内进行命令行使用


4.使用命令:格式ansible空格[设备IP,或域名,设备组名,多个多台用英文逗号隔开] -m 调用模块。

第二章ansible ad-hoc命令行管理

莫哦人模块为命令行模块,例如:

Ansible如何获得帮助

统计多少个模块

有多少关于Yum的模块,用命令ansible-doc -l | grep yum

想看yum模块,使用方法

第三章 ansible常用模块应用案例

第一节shell模块

测试command使用shell管道报错:

shell模块是启动shell去执行命令,但不能使用交互式的命令,例如:vim,top等

 使用shell模块就不会错

在/tmp文件夹下进行文件创建123.txt,chdir=/tmp相当于在命令行先进行了cd /tmp 然后进行touch创建文件。ansible web1 -m shell -a "chdir=/tmp touch 123.txt"

实验:学习creates的用法。

先确认有没有密钥文件,去客户机查看密钥命令:ls ~/.ssh/

然后使用ansible进行远程生成密钥,ansible web1 -m shell -a "ssh-keygen -f ~/.ssh/id_rsa -N ' ' creates=~/.ssh/id_rsa",判断如果没有文件就执行生成id_rsa。有了就取消生成id_rsa。

第一次因没有该文件执行成功,第二次因为有该文件选择跳过。

学习removes用法

先压缩一个文件a.zip使用 xftp传到nod1和nod2的家目录下.给nod1安装unzip软件yum install -y unzip,然后在console进行实验。ansible nod1,nod2 -m shell -a "unzip a.zip removes=/bin/unzip"

结果,有符合条件的nod1解压了,不符合nod2的跳过了。

先建立一个安装httpd并开启服务的脚本,然后进行批量安装并执行:ansible web1,web2 -m script -a "./web.sh"直接成功。

查看结果,查看是否安装rpm -q httpd,查看服务是否已启动systemctl status httpd

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值