1.yum安装

[root@localhost yum.repos.d]# yum -y install ansible

如果安装报错:

[root@localhost yum.repos.d]# yum -y install ansible
已加载插件:fastestmirror, product-id, search-disabled-repos, subscription-managerThis system is not registered with an entitlement server. You can use subscription-manager to register.Loading mirror speeds from cached hostfile* base: mirrors.aliyun.com* extras: mirrors.aliyun.com* updates: mirrors.aliyun.com
没有可用软件包 ansible。
错误:无须任何处理
执行命令:yum -y install epel-release

配置文件

配置文件/etc/ansible/ansible.cfg  主配置文件,配置ansible工作特性(一般无需修改)/etc/ansible/hosts        主机清单(将被管理的主机放到此文件)/etc/ansible/roles/       存放角色的目录程序/usr/bin/ansible          主程序,临时命令执行工具/usr/bin/ansible-doc      查看配置文档,模块功能查看工具/usr/bin/ansible-galaxy   下载/上传优秀代码或Roles模块的官网平台/usr/bin/ansible-playbook 定制自动化任务,编排剧本工具/usr/bin/ansible-pull     远程执行命令的工具/usr/bin/ansible-vault    文件加密工具/usr/bin/ansible-console  基于Console界面与用户交互的执行工具

2.离线安装(内网安装)

2.1 找一台可以上网的机器并且系统版本相同(比如内网和可以上网的机器都是centos 7.5)
   2.2 在可以上网的机器上执行:

[root@localhost ~]# yum -y install  epel-release
[root@localhost ~]# mkdir ansible
[root@localhost ~]# yum -y install --downloadonly --downloaddir=./ansible ansible

2.3 将rpm的ansible包打包压缩并且拷贝需要安装ansible的机器上

2.4 在需要安装ansible的机器上执行:

[root@localhost ~]# mkdir -p /usr/local/ansible
[root@localhost ~]# cd /usr/local/ansible
[root@localhost ansible]# ls
ansible.tar.gz
[root@localhost ansible]# tar -zxvf ansible.tar.gz
ansible/
ansible/python-cffi-1.6.0-5.el7.x86_64.rpm
ansible/python-enum34-1.0.4-1.el7.noarch.rpm
ansible/python-idna-2.4-1.el7.noarch.rpm
ansible/python-jinja2-2.7.2-4.el7.noarch.rpm
ansible/python-markupsafe-0.11-10.el7.x86_64.rpm
ansible/python-paramiko-2.1.1-9.el7.noarch.rpm
ansible/python-babel-0.9.6-8.el7.noarch.rpm
ansible/python-ply-3.4-11.el7.noarch.rpm
ansible/python-pycparser-2.14-1.el7.noarch.rpm
ansible/ansible-2.9.27-1.el7.noarch.rpm
ansible/python2-cryptography-1.7.2-2.el7.x86_64.rpm
ansible/python2-httplib2-0.18.1-3.el7.noarch.rpm
ansible/python2-jmespath-0.9.4-2.el7.noarch.rpm
ansible/sshpass-1.06-2.el7.x86_64.rpm
ansible/python2-pyasn1-0.1.9-7.el7.noarch.rpm
[root@localhost ansible]# ls
ansible  ansible.tar.gz
[root@localhost ansible]# cd ansible/
[root@localhost ansible]# ls
ansible-2.9.27-1.el7.noarch.rpm              python-babel-0.9.6-8.el7.noarch.rpm   python-markupsafe-0.11-10.el7.x86_64.rpm
python2-cryptography-1.7.2-2.el7.x86_64.rpm  python-cffi-1.6.0-5.el7.x86_64.rpm    python-paramiko-2.1.1-9.el7.noarch.rpm
python2-httplib2-0.18.1-3.el7.noarch.rpm     python-enum34-1.0.4-1.el7.noarch.rpm  python-ply-3.4-11.el7.noarch.rpm
python2-jmespath-0.9.4-2.el7.noarch.rpm      python-idna-2.4-1.el7.noarch.rpm      python-pycparser-2.14-1.el7.noarch.rpm
python2-pyasn1-0.1.9-7.el7.noarch.rpm        python-jinja2-2.7.2-4.el7.noarch.rpm  sshpass-1.06-2.el7.x86_64.rpm
[root@localhost ansible]# rpm -ivh *.rpm --force --nodeps
warning: ansible-2.9.27-1.el7.noarch.rpm: Header V4 RSA/SHA256 Signature, key ID 352c64e5: NOKEY
warning: python2-cryptography-1.7.2-2.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...1:python2-pyasn1-0.1.9-7.el7       ################################# [  7%]2:sshpass-1.06-2.el7               ################################# [ 13%]3:python-ply-3.4-11.el7            ################################# [ 20%]4:python-pycparser-2.14-1.el7      ################################# [ 27%]5:python-cffi-1.6.0-5.el7          ################################# [ 33%]6:python-markupsafe-0.11-10.el7    ################################# [ 40%]7:python-idna-2.4-1.el7            ################################# [ 47%]8:python-enum34-1.0.4-1.el7        ################################# [ 53%]9:python2-cryptography-1.7.2-2.el7 ################################# [ 60%]10:python-paramiko-2.1.1-9.el7      ################################# [ 67%]11:python-babel-0.9.6-8.el7         ################################# [ 73%]12:python-jinja2-2.7.2-4.el7        ################################# [ 80%]13:python2-jmespath-0.9.4-2.el7     ################################# [ 87%]14:python2-httplib2-0.18.1-3.el7    ################################# [ 93%]15:ansible-2.9.27-1.el7             ################################# [100%]
[root@localhost ansible]# ansible --version
ansible 2.9.27config file = /etc/ansible/ansible.cfgconfigured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']ansible python module location = /usr/lib/python2.7/site-packages/ansibleexecutable location = /bin/ansiblepython version = 2.7.5 (default, Apr 11 2018, 07:36:10) [GCC 4.8.5 20150623 (Red Hat 4.8.5-28)]

简单使用 

1.将需要管理的机器ip放到/etc/ansible/hosts文件最后面

[root@localhost ~]# tail /etc/ansible/hosts
## db-[99:101]-node.example.com
10.10.10.01
10.10.10.02
10.10.10.03
10.10.10.04
10.10.10.05
10.10.10.06
10.10.10.07
10.10.10.08
10.10.10.09
10.10.10.10

2.设置免密登录

3.简单测试被控制机器是否正常

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

例如在被控机器上执行shell脚本:

[root@localhost ~]# ansible all -m shell -a 'sh /data/test.sh'

ansible启动java包:

[root@localhost ~]# ansible all -m shell -a 'source /etc/profile;nohup sh /data/start.sh'

ansible只在一台机器上执行

[root@localhost ~]# ansible all -m shell -a 'source /etc/profile;nohup sh /data/start.sh'  --limit 10.10.10.02

ansible-playbook用法

[root@localhost roles]# ansible-playbook -C test.yaml-C 只检查yaml语法(大写C),不执行
[root@localhost roles]# cat test.yaml
---
- hosts: allremote_user: roottasks:- name: ls filecommand: ls /tmp- name: mkdir filefile: name=/test state=directory- name: touch test filefile: name=/test/test_file state=touch- name:copy_filecopy: src=/var/log/yum.log dest=/tmp
如果让ansible-playbook的某个模块报错也继续执行需要在模块后面加上|| /bin/true
例如:假如copy模块报错了,我也想它继续执行
---
- hosts: allremote_user: roottasks:- name: ls filecommand: ls /tmp- name: mkdir filefile: name=/test state=directory- name: touch test filefile: name=/test/test_file state=touch- name:copy_filecopy: src=/var/log/yum.log dest=/tmp || /bin/true

安装ansible和简单使用相关推荐

  1. Ansible的简单使用

    ansible相关原理简单介绍: ansible是基于ssh服务.ssh服务一般服务器上都自带了. ansible 所有的工作都依赖于核心模块来完成,这些核心模块都是 ansible 自身携带的,若这 ...

  2. 常见的自动化运维工具介绍及特点、安装ansible

    常见的自动化运维工具介绍及特点.安装ansible 一.什么是自动化运维? 简单来说,自动化运维就是将日常重复性工作按照事先设定好的规则,在一定时间范围内自动化运行,而不需要人为参与. 将周期性.重复 ...

  3. MacBook安装Ansible

    MacBook安装Ansible Ansible介绍 ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet.chef.func.fabric)的优点,实现了批 ...

  4. linux 用root安装mysql数据库_Linux上安装Mysql及简单的使用详解

    1. 安装mysql sudo apt-get update sudo apt-get install mysql-server sudo apt-get install python-mysqldb ...

  5. centos7离线安装ansible

    centos7离线安装ansible: 1.通过在线的centos7将rpm包下载好了,上传到指定服务器. 下载官方repo,rpm -iUvh http://dl.Fedoraproject.org ...

  6. Ubuntu 安装mysql和简单操作

    2019独角兽企业重金招聘Python工程师标准>>> ubuntu上安装mysql非常简单只需要几条命令就可以完成. 1. sudo apt-get install mysql-s ...

  7. asp.Net Core免费开源分布式异常日志收集框架Exceptionless安装配置以及简单使用图文教程...

    最近在学习张善友老师的NanoFabric 框架的时了解到Exceptionless : https://exceptionless.com/ !因此学习了一下这个开源框架!下面对Exceptionl ...

  8. python安装numpy模块-python的numpy模块安装不成功简单解决方法总结

    为了画个图,被numpy这个模块的安装真的折腾疯了!!!一直装不上,花了几个小时,看了网上的很多教程.方法发现总结得不是很全,这里总结一下,防止大家再出现这个问题没有解决方法. Python的魅力之一 ...

  9. mac安装telnet 超简单 复制telnet文件即可

    mac安装telnet 超简单 复制telnet文件即可: telnet 下载链接: https://github.com/cuifeiran/macos-telnet 将telnet可执行文件扔到m ...

最新文章

  1. mysql数据库互联网连接_myeclipse怎么连接mysql数据库?(详细步骤)
  2. 【 Notes 】RFID Preliminary Introduction
  3. ajax常见问题汇总(二)
  4. JPA 2.1实体图–第1部分:命名实体图
  5. linux kernel and user space通信机制,Linux内核空间与用户空间通信机制地研究.doc
  6. Mock Server实践
  7. IDEA—使用技巧总结 [持续更新... ...]
  8. 快乐学习 Ionic Framework+PhoneGap 手册1-5 {IO开关}
  9. 黑洞照片打印是用超级计算机,给黑洞冲洗一张照片,怎么就用了两年时间 | 科技向未来...
  10. face++ 行驶证OCR识别
  11. mysql查询删除的数据历史记录_查询数据库各种历史记录
  12. Ubuntu下vsftpd - 虚拟账户配置
  13. 全球最大湾区|微信大数据:《粤港澳大湾区智慧生活圈报告》
  14. 【原创】基于SSM的医院预约挂号系统(医院预约挂号系统毕设源代码)
  15. 计算机视觉与深度学习基本环境安装
  16. 2022年制冷与空调设备运行操作考试题库模拟考试平台操作
  17. APP开发要么快要么死!
  18. modbus slave和modbus poll使用说明
  19. 如何将java中list格式的数据转换为jason格式
  20. python结合ogr2ogr之地理数据格式转换-1

热门文章

  1. 2015春计算机应用技术基础,《计算机应用技术基础》.doc
  2. 创建Dota游戏中的兵营类(Barrack),创建3个兵营,通过控制台为每个兵营定义兵营名称,并指定该兵营需要创建的士兵人数。
  3. html主题 sublime,sublime之markdown语法高亮和修改主题
  4. 谁说做大客户模式太重?容联云通讯成为SaaS领域另类领先者
  5. shell 脚本的cut使用方法
  6. 零基础学FPGA(三):国产芯片短板—FPGA(为什么选择FPGA)
  7. 多元线性回归模型中的常数项
  8. 英方联合XSKY星辰天合推出基于对象存储的备份解决方案
  9. medoo连接mysql_PHP数据库框架Medoo1.6安装步骤
  10. 杜拉克的有效的管理者研究(1974)-zz