常用自动化运维工具---Ansible

Ansible 特点:基于Python开发,无需客户端、轻量级、配置语言采用YAML。

ansible优点:无需安装客户端,更轻量级,可以很轻松的是实现分布式扩展,更强的远程命令执行操作。

ansible里面包含了Connection Plugins(连接插件:用来连接被管理端,虽然ansible是使用ssh连接到各个主机的名单时它还支持其他的连接方法,所以是需要有连接插件的)、Core modules(核心模块:Ansible本身而言是模块化的,实现的各种操作依赖于各种模块)、Custom Modules(自定义模块:当核心模块完成不了某种任务之后,可以通过自定义模块去扩展)、Plugins(插件)、Playbooks(剧本:通过配置文件定义一些任务,将这个配置文件下发到客户端,然后客户端可以自己执行)、Host Inventory(主机清单:主机清单中描述了被管理的客户端)

ansible的工作原理:

ansible通过远程连接的插件连接到远程被管理的主机,具体执行哪些任务就使用到哪些模块,将这个模块定义到playbooks中,通过主机清单去了解被管理端的主机有哪些,然后执行playbooks里面的操作。

ansible的安装:

在控制端用yum方式安装Ansible

1.新增epel-release第三方套件来源。

$ sudo yum install -y epel-release

如下图所示

2.安装 Ansible。

$ sudo yum install -y ansible

如下图所示,

安装完毕!

3.安装Python并配置ssh无秘登录安装Python并配置ssh无秘登录

1.在所有节点上执行

[root@centos ~]#yum install -y openssh-server python

如下图所示:

2.在控制节点上执行:

ssh-keygen

如下图所示

3.在控制节点上执行:

[root@centos ~]# ssh-copy-id 192.168.1.101(被控制节点的ip地址)

如下图所示

修改配置文件ansible.cfg并配置被控制主机

[root@localhost ~]# vi /etc/ansible/ansible.cfg

之后,敲一下键盘上的i键,进入insert模式,可以对文档进行编辑,
[defaults]
inventory = /etc/ansible/hosts
forks = 5
become = root
remote_port  = 22
host_key_checking = False
timeout = 10
log_path = /var/log/ansible.log
private_key_file = /root/.ssh/id_rsa

如下图所示

做完上述操作之后,输入键盘上的Esc键,接着输入:,再输入wq键,写入并保存。

[root@localhost ~]#vi  /etc/ansible/hosts

[webservers]
192.168.1.101  被控制端的ip地址

测试各个远程主机组webservers连通性

[root@localhost ~]# ansible webservers -m ping

如下图所示

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值