ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

ansible常用模块-1

2021-05-19 18:56:22  阅读:149  来源: 互联网

标签:src 常用 name 文件 dest state ansible 模块


1. setup

查看函数
ansible 172.28.9.167 -m setup
ansible 10.212.52.252 -m setup -a 'filter=ansible_*_mb'  查看机器内存
filter=ansible_memory_mb  查看内存
filter=ansible_all_ipv4_addresses 查看ip
 
filter=ansible_default_ipv4'  查看网卡配置
filter=ansible_nodename  主机名
filter=ansible_distribution_version 系统版本
 
 
 
ansible_all_ipv4_addresses:仅显示ipv4的信息。
ansible_devices:仅显示磁盘设备信息。
ansible_distribution:显示是什么系统,例:centos,suse等。
ansible_distribution_major_version:显示是系统主版本。
ansible_distribution_version:仅显示系统版本。
ansible_machine:显示系统类型,例:32位,还是64位。
ansible_eth0:仅显示eth0的信息。
ansible_hostname:仅显示主机名。
ansible_kernel:仅显示内核版本。
ansible_lvm:显示lvm相关信息。
ansible_memtotal_mb:显示系统总内存。
ansible_memfree_mb:显示可用系统内存。
ansible_memory_mb:详细显示内存情况。
ansible_swaptotal_mb:显示总的swap内存。
ansible_swapfree_mb:显示swap内存的可用内存。
ansible_mounts:显示系统磁盘挂载情况。
ansible_processor:显示cpu个数(具体显示每个cpu的型号)。
ansible_processor_vcpus:显示cpu个数(只显示总的个数)。

2. yum

ansible    test    -m   yum   -a   "name=namp  state=lastest "
start状态:lastest默认安装最新版的
            present:安装指定的版本  **一般常用
            absent:表示卸载/删除 
            installed ???


下载多个,循环

yum: name={{ item }} state=installed
  with_items:
    - gcc
    - gcc-c++
    - autoconf
    - automake
    - make
    - pcre-devel

3. copy



ansible  web  -m  copy   -a "src=/etc/rc.local dest=/tmp"

 

src

从哪里来

dest

到哪里去

backup=yes

表示如果备份源文件,把原来的文件的名字用时间戳来命名

mode

权限

owner

属主

group

属组

content

指定文件的内容,

- name: Copy jumpserver.sh Coco.sh
  copy: src={{ item.src }} dest={{ item.dest }}
  with_items:
    - src: jumpserver
      dest: /etc/init.d/
      mode: 0755
    - src: coco
      dest: /etc/init.d/
      mode: 0755


4. file

group:定义文件/目录的属组 
mode:定义文件/目录的权限
owner:定义文件/目录的属主
path:必选项,定义文件/目录的路径
recurse:递归的设置文件的属性,只对目录有效
src:要被链接的源文件的路径,只应用于state=link的情况
dest:被链接到的路径,只应用于state=link的情况 
state:  
--directory:如果目录不存在,创建目录
--file:即使文件不存在,也不会被创建
--link:创建软链接
--hard:创建硬链接
--touch:如果文件不存在,则会创建一个新的文件,如果文件或目录已存在,则更新其最后修改时间
absent:删除目录、文件或者取消链接文件


 

ansible   nginx  -m  file   -a "src=/etc/hosts  dest=/tmp/hosts_link   state=link"

state

touch(创建文件)

directory(创建目录)

link(软连接)

hard(硬链接)

absent(删除)

recurse

递归的设置文件的属性,只对目录有效

yes表示使用递归设置

 

      file: path={{ item }} state=directory
      with_items:
        - /a
        - /b

5. cron

* * * * *  /bin/sh /server/scripts &>/dev/null

 

minute

hour

day

month

weekday

job

指定做什么事

disabled=yes

注释

state=absent

删除

不写默认是***


user

以哪个用户执行

- hosts: ceshi
tasks:
    - name: cron
      cron: name='xiaoqiang' minute='*/5' hour='01' day='22' month='01' job="/bin/bash /2.sh"
tail -f /var/log/cron


6. script

- hosts: nfs
  tasks:
    - name:
      script: /server/scripts/sersync/sersync.sh
远程运行本地主机的脚本


7. unarchive

用于解压文件,模块包含如下选项:
copy:在解压文件之前,是否先将文件复制到远程主机,默认为yes。若为no,则要求目标主机上压缩包必须存在。
creates:指定一个文件名,当该文件存在时,则解压指令不执行
dest:远程主机上的一个路径,即文件解压的路径 
grop:解压后的目录或文件的属组
list_files:如果为yes,则会列出压缩包里的文件,默认为no,2.0版本新增的选项
mode:解决后文件的权限
src:如果copy为yes,则需要指定压缩文件的源路径 
owner:解压后文件或目录的属主
 
hosts: web
  tasks:
    - name: jieya
      unarchive: src=/tmp/1.tar.gz dest=/opt本地是一个压缩包,到达对面就解压了
unarchive: src=http://10.0.194.200:50001/test/jumpserver/jumpserver.tar.gz dest=/opt/ remote_src=yes mode=0755   ##网上下载直接解压下载
 
ansible zabbxi_test -m unarchive -a 'src=/opt/zabbix_update-shanghaiIT.tar.gz dest=/opt/ copy=no'


8. service

ansible oldboy -m service -a "name=crond state=stopped started restarted enabled=no"

name

服务名字

stopped

现在关闭此服务

started

现在就启动此服务

restarted

重启此服务

enabled

是否开机自启动

runlevel

运行级别

ansible 172.28.9.167 -m service -a 'name=nginx state=stopped enabled=no'
 
ansible 172.28.9.167 -m service -a 'name=nginx state=started enabled=yes runlevel=3'
 
- name: Start rpc nfs
  service: name={{ item }} state=restarted enabled=yes runlevel=3
  with_items:
    - rpcbind
        - nfs


9. get_url

- name: Download foo.conf
  get_url:
    url: http://example.com/path/file.conf
    dest: /etc/foo.conf
    mode: '0440'


10. sysctl

ansible 172.28.9.167 -m sysctl -a "name=net.ipv4.ip_forward value=1 reload=yes"
内核转发



标签:src,常用,name,文件,dest,state,ansible,模块
来源: https://blog.51cto.com/u_15196512/2786560

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有