Ansible Ad-Hoc 常用命令

Ansible Ad-Hoc常用命令

Ansible可以通过命令行形式使用它的模块,Ansible自带了很多模块,可以直接使用这些模块。目前Ansible已经自带了259个模块,可以通过ansible-doc -l 显示所有自带的模块,也可以通过ansible-doc -s 模块名 查看模块的介绍及使用示例。

Ansible命令行的基本格式如下:

ansible <host-pattern> [-m modult_name] [-a agrs]

基本语法说明:

<host-pattern> :主机
[-m modult_name] :模块名
[-a agrs]:模块的参数

列出可使用的模块名称:

ansible-doc -l

列出某个模块的描述信息和使用示例:

ansible-doc -s yum

command模块(默认)

Ansible管理工具使用-m选项来指定使用模块,默认使用command模块,即-m选项省略时会运行此选项,用于在被管理节点上运行命令

1.对所有被管节点连通性进行测试

ansible all -m ping

2.查询被管节点的系统时间

ansible webserver -m command -a ‘date‘

cron模块 计划性任务 (两种状态state: present:添加,absent:移除)

Ansible中的cron模块用于定义计划性任务。其中有两种状态(state):present表示添加(省略状态时默认使用),absent表示移除

1.添加计划性任务

ansible webserver -m cron -a ‘minute="*/10" job="/usr/bin/echo hello" name="test cron job"‘

2.查询系统计划性任务

ansible webserver -a ‘crontab -l‘

3.移除该计划性任务

ansible webserver -m cron -a ‘minute="*/10" job="/usr/bin/echo hello" name="test cron job" state=absent‘

user模块

Ansible中的user模块用于创建新用户和更改、删除已存在的用户。

1.创建用户user1

ansible webserver -m user -a ‘name="user1"‘


2.删除用户mysql

ansible webserver -m user -a ‘name="user1" state=absent‘

group模块

Ansible中的group模块用于对用户组进行管理

1.创建mysql组

ansible webserver -m group -a ‘name=mysql gid=306 system=yes‘

2.新建mysql组的user2用户

ansible webserver -m user -a ‘name=user2 uid=306 system=yes group=mysql‘

copy模块

Ansible中的copy模块用于实现文件复制和批量下发文件,其中使用src定义本地源文件路径,dest定义被管理主机文件路径,使用content则是通过指定信息内容来生成目标文件

1.复制文件

ansible webserver -m copy -a ‘src=/etc/fstab dest=/tmp/fstab.txt owner=root mode=600‘

2.查看复制后的文件

ansible webserver -a ‘cat /tmp/fstab.txt‘

file模块

在Ansible中使用file模块来设置文件属性,其中path指定文件路径,src指定源文件路径,使用name和dest来替换创建文件的符号链接

1.修改文件的属性

ansible webserver -m file -a ‘owner=mysql group=mysql mode=644 path=/tmp/fstab.txt‘

2.创建连接文件

ansible webserver -m file -a ‘path=/tmp/fstab.link src=/tmp/fstab.txt state=link‘

3.创建空问文件/tmp/test1.txt

ansible webserver -m file -a ‘path=/tmp/test1.txt state=touch‘

ping模块

Ansible中使用ping模块来检测指定主机的连通性

ansible all -m ping

shell模块

Ansible中的shell模块可以在被管理节点上运行命令,并支持像管道符等功能的复杂命令。

1.创建user3用户

ansible webserver -m user -a ‘name=user3‘

2.设置user3用户的密码

ansible webserver -m shell -a ‘echo abc123|passwd --stdin user3‘

script模块

Ansible中的script模块可以将本地脚本文件复制到被管理节点上进行运行(需使用相对路径来指定脚本)。

yum模块

Ansible中的yum模块负责在被管理节点上安装与卸载软件包,但是需要提前在每个节点配置自己的yum仓库。其中name指定要安装的软件包名(可以指定版本号,不指定则安装最新版),state指定安装软件包的状态,present表示安装,absent表示卸载。

1.安装httpd软件包

ansible webserver -m yum -a ‘name=httpd‘

2.被控节点查询

rpm -q httpd

3.卸载httpd软件包

ansible webserver -m yum -a ‘name=httpd state=absent‘

service模块

在Ansible中使用service模块来控制管理服务的运行状态,其中enabled表示是否开启自启动(true或false),name定义服务名称,state指定服务状态(started、stoped、restarted)。

1.启动httpd服务并添加系统管理

ansible webserver -m service -a ‘enable=true name=httpd state=started‘

2.查看httpd启动状态信息

ansible webserver -a ‘service httpd status‘

原文地址:http://blog.51cto.com/10316297/2153160

时间: 2024-08-29 13:32:47

Ansible Ad-Hoc 常用命令的相关文章

ansible工具相关常用命令

uat(装在214上,在214上执行): cat  /etc/ansible/hosts 已添加组: [hdp] 172.30.64.214 ansible_ssh_user=root 172.30.64.213 ansible_ssh_user=root 172.30.64.216 ansible_ssh_user=root 172.30.64.220 ansible_ssh_user=root 测试: ansible  hdp  -m ping 172.30.64.220 | success

AD复制常用命令

1.手动强制同步两台域控 repadmin /replicate DC01 DC02 dc=contoso,dc=com

Ansible 七(ad hoc任务)

Ansible 七(ad hoc任务) ansible任务 ad hoc任务就是执行shell命令.或shell脚本. ansible ad-hoc命令 可以执行一些简单的命令,不需要将这些执行的命令特别保存下来. 适合执行简单的命令. ansible playbook 可以解决比较复杂的任务,可以将命令保存下来. 适合执行配置管理或部署客户机. 并行性和shell命令 重启webservers主机组里的所以机器,每次重启10台 ansible webservers -a "/sbin/rebo

ansible常用命令及模块的使用方法

ansible是指令核心部分,其主要用于执行ad-hoc(点对点)命令,即单条命令.默认后面需要跟主机和选项部分,默认不指定模块时,使用的是command模块. 2. 默认使用的模块是可以在ansible.cfg 中进行修改的. /etc/ansible/ansible.cfg ansible常用命令解析: 查看当前 ansible 都支持哪些模块: ansible-doc -l 查看某一模块可以使用的参数:ansible-doc -s copy (eg:copy模块) ansible用法: a

ansible常用命令

ad-hoc常用命令是用来解决一些常用的简单的配置命令,而且这些命令的执行速度很快.adhoc可以不用写playbooks,使用方便简单. man ansible ansible <pattern> [-f forks] [-m module] [-a args] ARGUMENTS pattern 组名,或者主机名,匹配hosts文件. OPTIONS -v --verbose 详细模式,如果命令执行成功,输出详细的结果, -i PATH --inventory=PATH 指定host文件的

ios开发环境配置及cordova安装与常用命令

一.ios开发环境配置 1.首先要有台Mac Book,如果有Mac Book,跳过步骤2.3.4,如果没有,执行步骤2.3.4: 2.下载并安装VMware Workstation,最好是下最新版本: 3.下载并安装unlock-all(VMware Workstation默认限制安装Mac虚拟机,需要安装此文件后解除限制); 4.下载Mac OS操作系统的镜像文件(需要是.ios文件)如果下载的是.dmg文件,需要用 anytoiso.exe工具转换成.ios文件,下载完成后在VMware

学习linux-基础六(常用命令:cp,mv,rm)

一.cp用于文件拷贝,分为单源文复制和多源复制 单源复制语法:cp [options]-[-t] source dest . 注意事项: 1如果dest不存在,则事先创建此文件,并复制源文件的数据流至dest中. 2如果dest是非目录文件,则会覆盖目标文件. 3如果dest是目录文件,则先在dest目录下创建一个与源文件同名的文件并将源文件数据流复制过来. cp /tmp/ou/111.txt文件到/etc/hh目录下 [[email protected] testdir]# mkdir /t

git常用命令及技巧

强推,即利用强覆盖方式用你本地的代码替代git仓库内的内容 git push -f git fetch --prune  #这样就可在本地删除在远程不存在的branch man git-fetch --prune After fetching, remove any remote tracking branches which no longer exist on the remote. -t, --tags Most of the tags are fetched automatically

Linux常用命令大全(全面)

笔者在这篇文章中跟大家分享一下接近 100 个 Linux 常用命令大全,希望可以帮助到大家. 1.ls [选项] [目录名 | 列出相关目录下的所有目录和文件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 -a 列出包括.a开头的隐藏文件的所有文件 -A 通-a,但不列出"."和".." -l 列出文件的详细信息 -c 根据ctime排序显示 -t 根据文件修改时间排序 ---color[=WHEN] 用色彩辨别文件类型 WHEN 可以是'ne