ansible安装部署和常用命令_2018_lcf

Ansible是一款通过SSH协议管理主机的工具,无须在远程机器上安装客户端。本文介绍了Ansible的安装要求,包括对管理主机(需Python 2.6或2.7)和托管节点(需SSH及Python 2.4以上)的要求。Ansible以其无客户端、模块化、易于上手和广泛使用等优点受到青睐。此外,还详细讲解了Ansible的配置文件、动态主机、命令基础以及如何使用模块进行批量部署和管理。
摘要由CSDN通过智能技术生成

Ansible是批处理管理集群主机的利器,默认通过 SSH 协议管理机器.

安装Ansible之后,不需要启动或运行一个后台进程,或是添加一个数据库.只要在一台电脑(可以是一台笔记本)上安装好,就可以通过这台电脑管理一组远程的机器.在远程被管理的机器上,不需要安装运行任何软件,因此升级Ansible版本不会有太多问题.

对管理主机的要求

目前,只要机器上安装了 Python 2.6 或 Python 2.7 (windows系统不可以做控制主机),都可以运行Ansible.

主机的系统可以是 Red Hat, Debian, CentOS, OS X, BSD的各种版本,等等

对托管节点的要求

通常我们使用 ssh 与托管节点通信,默认使用 sftp.如果 sftp 不可用,可在 ansible.cfg 配置文件中配置成 scp 的方式. 在托管节点上也需要安装 Python 2.4 或以上的版本.如果版本低于 Python 2.5 ,还需要额外安装一个模块:

ansible官网文档帮助:http://www.ansible.com.cn/docs/intro_installation.html#what-will-be-installed

为什么要选择ansible
• 选择一款配置管理软件总的来说,无外乎从以下几点来权衡利弊
– 活跃度(社区活跃度)
– 学习成本
– 使用成本
– 编码诧言
– 性能

– 使用是否广泛

ansible优点
– 是仅需要ssh和Python即可使用

– 无客户端
• ansible功能强大,模块丰富
• 上手容易门槛低
• 基亍 python 开发,做二次开发更容易

• 使用公司比较多,社区活跃

ansible特性
• 模块化设计,调用特定的模块来完成特定任务
• 基亍pythone诧言实现
– paramiko
– PyYAML (半结构化诧言)
– jinja2
• 其模块支持JSON等标准输出格式,可采用任何编程语言重写ansible特性
• 部署简单
• 主从模式工作
• 支持自定义模块
• 支持playbook
• 易亍使用
• 支持多层部署

• 支持异构IT环境

ansible大体执行过程


软件依赖关系
• 对管理主机

– 要求Python 2.6 戒 Python 2.7
– ansible 使用了以下模块,都需要安装
– paramiko
– PyYAML
– Jinja2
– httplib2
– six

软件依赖关系
• 对亍被托管主机

– Ansible默认通过 SSH 协议管理机器
– 被管理主机要开吭 ssh 服务,允许 ansible 主机登彔
– 在托管节点上也需要安装 Python 2.5 戒以上的版本
– 如果托管节点上开吭了SElinux,需要安装libselinux-python

可以挂载centos官网的扩展软件包

yum 扩展源安装简单,自劢解决依赖关系(推荐)
– http://mirror.centos.org/.../.../extras/

– yum install ansible

[root@room9pc01 /]# cat /etc/yum.repos.d/rr.repo   //查看我的yum配置文件,挂载网上源时记得要能上外网
[cs7]
name=cs7
baseurl=ftp://192.168.1.254/centos7/
enabled=1
gpgcheck=0 
[extras]
name=extras
baseurl=http://mirror.centos.org/centos-7/7/extras/x86_64/
enabled=1
gpgcheck=0 

[root@localhost ~]# yum -y install ansible.noarch   /安装

[root@localhost ~]# ansible --version    //安装完成以后验证
ansible 2.4.2.0
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Aug  4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)]

Ansible配置文件查找顺序

– 首先检测 ANSIBLE_CONFIG 变量定义的配置文件
– 其次检查当前目彔下的 ./ansible.cfg 文件   (常用方式)
– 再次检查当前用户家目彔下 ~/ansible.cfg 文件
– 最后检查 /etc/ansible/ansible.cfg 文件

• /etc/ansible/ansible.cfg 默认配置文件路径

• ansible.cfg 配置文件(就两个主要配置文件)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

璐程风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值