Ansible的安装和模块使用(补充)


Ansible的安装和模块使用(补充)


  1. 安装源
    yum search ansible
    yum -y install centos-release-ansible29

  2. 安装ansible
    yum -y install ansible

  3. 添加主机到清单
    vim /etc/ansible/hosts
    [webservers]
    192.168.189.172
    192.168.189.173

  4. 配置免密
    ssh-keygen
    ssh-copy-id [email protected]
    ssh-copy-id [email protected]

  5. 测试被管理主机是否可达
    ansible webservers -m ping

任务的执行方式
ansible 下发单个任务,一次一个
ansible-playbook 读取playbook剧本文件,有序执行多个任务

ansible清单文件路径:/etc/ansible/hosts

ansible命令格式:

ansible 主机/主机组 -m 模块 -a ‘模块的参数’ -f ‘同时执行的主机的数量,默认5个’

ansible webservers -m ping

ansible 配置文件:/etc/ansible/ansible.cfg

remote_user = root # 默认的远程ssh连接用户
remote_port = 22 # 默认的ssh连接端口
forks = 5 # 默认的主机并发数量
inventory = /etc/ansible/hosts # 默认清单文件
module_name = command # 默认的模块

单独指定某个主机的ssh连接端口和连接用户,在清单文件中指定
[webservers]
192.168.189.172:223 ansible_ssh_user=tom
192.168.189.173:224

查询模块的帮助信息
ansible-doc -s 模块名字

常用的模块:
command 在被管理节点执行一条命令(默认)
shell 执行shell命令的,它可以支持一些特殊符号的解释,| &&…
yum 使用yum工具安装软件
参数:
name: 指定你要安装的软件包的名字
state: 指定你的动作:“安装(installed,latest)、卸载(removed、absent)”

       ansible webservers -m yum -a 'name=httpd state=latest'
       ansible webservers -m yum -a 'name=httpd state=removed'

systemd: 管理服务、启动、停止、重启
参数:
name: 指定你要管理的服务名
state: 指定你的动作:启动(started)、关闭(stopped)、重启(restarted)、重载(reloaded)
enabled: yes、no 开机自启
service
参数:
name: 指定你要管理的服务名
state: 指定你的动作:启动(started)、关闭(stopped)、重启(restarted)、重载(reloaded)
enabled: true 开机自启

实例:

批量安装httpd

ansible webservers -m yum -a ‘name=httpd state=latest’

批量启动所有主机的httpd

ansible webservers -m systemd -a ‘name=httpd state=started enabled=yes’

查看被管理节点的80端口是否被监听

ansible webservers -m shell -a ‘ss -ntl | grep 80’

创建一个httpd的测试页面

ansible webservers -m shell -a ‘echo 1807A > /var/www/html/index.html’

猜你喜欢

转载自blog.csdn.net/youchaoXu/article/details/112302199