ansible的基本学习-安装和简单的配置测试
Posted experimental-believer
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ansible的基本学习-安装和简单的配置测试相关的知识,希望对你有一定的参考价值。
当下有许多的运维自动化工具(配置管理),例如:ansible、saltstack、puppet、fabric等
ansible 是一种集成it系统的配置管理、应用部署、执行特定任务的开源平台,是ansibleworks公司名下的项目,该公司由cobbler及func的作者与2012年创立成立
ansible 基于python语言实现,由paramiko 和 pyYAML 两个关键模块构建
ansible 特点:
部署简单,只需要主控端部署 ansible环境,被控端无需任何操作
默认使用ssh(secure shell) 协议对设备进行管理
主从集中化管理
配置简单、功能强大、扩展性强。
支持 API 及自定义模块,可通过python 轻松扩展。
通过playbooks 来定制强大的配置、管理状态。
对云平台、大数据都有很好的支持。
提供一个功能强大、操作性强的web管理界面和REST API 接口——AWX平台。
ansible与saltstack:
最大的区别是ansible无需在被监控主机部署任何客户端代理,默认通过ssh通道进行远程命令执行或者下发配置。
相同点是都具有功能强大、灵活的系统管理、状态配置,都是用YAML格式来描述配置,两者提供丰富的模板及 API, 对云计算平台、大数据都有很好的支持。
安装ansible
yum -y install ansible
配置ansible
ansible目录在 /etc/ansible/
ansible.cfg hosts roles三个配置文件
ansible.cfg 是 Ansible 工具的配置文件;
hosts 用来配置被管理的机器;
roles 是一个目录,playbook 将使用它
SSH密钥认证
ssh-keygen -t rsa
ssh-copy-id root@192.168.181.22 #@后面可跟IP地址也可以跟主机名字
添加被管理主机
vim /etc/ansible/hosts
[Client]
angent_host_ip_1
angent_host_ip_2
测试ansible
ansible Client -m ping ## 操作 Client 组 ( all 为操作 hosts 文件中所有主机 ),
-m 指定执行 ping 模块,下面是返回结果
192.168.12.129 | SUCCESS => {
"changed": false,
"ping": "pong"
}
# -i 指定 hosts 文件位置
# -u username 指定 SSH 连接的用户名
# -k 指定远程用户密码
# -f 指定并发数
# -s 如需要 root 权限执行时使用 ( 连接用户不是 root 时 )
# -K -s 时,-K 输入 root 密码
以上是关于ansible的基本学习-安装和简单的配置测试的主要内容,如果未能解决你的问题,请参考以下文章