Ansible快速上手

使用Ansible-快速上手

ping模块简介:

该模块不使用ICMP ping,而是使用基于python的模块完成。
语法:

ansible 主机IP/或在清单中的名称 -m(表示选择模块) ping (表示使用ping模块)

清单文件:

[dev]
192.168.110.129
[prod]
192.168.110.132

运行ping命令:

[root@Controller ansible]# ansible dev -m ping
192.168.110.129 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}

[root@Controller ansible]# ansible 192.168.110.129 -m ping
192.168.110.129 | SUCCESS => {
    "ansible_facts": {
        "discovered_interpreter_python": "/usr/libexec/platform-python"
    },
    "changed": false,
    "ping": "pong"
}

返回为pong则表示能与对端通信。
那么现在尝试ping一个不存在的地址:

[root@Controller ansible]# ansible 192.168.110.128 -m ping
[WARNING]: Could not match supplied host pattern, ignoring: 192.168.110.128
[WARNING]: No hosts matched, nothing to do

Ansible-doc -l:

常用于查看某个模块的具体使用方法:
现在有一个模块你记不清具体叫什么,那么就可以使用该命令来查看。
当然 -l 会列出所有的模块,不利于我们去定位。所以可以通过grep来筛选。

[root@Controller ansible]# ansible-doc -l | grep yum
yum                             Manages packages with the `yum' package manager
yum_repository                  Add or remove YUM repositories

过滤出来我们想要的模块后,再利用该命令去查看具体的使用案例。

[root@Controller ansible]# ansible-doc yum

在文档中搜索EXAMPLES来快速定位案例。
在这里插入图片描述

简单的playbook:

我们来书写一个下载httpd的剧本。

---
- name: install httpd
  hosts: localhost
  tasks:
    - name: start install
      yum:
        name: httpd
        state: present

然后执行:

ansible-playbook packages.yml #该命令用于执行playbook

执行结果:
在这里插入图片描述
changed 表示该任务执行完成且完成了任务所定义的行为。
在这里插入图片描述
再执行一次会变为ok ,即ansible发现该主机上已有httpd软件,那么就不再完成任务定义的行为。
至此你可以简单的使用ansible来完成一些任务。
文章有问题请联系改正:wgq3135@163.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值