Ansibe基础操作
CentOS安装ansible
yum instsll -y epel-release
yum install -y ansibleAnsible配置文件
/etc/ansible/ansible.cfg # 主配置文件
/etc/ansible/hosts # Inventoryvi /etc/ansible/hosts
[dbserver]
192.168.1.2 ansible_sudo_pass='123456' # ansibble_sudo_pass是当连接的用户不是root时,要使用sudo命令的密码
[webserver]
192.168.1.3 ansible_ssh_user=admin ansible_ssh_pass='12345' # 默认remote_user=root,在ansible.cfg中可以修改
192.168.1.4常见模块
command Ansible的默认模块,可以运行远程权限范围所有的shell命令,不支持变量和管理符。
command Ansible的默认模块,可以运行远程权限范围所有的shell命令,不支持变量和管理符。cron 计划任务
cron 计划任务user 用户账号管理
user 用户账号管理group 用户组管理
group 用户组管理copy 复制文件
copy 复制文件file 设置文件属性
file 设置文件属性ping 测试指定主机是否能连接
ping 测试指定主机是否能连接service 管理服务运行状态
service 管理服务运行状态shell 在远程主机上运行命令,可以使用管道符或变量等复杂命令
shell 在远程主机上运行命令,可以使用管道符或变量等复杂命令在Ansible中,-a 选项和 shell 模块都可以用于在目标主机上执行命令,但它们有一些区别。
-a 选项和 shell 模块都可以用于在目标主机上执行命令,但它们有一些区别。script 将本地服务复制到运程主机上运行
script 将本地服务复制到运程主机上运行yum 安装程序
yum 安装程序setup 收集远程主机的信息,如操作系统版本,IP地址等
setup 收集远程主机的信息,如操作系统版本,IP地址等远程用户非root,使用sudo/su执行
ansible 1.9之前的操作
ansilbe 1.9之后的版本使用become替代了sudo/su
Ansible playbook
通过playbook 使用yum删除和安装软件
安装软件包
删除软件包
运行 playbook
主机信息可以写到/etc/ansible/hosts和用-i参数单独引用的区别
最后更新于