zoukankan      html  css  js  c++  java
  • ansible常用参数

    -m:要执行的模块,默认为command
    -a:指定模块的参数
    -u:ssh连接的用户名,默认用root,ansible.cfg中可以配置
    -b,--become:变成那个用户身份,不提示密码
    -k:提示输入ssh登录密码,当使用密码验证的时候用
    -s:sudo运行
    -U:sudo到哪个用户,默认为root
    -K:提示输入sudo密码,当不是NOPASSWD模式时使用
    -C:只是测试一下会改变什么内容,不会真正去执行
    -c:连接类型(default=smart)
    -f:fork多少进程并发处理,默认为5个
    -i:指定hosts文件路径,默认default=/etc/ansible/hosts
    -I:指定pattern,对已匹配的主机中再过滤一次
    -list-host:只打印有哪些主机会执行这个命令,不会实际执行
    -M:要执行的模块路径,默认为/usr/share/ansible
    -o:压缩输出,摘要输出
    --private-key:私钥路径
    -T:ssh连接超时时间,默认是10秒
    -t:日志输出到该目录,日志文件名以主机命名
    -v:显示详细日志

    ansible server1 -m setup   #产看指定主机server1上的facts变量信息
    ansible * -m setup           #查看指定的所有主机上的facts变量信息
    ansible-doc -l:列出有哪些可用的模块,按q退出
    ansible-doc -l | wc -l:列出有多少个可用的模块
    ansible-doc -l | grep user:列出与user有关的模块
    ansible-doc user:查看user模块的帮助文档,按q退出。也可以在最后一行输入/passwd,来过滤与passwd有关的内容
    ansible test -a 'df -h'  在test组执行df -h命令

    ping

    n  ping模块用来检查目标主机是否在线

    n  例子:ansible webserver -m ping

    yum

    yum模块用来在Centos系统上使用yum命令安装软件包

    选项:

    name: 指定安装包的名字

    statelatest 安装最新版  present 默认安装  installed 安装  absent 卸载

    removed 卸载

    例子:ansible webservers -m yum -a ‘name=httpd state=latest’

    command

    n  command模块用来执行系统命令,但是不支持shell下的特殊符号 如:|  &&等

    例子:ansible webservers -m command  -a ‘echo 李想’

    shell

    n  shell模块和command模块使用方法基本一致,但是他可以支持shell的特殊符号,如: |  && 等

    例子:ansible webservers -m shell  -a “cd /opt/ && touch lixiang”

    service

    n  service模块用来管理centos上的服务的启动、关闭、重启和重载

    n  选项:

    u  name: 服务名字

    u  state:  started(启动)  stopped(停止) restarted(重启)  reloaded(重载)

    u  enabled: 默认是no,将服务设置为开机自启

    file

    n  file模块用来创建文件、目录、链接文件

    n  选项:

    u  group:定义文件/目录的属组

    u  mode:定义文件/目录的权限

    u  owner:定义文件/目录的属主

    u  path:必选项,定义文件/目录的路径

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

    u  src:要被链接的源文件的路径,只应用于state=link的情况

    u  dest:被链接到的路径,只应用于state=link的情况

    u  state:

    l  directory:如果目录不存在,创建目录

    l  file:即使文件不存在,也不会被创建

    l  link:创建软链接

    l  hard:创建硬链接

    l  touch:如果文件不存在,则会创建一个新的文件,如果文件或目录已存在,则更新其最后修改时间

    l  absent:删除目录、文件或者取消链接文件

    user

    n  user模块用来创建用户

    n  选项:

    u  home: 指定创建的家目录

    u  groups:指定用户组

    u  uid:指定UID

    u  password:设置密码,密码必须是密文

        Openssl passwd

    u  name:创建的用户名字

    u  createhome:是否创建家目录(yes/no)

    u  state:  是创建还是删除。(present,absent),默认是创建

    u  shell: 指定用户登录的shell环境

    u  remove:删除用户家目录,默认为no

    group

    n  group用来创建用户组

    n  选项

    u   gid:指定用的gid。 

    u  name:指定用户名。 

    u  state:是创建还是删除。(present,absent) 

    copy

    n  copy模块用来复制文件至目标主机

    n  选项:

    u  src:文件在管理主机的据对路径或者相对路径

    u  dest:将文件复制到目标主机的路径

    u  backup:是否将目标主机的同名文件备份,默认为no

    u  mode: 授权

    u  directory_mode:递归授权

    n  例子:

    ansible  webservers  -m copy  -a ‘src=/root/nginx.sh  dest=/opt/’

    unarchive

    n  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'

  • 相关阅读:
    在jenkins和sonar中集成jacoco(一)--使用jacoco收集单元测试的覆盖率
    持续集成一天一美元
    在jenkins和sonar中集成jacoco(二)--在jenkins中生成jacoco覆盖率报告
    day02--课后练习
    python之路-day02
    day01--课后练习
    python之路-day01
    python-FTP程序
    python-选课系统
    python- ATM与购物商城
  • 原文地址:https://www.cnblogs.com/tyk3201/p/12383081.html
Copyright © 2011-2022 走看看