Ansible常用模块整理
问答题
请总结今天所学的ansible模块,以及各个模块的作用!
ping
ping模块用来检查目标主机是否在线
例子:ansible webserver -m ping
yum
yum模块用来在Centos系统上使用yum命令安装软件包
选项:
name: 指定安装包的名字
state:latest 安装最新版 present 默认安装 installed 安装 absent 卸载
removed 卸载
例子:ansible webservers -m yum -a ‘name=httpd state=latest’
command
command模块用来执行系统命令,但是不支持shell下的特殊符号 如:| &&等
例子:ansible webservers -m command -a ‘echo 李想’
shell
shell模块和command模块使用方法基本一致,但是他可以支持shell的特殊符号,如: | && 等
例子:ansible webservers -m shell -a “cd /opt/ && touch lixiang”
service
service模块用来管理centos上的服务的启动、关闭、重启和重载
选项:
name: 服务名字
state: started(启动) stopped(停止) restarted(重启) reloaded(重载)
enabled: 默认是no,将服务设置为开机自启
file
file模块用来创建文件、目录、链接文件
选项:
group:定义文件/目录的属组
mode:定义文件/目录的权限
owner:定义文件/目录的属主
path:必选项,定义文件/目录的路径
recurse:递归的设置文件的属性,只对目录有效
src:要被链接的源文件的路径,只应用于state=link的情况
dest:被链接到的路径,只应用于state=link的情况
state:
directory:如果目录不存在,创建目录
file:即使文件不存在,也不会被创建
link:创建软链接
hard:创建硬链接
touch:如果文件不存在,则会创建一个新的文件,如果文件或目录已存在,则更新其最后修改时间
absent:删除目录、文件或者取消链接文件
user
user模块用来创建用户
选项:
home: 指定创建的家目录
groups:指定用户组
uid:指定UID
password:设置密码,密码必须是密文
Openssl passwd
name:创建的用户名字
createhome:是否创建家目录(yes/no)
state: 是创建还是删除。(present,absent),默认是创建
shell: 指定用户登录的shell环境
remove:删除用户家目录,默认为no
group
group用来创建用户组
选项
gid:指定用的gid。
name:指定用户名。
state:是创建还是删除。(present,absent)
copy
copy模块用来复制文件至目标主机
选项:
src:文件在管理主机的据对路径或者相对路径
dest:将文件复制到目标主机的路径
backup:是否将目标主机的同名文件备份,默认为no
mode: 授权
directory_mode:递归授权
例子:
ansible webservers -m copy -a ‘src=/root/nginx.sh dest=/opt/’
unarchive
unarchive模块用来解压文件
n 选项:
u copy:在解压文件之前,是否先将文件复制到远程主机,默认为yes。若为no,则要求目标主机上压缩包必须存在
u creates:指定一个文件名,当该文件存在时,则解压指令不执行
u dest:远程主机上的一个路径,即文件解压的绝对路径。
u group:解压后的目录或文件的属组
u mode:解压后文件的权限
u src:如果copy为yes,则需要指定压缩文件的源路径
u owner:解压后文件或目录的属主
n 例子:
ansible webservers -m unarchive -a ‘src=/root/nginx.tar.gz dest=/opt/ group=www ower=www mode=777 ’
get_url
n get_url模块,该模块主要用于从http、ftp、https服务器上下载文件(类似于wget
n 选项:
u url: 指定要下载的文件的URL地址
n 例子:
ansible webservers -m get_url -a ‘url= http://nginx.org/download/nginx-1.15.7.tar.gz dest=/root/’
synchronize
n 使用rsync同步文件,将主控方目录推送到指定节点的目录下,使用此模块需要先安装rsync
n delete: 删除不存在的文件,delete=yes 使两边的内容一样(即以推送方为主),默认no
n src: 要同步到目的地的源主机上的路径; 路径可以是绝对的或相对的。如果路径使用”/”来结尾,则只复制目录里的内容,如果没有使用”/”来结尾,则包含目录在内的整个内容全部复制
n dest:目的地主机上将与源同步的路径; 路径可以是绝对的或相对的。
n dest_port:默认目录主机上的端口 ,默认是22,走的ssh协议。
n mode: push或pull,默认push,一般用于从本机向远程主机上传文件,pull 模式用于从远程主机上取文件。
n rsync_opts:通过传递数组来指定其他rsync选项。
fetch
n fetch模块它用于从远程机器获取文件,并将其本地存储在由主机名组织的文件树中。
n 选项:
u src:远程系统上要获取的文件。 这必须是一个文件,而不是一个目录。 后续版本可能会支持递归提取。
u dest:保存文件的目录
setup
n setup 模块用于收集远程主机的一些基本信息。
n 选项:
u filter参数:用于进行条件过滤。如果设置,仅返回匹配过滤条件的信息。
u 常用的过滤关键词:
l ansible_all_ipv4_addresses:仅显示ipv4的信息
l ansible_devices:仅显示磁盘设备信息
l ansible_distribution:显示是什么系统,例:centos,suse等
l ansible_distribution_major_version:显示是系统主版本
l ansible_distribution_version:仅显示系统版本
l ansible_machine:显示系统类型,例:32位,还是64位
l ansible_eth0:仅显示eth0的信息
l ansible_hostname:仅显示主机名
l ansible_kernel:仅显示内核版本
l ansible_lvm:显示lvm相关信息
l ansible_memtotal_mb:显示系统总内存
l ansible_memfree_mb:显示可用系统内存
l ansible_memory_mb:详细显示内存情况
l ansible_swaptotal_mb:显示总的swap内存
l ansible_swapfree_mb:显示swap内存的可用内存
l ansible_mounts:显示系统磁盘挂载情况
l ansible_processor:显示cpu个数(具体显示每个cpu的型号)
l ansible_processor_vcpus:显示cpu个数(只显示总的个数)
l ansible_python_version:显示python版本
u 例子:
获取目标主机的ipv4地址
ansible webservers -m setup -a 'filter=ansible_all_ipv4_addresses'
Ansible常用模块整理的更多相关文章
- 【原创】ansible常用模块整理
一.Ansible模块帮助 ansible-doc -l # 列出 Ansible 支持的模块 ansible-doc ping # 查看该模块帮助信息 二.远程命令模块 2.1command com ...
- ansible常用模块用法
ansible常用模块用法 2015-07-21 10:25 24458人阅读 评论(1) 收藏 举报 分类: Linux(44) ansible 版权声明:本文为博主原创文章,未经博主允许不得 ...
- 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常用模块介绍及使用(2)
Ansible模块 在上一篇博客<Ansible基础认识及安装使用详解(一)–技术流ken>中以及简单的介绍了一下ansible的模块.ansible是基于模块工作的,所以我们必须掌握几个 ...
- Ansible常用模块及API
Ansible安装 安装EPEL作为安装Ansible的yum源(CentOS6.4): rpm -Uvh http://ftp.linux.ncsu.edu/pub/epel/6/i386/epel ...
- ansible常用模块入门
常用模块有以下几个 command copy shell crond yum service setup 1.command模块 ansible george -m command -a " ...
- Ansible常用模块基本操作
Ansible是一个系列文章,我会尽量以通俗易懂.诙谐幽默的总结方式给大家呈现这些枯燥的知识点,让学习变的有趣一些. 前言 对于任何一个框架,一个应用,为了更便于推广,便于使用,便于商业化,都会顺便提 ...
- Ansible 常用模块详解
经过前面的介绍,我们已经熟悉了 Ansible 的一些常识性的东西和如何编译安装Ansible,从本章开始我们将全面介绍 Ansible 的各种生产常用模块,这些也是我们使用 Ansible 的过程中 ...
随机推荐
- PHP 命名空间笔记
PHP 命名空间笔记 1.php文件代码如下<pre><?php//我用这样的命名空间表示处于blog下的article模块namespace Blog\Article; class ...
- 如何定时查询某线程的CPU执行时间
#!/bin/bash pid=$(ps -T -p $(pgrep xxx) | grep xxx | gawk -F" " '{print $2}') if [ -z $pid ...
- 集合类源码(六)Map(HashMap, Hashtable, LinkedHashMap, WeakHashMap)
HashMap 内部结构 内部是一个Node数组,每个Node都是链表的头,当链表的大小达到8之后链表转变成红黑树. put操作 final V putVal(int hash, K key, V v ...
- 34 个今年11月最受欢迎的 JavaScript 库
作者:Iren Korkishko 译者:前端小智 来源:dev 点赞再看,养成习惯 本文 GitHub:github.com/qq449245884… 上已经收录,更多往期高赞文章的分类,也整理了很 ...
- Python爬虫实战之爬取糗事百科段子【华为云技术分享】
首先,糗事百科大家都听说过吧?糗友们发的搞笑的段子一抓一大把,这次我们尝试一下用爬虫把他们抓取下来. 友情提示 糗事百科在前一段时间进行了改版,导致之前的代码没法用了,会导致无法输出和CPU占用过高的 ...
- ELK学习笔记之ElasticSearch的集群(Cluster),节点(Node),分片(Shard),Indices(索引),replicas(备份)之间关系
[Cluster]集群,一个ES集群由一个或多个节点(Node)组成,每个集群都有一个cluster name作为标识----------------------------------------- ...
- WPF 精修篇 Winform 嵌入WPF控件
原文:WPF 精修篇 Winform 嵌入WPF控件 首先 创建WPF控件库 这样就有了一个WPF界面 在wpf中增加界面等 在winform中增加WPFDLL 重新生成解决方案 在左侧工具栏 出现W ...
- 我是如何一步步编码完成万仓网ERP系统的(十二)库存 1.概述
https://www.cnblogs.com/smh188/p/11533668.html(我是如何一步步编码完成万仓网ERP系统的(一)系统架构) https://www.cnblogs.com/ ...
- k8s时区问题解决方案
前几天在使用k8s中的CronJob时发现了一个很奇怪的问题, 按照官方文档的demo跑起来是没有任何问题的, 但是当我想要设置每天一个固定时间点例如12点20执行一个job的时候,到了时间之后无论如 ...
- 了解MySQL
目前流行的数据库 MySQL Oracle Microsoft SQLServer Microsoft Access PostgreSQL DB2/UDB InfoMax MySQL介绍 世界上最流行 ...