Ansible:命令应用基础

ansible:命令应用基础
ansible-doc -l; #:模块查看命令
ansible-doc -s: #指明模块名称显示模块用法
ansible-doc -h: #查看命令帮助

语法ansible <host-pattern> [-f forks] [-m module_name] [-a args]
    -f forks:启动的并发线程数;
    -m module_name:要使用的模块;
    -a args:模块特有的参数;
    示例:ansible  172.16.100.9 -m command -a ‘date‘

    args:
        key=value

        注意:command模块要执行命令无须为key=value格式,而是直接给出要执行的命令即可;

    常用模块:
        command :  命令模块,默认模块,用于在远程执行命令;
            -a ‘COMMAND‘
            ansible -a ‘date‘

        user:实现用户账户管理
            name=:指明创建的用户的名字
            -a ‘name= state={present|absent} system= uid=‘
            ansible 172.16.100.9 -m user -a ‘name="user1" state=absent‘

        group:创建组
            -a ‘name= gid= state= system=‘
            ansible 172.16.100.9 -m group -a ‘name=mysql gid=306 system=yes‘

        cron :
            state:
                present:安装
                absent:移除
            -a ‘name= minute= hour= day= month= weekday= job= user= state=‘
            */10 * * * * /bin/echo "Hello zhanx"
            ansible 172.16.100.9 -m cron -a ‘minute="*/10" job="/bin/echo hello" name="test cron job" state="present"‘

        copy:文件复制
            src=:定义本地源文件路径
            dest=:定义远程目标文件路径
            content=:取代src=,表示直接用此处指定的信息生成为目标文件内容;
            -a ‘dest= src= mode= owner= group=‘
            #ansible all -m copy -a ‘src=/etc/fstab dest=/tmp/fstab.ansible owner=root mode=640‘
            #ansible all -m copy -a ‘content="Hello Ansible\nHi zhanx" dest=/tmp/test.ansible‘

        file:设定文件属性
            path=:指明文件路径,可以使用name或dest来替换;

            创建文件的符号链接:
                src=:指明源文件;
                path=:指明符号链接文件路径
            -a ‘path= mode= owner= group= state={directory|link|present|absent} src=‘
            #ansible all -m file -a ‘path=/tmp/fstab.link src=/tmp/fstab.ansible    state=link‘

        ping:测试指定主机是否能连通
            没有参数
            # absible all -m ping 

        yum:安装程序包
            name=:指明要安装的程序包,可以带上版本号;
            state=:present,lastest表示安装,absent表示卸载;
            -a ‘name= state={present|latest|absent}‘
            #ansible all -m yum -a "name=telnet   state=absent"

        service:指定服务的运行状态
            enabled=: 是否开机自动启动,取值为true或者false;
            name=:服务名称
            state=:状态,取值有started,stoped,restarted;
            -a ‘name= state={started|stopped|restarted} enabled=‘
            # ansible 172.16.100.9 -m service -a ‘enabled=true name=httpd state=started‘

        shell:在远程主机上运行命令
            尤其是用到管道等功能的复杂命令使用
            -a ‘COMMAND‘
            #ansible all -m shell -a ‘echo zhanx | passwd  --stdin user‘

        script:将本地脚本复制到远程主机并运行;
            注意:基于相对路径
            -a ‘/path/to/script‘
            #ansible all -m script -a "test.sh"

        setup:收集每个远程主机可用的facts
            每个被管理节点在接收并运行管理命令之前,会将自己主机相关信息:
            如操作系统版本、IP地址等报告给远程的ansible主机;
            #ansible all -m setup

原文地址:http://blog.51cto.com/zhanx/2344688

时间: 2024-10-10 03:49:08

Ansible:命令应用基础的相关文章

ansible命令应用基础

ansible命令应用基础:    Usage: ansible <host-pattern> [-f forks] [-m module_name][-a args]        -f forks:启动的并发线程数        -m module_name:要使用的模块        -a args:模块特有的参数        常见模块:ansible-doc -s 模块    --查看模块使用参数command:命令模块,默认模块,用于在远程执行命令:#ansible all -a

自动化运维系列之Ansible命令应用基础(模块的应用)【持续更新中···】

自动化运维系列之Ansible命令应用基础(模块的应用) 模块简介 Ansible可以使用命令行方式进行自动化管理,基本语法如下: ansible <host-pattern> [-m module_name] [-a args] <host-pattern> 对哪些主机生效 [-m module_name] 需要使用的模块 [-a args] 模块特有的参数,这里在使用时需加单引号哦! Ansible的命令行管理工具都是由一系列模块.参数所支持的,可以在命令行后加上-h或--he

ansible命令基础

7.ansible命令基础7.1语法7.1.1ansibleansible <host-pattern> [-f forks] [-m module_name] [-a args]host-pattern:对哪些主机生效,可以直接跟ip,可以调用hosts文件中的定义-f forks:并发线程数,即一批处理多少个主机-m module:使用哪个模块-a args:模块特有的参数,有的有默认值-i 文件名 相当于-inventory-file=文件,可以指定hosts文件7.1.2ansible

【mac】ansible安装及基础使用

安装 环境释放 mac 10.12.5 #more /System/Library/CoreServices/SystemVersion.plist 安装命令 #ruby -e "$(curl --insecure -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" #brew update #brew install Ansible 安装后hosts默认访问位置 /usr/local/et

Ansible 四(ansible命令参数)

ansible命令参数: Usage: ansible <host-pattern> [options] Options: -m MODULE_NAME, --module-name=MODULE_NAME 要执行的模块,默认为command -a MODULE_ARGS, --args=MODULE_ARGS 模块的参数 -u REMOTE_USER, --user=REMOTE_USER ssh 连接的用户名,默认用root,ansible.cfg 中可以配置 -k, --ask-pass

华为-命令行基础(一)

====================命令行基础===================== 设置时钟:<AR1>clock timezone BJ add 08:00:00<AR1>clock datetime 17:36 2016-10-22<AR1>display clock 2016-10-22 17:36:20SaturdayTime Zone(8) : UTC+08:00<AR1>clock timezone BJ add 08:00:00 &l

Linux命令行基础 、 基础命令操作 、 目录文件基本操作

  Linux命令行基础 基础命令使用 目录和文件基本管理 #################################################   一.Linux命令行基础   1. 什么是命令.命令行    命令:能够被Linux系统识别,用来完成某一类功能的指令或程序                           |--> 依赖于Shell解释器,查看:cat/etc/shells 默认为 /bin/bash    命令行:用户输入的命令及相关参数,按Enter键提交的

cmd命令netsh基础教程

1.网络设置的备份与恢复 备份操作: netsh dump >bak12.txt 恢复操作: nesh exec bak12.txt 2.用命令改IP,如下: C:/>netsh (进入设置模式) netsh>interface interface>ip interface ip>set address "本地连接" static 10.1.1.111 255.255.255.0 10.1.1.254 interface ip>exit C:/>

Linux命令工具基础04 磁盘管理

Linux命令工具基础04 磁盘管理 日程磁盘管理中,我们最常用的有查看当前磁盘使用情况,查看当前目录所占大小,以及打包压缩与解压缩: 查看磁盘空间 查看磁盘空间利用大小 df -h -h: human缩写,以人类易读方式显示结果(既带单位:比如M/G,如果不加这个参数,显示的数字以B为单位) $df -h /opt/app/todeav/config#df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-