服务器版本信息:

Centos6.9

[root@db02 ~]# uname -a
Linux db02 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

ansible软件介绍

ansible是一个基于Python开发的自动化运维工具!

其功能实现基于SSH远程连接服务!

ansible可以实现批量系统配置、批量软件部署、批量文件拷贝、批量运行命令等功能

ansible官方资料

官网:http://www.ansible.com/home

官网文档:http://docs.ansible.com/ansible/index.html

ansible软件特点

  •   不需要单独安装客户端,基于系统自带的sshd服务,sshd就相当于ansible的客户端
  •   不需要服务端
  •   依靠大量的模块实现批量管理
  •   配置文件/etc/snsible/ansible.cfg,不用配置

ansible输出结果的颜色

  • 输出内容显示绿色:表示执行成功,当没有任何改变
  • 输出内容显示黄色:表示执行成功,但对被管理主机进行了改变
  • 输出内容显示红色:表示执行失败

ansible参数

命令参数

参数说明

-m   MODULE_NAME

--module-name=MODULE_NAME

module name to execute (default=command)

相应名称的模块被执行(默认模块为 command );

-m后边是模块的名字

-a   MODULE_ARGS

--args=MODULE_ARGS

module arguments

模块参数信息;

-a后面是要执行的命令;也可以写一个 ip ,针对一台机器来执行命令

-C,--check

don’t make any changes; instead, try to predict some of the changes that may occur

不做任何改变;反而,只是尝试预言一些可能出现的改变

--syntax-check

perform a syntax check on the playbook, but do not execute it 执行语法检查在剧本上,但是并不执行剧本

ansible部署

第一步、首先部署ssh+key免密码登陆方式

ssh+key部署:

http://www.cnblogs.com/2lianzhang/p/8058661.html

第二步、被管理端安装libselinux

yum install libselinux-python -y

第三步、服务端安装ansible,配置文件编写

yum install ansible -y

ansible的重要目录

/etc/ansible/hosts                  --- 定义anisble软件可以管理的主机信息

/usr/bin/ansible                     --- ansible执行命令

/usr/bin/ansible-playboot      --- ansible执行剧本命令

/etc/ansible/hosts                 配置文件编写举例

在配置文件中添加被管理主机的ip模块

[name]
172.16.1.21
172.16.1.11
172.16.1.1
在/etc/ansible/host文件最后添加[]下面接想要管理的主机ip,[]中起任意名字

测试控制这三台主机

命令语法:

ansible  name -m shell -a "hostname"
ansible    ---- 命令
name       ---- 主机模块名称
-m         ---- 指定模块的参数
shell      --- 模块名称(不同模块不同名称)
-a         --- 指定利用模块执行的动作参数
"hostname" ---- 在被控主机上批量执行的操作 
命令格式

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-24
  • 2022-01-28
  • 2021-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-04-26
  • 2022-12-23
  • 2021-10-14
  • 2021-06-13
相关资源
相似解决方案