ansible模块补充
1.fetch模块, 将远程机器上的文件拉取到本地,以ip或者主机名生成目录,并保留原来的目录结构,与copy模块的功能相反.
主要参数 : dest -- 目标地址
src -- 源地址
例子 : ansible web -m fetch -a "dest=/tmp src=/var/log/cron" #表示把远程主机上/var/log/cron下的文件copy到本机的/tmp下.
2.yum模块
首先,linux自带的yum有其自身的功能 :
linux中yum源的配置格式 :
[epel] # 名称
name=Extra Packages for Enterprise Linux 7 - $basearch # 描述信息
baseurl=http://mirrors.aliyun.com/epel/7/$basearch # yum源的地址
failovermethod=priority
enabled=1 # 指定yum源是否可用,1代表可用,0代表不可用
gpgcheck=0 # 是否检查gpgkey文件,0代表不检查,1代表的检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
yum grouplist #查看包组
yum groupinstall # 安装包组
查看包安装状态 :
yum list|grep redis @代表安装成功
rpm -qa 查看所有的包
rpm -ql 查看包安装生成的文件
然后看一下ansible中的yum模块所带的参数 :
disable_gpg_check # 是否要检查key
disablerepo # 禁用repo
enablerepo #启用repo
name # 包名
state # 状态 installed removed
示例 :
ansible web -m yum -a "name=python2-pip" # 安装一个包
ansible web -m yum -a "name='@Development Tools'" # 安装包组
ansible web -m yum -a "name=redis,python2-pip" # 同时安装多个包
ansible web -m yum -a "name=redis state=absent" # 卸载
3.pip模块
linux中自带python2版本,其pip也有自带的功能 :
pip list #查看所有的python第三方包
pip freeze > a.txt # 导出
pip install -r a.txt # 安装
ansible中的pip模块参数 :
requirements #导出的文件
name # 包名
virtualenv # 虚拟环境
ansible web -m pip -a "name=django==1.11.18" # 安装
4.service模块
linux中自带的一些服务 :
ps -ef|grep redis # 查看进程
ss -tnlp #查看端口信息
# 启动服务
systemctl start redis centos7
service redis start centos6
# 开机自启动
systemctl enable redis centos7
chkconfig redis on centos6
ansible中的service模块 :
enabled # 设置开机自启动
name # 名称
state :
started
stopped
restarted
reloaded
示例 :
ansible web -m service -a "name=redis state=started" # 启动
ansible web -m service -a "name=redis state=stopped" # 关闭
ansible web -m service -a "name=redis state=started enabled=yes" # 启动并设置开机自启动
5.cron模块
linux中的定时任务 :
crontab -l # 查看计划任务
crontab -r # 删除所有的计划任务
crontab -e # 编辑计划任务
ansible中的cron模块 :
day # 天
hour # 小时
job #任务
minute #分钟
month # 月
name #名字,描述信息,不可以重复
state # 状态
user # 执行计划任务的用户
weekday # 周
disabled # 禁止
示例 :
ansible web -m cron -a "minute=21 job='touch /tmp/cron.txt' name=touchfile" # 设置计划任务
ansible web -m cron -a "minute=23 job='touch /tmp/cron.txt' name=touchfile4 disabled=yes" # 禁用计划任务,表现为加注释
ansible web -m cron -a "name=touchfile4 state=absent" # 删除计划任务
6.user模块
linux中的useradd参数 :
-d # 指定家目录
-g # 组id
-G, --groups GROUPS # 附加组
-r, --system # 创建系统用户
-s, --shell SHELL # 登陆shell
-u, --uid UID #用户id
示例 :
useradd -s /sbin/nologin -u 2000 -d /opt/wusir 用户名 #创建用户,指定用户的登陆shell,id,家目录
useradd -s /sbin/nologin -G root,wusir -d /opt/wusir2 用户名 #指定附加组,最大的后面+1
useradd -r 用户名 # 创建系统用户,从999倒序
删除用户 :
userdel 用户名 # 删除用户
userdel -r 用户名 # 删除用户并删除用户的家目录
ansible中的user模块 :
group # 组
groups #附加组
home #家目录
name #用户名
password #密码
shell #登陆shell
remove # 删除用户并删除用户的家目录
state # 状态
system #系统用户
uid # 用户id
示例:
ansible db -m user -a "name=用户名 shell=/sbin/nologin home=/opt/f1 uid=2000 group=root" # 创建用户,并指定用户的家目录,登陆shell,uid,组
ansible db -m user -a "name=用户名 system=yes" #创建系统用户
ansible db -m user -a "name=用户名 state=absent" # 删除用户
ansible db -m user -a "name=用户名 state=absent remove=yes" # 删除用户并删除用户的家目录
7.group模块
linux中一些关于组的操作 :
groupadd #创建组
groupdel #删除组
-g 指定组的id
-r 指定系统组
ansible中的group模块参数:
gid #组的id
name # 组名
state #状态
system #系统组
示例 :
ansible db -m group -a "name=canglaoshi" #创建普通组
ansible db -m group -a "name=wutenglan system=yes" # 创建系统组
ansible db -m group -a "name=wutenglan state=absent" # 删除组
ansible模块补充的更多相关文章
- 文成小盆友python-num7 -常用模块补充 ,python 牛逼的面相对象
本篇内容: 常用模块的补充 python面相对象 一.常用模块补充 1.configparser模块 configparser 用于处理特定格式的文件,起内部是调用open()来实现的,他的使用场景是 ...
- ansible模块
ansible模块: 模块(Modules),类似于 "任务插件"("task plugins")或"库插件"("library ...
- ansible笔记(3):ansible模块的基本使用
ansible笔记():ansible模块的基本使用 在前文的基础上,我们已经知道,当我们使用ansible完成实际任务时,需要依靠ansible的各个模块,比如,我们想要去ping某主机,则需要使用 ...
- python模块补充
一.模块补充 configparser 1.基本的读取配置文件 -read(filename) 直接读取ini文件内容 -sections() 得到所有的section,并以列表的形式返回 -opti ...
- 第4天:Ansible模块
Ansible对远程服务器的实际操作实际是通过模块完成的,其工作原理如下: 1)将模块拷贝到远程服务器 2)执行模块定义的操做,完成对服务器的修改 3)在远程服务器中删除模块 需要说明的是,Ansib ...
- python_9(模块补充)
第1章 re模块补充 1.1 贪婪匹配:回溯算法 1.2 .*?的用法 1.3 例:分组<name>取值 1.4 匹配整数删除小数 1.5 正则测试地址 第2章 重点模块 2.1 hash ...
- 8.6 day27 网络编程 osi七层协议 Time模块补充知识 TCP协议
Time模块补充知识 date和datetime区别是什么? date 就是年月日 datetime就是年月时时分秒 以下代码为什么会报错? import json from datetime imp ...
- os模块补充以及序列化模块
os模块补充以及序列化模块 一.os模块的补充 1.os.path.abspath 能把存在的相对路径的绝对路径显示出来 path = os.path.abspath("连达day19. ...
- ansible模块command、shell、raw、script
简介 环境: ansible端: ip:192.168.100.129 hostname:node1.lansgg.com client端: ip:192.168.100.131 hostname:v ...
随机推荐
- PGA+SGA的几个参数操作
1.sga_max_size;是静态的必须重启之后生效需要加scope=spfile;(不要超过物理内存值) SQL> alter system set sga_max_size=500M sc ...
- Ctrl+Tab
很好用的快捷键. 可以在浏览器中自由切换,也可以在编辑器中自由切换.
- 超全的IE兼容性问题及解决方案
1.怪异盒模型:在老版本IE下不设置文档声明,页面就会进入怪异盒模型解析,所以要设置文档声明: 2.IE6下,子元素的宽高超出父级的宽高 :可以把父级设 置好的宽度撑开 3.在IE6下,块属性元素的高 ...
- 彻底理解JavaScript中的prototype、__proto__
虽然在JavaScript里一切皆对象,但为了理解原型链系统,我们需要将JavaScript的对象分为对象和函数两大类.在此基础上,JavaScript的原型链逻辑遵从以下通用规则: 对象有__pro ...
- Comet OJ - Contest #5 简要题解
好久没更博了,还是象征性地更一次. 依然延续了简要题解的风格. 题目链接 https://cometoj.com/contest/46 题解 A. 迫真字符串 记 \(s_i\) 表示数字 \(i\) ...
- 怎样理解prototype对象的constructor属性
function Person(name){ this.name = name; } var lilei = new Person("Lilei"); lilei.construc ...
- Java Web 深入分析(9) Session 和 Cookie
前言: session 和cookie都是为了保持服务器和客户端之间交互状态.如果一天的PV有几亿,而一个cookie占200个字节但是也会占用很多带宽?所以大访问量就引用session,但是几百台服 ...
- matlab cell
cell元包是matlab中提供的一种数据类型,功能强大. 关于cell的创建: 1.跟一般创建举证一样,直接使用C = {A B D E}这种形式,不过这里把"[]"改成了}&q ...
- C++ sizeof(struct) 的注意
今天在测试将C++代码导出的NavMesh二进制文件用一套C#改写的代码导入时,发现导入的数据出现不一致的问题. 分别在C++和C#AddTile的函数内设置断点,观察最后得到的tile有大部分的字段 ...
- gradient 渐变
看了大漠 写的关于 Gradient 的文章,我也想写点以便加深记忆. 首先gradient 分为linear-gradient (线性渐变) 和 radial-gradient(径向渐变),渐变是作 ...