ansible基本模块
ansible-doc -l #列出所有模块
ansible-doc shell # 查看shell模块的帮助
command(命令模块,默认)
[root@L yum.repos.d]# ansible all -m command -a 'ls /root'
shell (最常用)
[root@ansible .ssh]# ansible cache -m shell -a 'chdir=/tmp touch f1' # 切换到/tmp下创建文件
lineinfile(类似于sed)
[root@ansible .ssh]# ansible all -m lineinfile -a 'path=/etc/resolv.conf regexp="^search:" line="search tedu.cn"' # path : 要修改的行
# regexp : 正则,匹配要修改的行
# line : 修改后的样子
replace
[root@ansible .ssh]# ansible all -m replace -a 'path=/etc/resolv.conf regexp="\.cn" replace=".com"' # regexp: 匹配要修改的部分
# replace : 修改后的样子 [root@ansible .ssh]# ansible all -m replace -a 'path=/etc/resolv.conf regexp="^(search).*" replace="\1 .com"'
script(执行脚本)
cron
hostname
user
group
copy:从服务器复制文件到客户端
[root@L shells]# ansible all -m copy -a "src=heart.sh dest=/root"
[root@L shells]# ansible all -m copy -a "content='i am ansible\n' dest='/root/test'" # 将content写入文件,文件存在覆盖,不存在则新建
fetch:将客户机的文件拷贝到本机器
[root@L ~]# ansible all -m fetch -a 'src=/var/log/messages dest=/mnt'
file:指定文件属性
[root@L ~]# ansible all -m file -a 'path=/mnt/test state=touch' # 创建文档 state=absent 删除
[root@L ~]# ansible all -m file -a 'path=/mnt/dir state=directory' # 创建目录
[root@L ~]# ansible 192.168.2.100 -m file -a 'src=/usr/local/tomcat/bin/startup.sh dest=/sbin/cat_start state=link' # 创建软链接
yum:
[root@L ~]# ansible all -m yum -a 'name=vsftpd,httpd' # 为所有客户机安装软件 state=remove 卸载 update_cache=yes 更新缓存
[root@L ~]# ansible 192.168.2.100 -m yum -a 'list=installed' # 查看客户机安装的软件列表
[root@ansible .ssh]# ansible db -m replace -a 'path=/etc/my.cnf regexp="^(\[mysqld\])" replace="\1\nlog-bin"'
service:
[root@L shells]# ansible all -m service -a 'name=mariadb state=restarted'
[root@L shells]# ansible all -m service -a 'name=mariadb state=started enabled=yes'
unarchive模块
功能:解压缩,这个模块有两种用法:
1、将ansible主机上的压缩包在本地解压缩后传到远程主机上,这种情况下,copy=yes. 本地解压缩,解压缩位置不是默认的目录,没找到或传完删了 后传到远程主机
2、将远程主机上的某个压缩包解压缩到指定路径下。这种情况下,需要设置copy=no 远程主机上面的操作,不涉及ansible服务端
参数:
copy:默认为yes,当copy=yes,那么拷贝的文件是从ansible主机复制到远程主机上的,如果设置为copy=no,那么会在远程主机上寻找src源文件
src:源路径,可以是ansible主机上的路径,也可以是远程主机上的路径,如果是远程主机上的路径,则需要设置copy=no
dest:远程主机上的目标路径
mode:设置解压缩后的文件权限
ansible基本模块的更多相关文章
- ansible服务模块和组模块使用
本篇文章主要是介绍ansible服务模块和组模块的使用. 主要模块为ansible service module和ansible group moudle,下面的内容均是通过实践得到,可以直接运行相关 ...
- ansible常用模块用法
ansible常用模块用法 2015-07-21 10:25 24458人阅读 评论(1) 收藏 举报 分类: Linux(44) ansible 版权声明:本文为博主原创文章,未经博主允许不得 ...
- Linux之ansible 常用模块
目的 代码发布系统 代码发布:把本地的代码通过某些方式弄到线上,可以供别人访问 部署 前戏 ansible 批量在远程主机上执行命令 puppet ruby ansible saltstack pyt ...
- Ansible常用模块介绍及使用(week5_day1_part2)--技术流ken
Ansible模块 在上一篇博客<Ansible基础认识及安装使用详解(一)--技术流ken>中以及简单的介绍了一下ansible的模块.ansible是基于模块工作的,所以我们必须掌握几 ...
- Ansible常用模块命令
Ansible常用模块命令 一.安装ansible yum install epel-release yum install ansible 二.配置文件配置 vi /etc/ansible/ansi ...
- ansible 常用模块的使用
安装 yum -y install ansible 配置文件/etc/ansible/hosts 模块介绍与使用 ping模块 [root@node1 config]# ansible k8s -m ...
- Ansible 常见模块介绍
目录 Ansible 常见模块介绍 ping 模块 command 模块 cron 模块 user 模块 group 模块 copy 模块 file 模块 service 模块 shell 模块 sc ...
- Ansible 常用模块(一)
一.Ansible简介 Ansible是新出现的自动化运维工具,基于python开发,集合了众多运维工具(puppet(ruby).cfengine.chef.func.fabric.)的优点,实现了 ...
- ansible核心模块playbook介绍
ansible的playbook采用yaml语法,它简单地实现了json格式的事件描述.yaml之于json就像markdown之于html一样,极度简化了json的书写.在学习ansible pla ...
- ansible的模块使用
转载于 https://www.cnblogs.com/franknihao/p/8631302.html [Ansible 模块] 就如python库一样,ansible的模块也分成了基本模块和 ...
随机推荐
- 【LOJ】#3120. 「CTS2019 | CTSC2019」珍珠
LOJ3120 52pts \(N - D >= 2M\)或者\(M = 0\)那么就是\(D^{N}\) 只和数字的奇偶性有关,如果有k个奇数,那么必须满足\(N - k >= 2M\) ...
- Atomic long 和long的区别
Atomic long 和long: 前者是一个对象,包含对象头(object header)以用来保存hashcode.lock等信息,32位系统占用8个字节,64位系统占16个字节,所以在64位系 ...
- springboot2.0结合freemarker生成静态化页面
目录 1. pom.xml配置 2. application.yml配置 3. 使用模板文件静态化 3.1 创建测试类,编写测试方法 3.2 使用模板字符串静态化 使用freemarker将页面生成h ...
- Tensorflow安装错误Cannot uninstall wrapt
解决办法:安装之前先执行:pip install wrapt --ignore-installed
- js排列组合
/* 全排列主要用到的是递归和数组的插入 arr: 需要排列的数组 第一步:从里面取一个,创建一个新的数组,形式为二维,例如arr = [1,2,3]; 取出3(没有特殊要求,随便取一个),放入 te ...
- 面试常考的js题目(三)
1.查找两个节点的最近的一个共同父节点,可以包括节点自身 function commonParentNode(oNode1, oNode2) { if(oNode1.contains(oNode2)) ...
- kali破解ssh
hydra,是一个非常好用的暴力破解工具,而且名字也很cool. 下面是官网上的介绍: AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, ...
- js小功能1:全选全不选
<form> 请选择你爱好:<br> <input type="checkbox" name="hobby" id="h ...
- javaScript基础题
1.介绍JavaScript的基本数据类型 Number.Boolean.String.underfind.null Object是JavaScript中所有对象的父对象 数据封装类对象:Object ...
- 红队基础设施建设:隐藏你的C2
0x01 前言 待定