Ansible的常用模块与命令


ping模块:判断主机是否连通

使用示例

1、查看目标主机是否连通。返回SUCCESS表示连通。

ansible

command模块:执行Linux基础命令

模块说明

command模块只能执行Linux基础命令,不支持包含变量(如$PATH)、重定向、管道符等操作符的复杂shell命令。command模块是ansible默认模块,−m command参数可省略不写。

参数说明

  • chdir:执行命令前,切换到此目录。
  • creates:当文件存在时,不执行命令。
  • removes:当文件不存在时,不执行命令。
  • warn:启用或禁用任务警告,false表示禁用警告。

使用示例

1、命令:执行命令。

ansible

2、命令 chdir=目标目录:先切换至目标目录再执行命令。

ansible

3、命令 warn=false:禁用任务警告。

ansible

4、命令 removes=文件名:当文件不存在时,不执行命令。

ansible

shell模块:执行shell命令

模块说明

与command模块只能执行Linux基础命令不同,shell模块支持复杂的shell命令。

参数说明

  • chdir:执行命令前,切换到此目录。
  • creates:当文件存在时,不执行命令。
  • removes:当文件不存在时,不执行命令。
  • warn:启用或禁用任务警告,false表示禁用警告。

使用示例

1、管道符命令。

ansible

2、重定向命令。

ansible

3、多行命令。

ansible

4、命令 removes=文件名:当文件不存在时,不执行命令。

ansible

copy模块:拷贝本机文件至目标主机

模块说明

将本机文件或目录拷贝至目标主机。

参数说明

  • src:源文件或目录,可以使用相对路径或绝对路径。
  • dest:目标文件或目录。
  • mode:目标文件或目录的权限。
  • owner:目标文件或目录的属主。
  • group:目标文件或目录的属组。
  • content:复制到目标文件的内容。
  • backup:目标文件覆盖前先备份。

使用示例

1、src=源文件 dest=目标目录:将本机源文件拷贝至目标主机的目标目录。

ansible

2、src=源文件 dest=目标文件:将本机源文件拷贝至目标主机的目标文件中。

ansible

3、src=源文件 dest=目标文件 group=组名 owner=属主 mode=模式:将本机源文件拷贝至目标主机的目标文件中并设置权限。

ansible

4、src=源目录 dest=目标目录:将本机源目录及文件(源目录不以斜杠结尾)拷贝至目标主机的目标目录。

ansible

5、src=源目录 dest=目标目录:将本机源目录下的文件(源目录以斜杠结尾)拷贝至目标主机的目标目录,不拷贝目录。

ansible

6、content=文件内容 dest=目标文件:将文件内容拷贝至目录文件中。

ansible

7、content=文件内容 dest=目标文件 group=组名 owner=属主 mode=模式:将文件内容拷贝至目录文件中并设置文件权限。

ansible

file模块:设置文件或目录的属性

参数说明

  • path:目标主机的文件或目录。
  • mode:目标文件或目录的权限。
  • owner:目标文件或目录的属主。
  • group:目标文件或目录的属组。
  • state:设置文件状态(touch−创建文件或更改时间戳,directory−创建目录,absent−删除目录或文件)。

使用示例

1、path=目标文件 state=touch:创建文件或更改时间戳。

ansible

2、path=目标文件 state=touch group=组名 owner=属主 mode=模式:创建文件或更改时间戳并设置权限。

ansible

3、path=目标文件 group=组名 owner=属主 mode=模式:改变目录或文件的权限。

ansible

4、path=目标文件 state=directory:创建目录。

ansible

archive/unarchive模块:压缩与解压缩文件

参数说明

  • path:需要压缩的文件或目录。
  • dest:压缩的目标文件或目录,默认为tar.gz格式;解压的目标目录。
  • src:解压的源文件。
  • remote_src:解压的源文件是否位于目标主机上,默认为否。

使用示例

1、path=源文件或目录 dest=压缩的目标文件:将源文件或目录压缩至目标文件中。

ansible

2、src=源文件 dest=解压缩的目标目录 remote_src=yes:将目标主机的源文件解压缩至目标目录中。

ansible

yum模块:安装与卸载软件

参数说明

  • name:安装或卸载的软件名称。
  • list:查看安装的软件。
  • state:设置软件状态(installed−安装软件,removed−卸载软件)。

使用示例

1、name=软件名称 state=installed:安装软件。

ansible

2、name=软件名称 state=removed:卸载软件。

ansible

3、list=软件名称:查看软件。

ansible

systemd模块:服务管理

参数说明

  • name:服务名称。
  • enabled:是否开机自动启动。
  • state:设置服务状态(started−启动服务,stopped−停止服务)。

使用示例

1、name=服务名称 state=started:启动服务。

ansible

2、name=服务名称 state=stopped:停止服务。

ansible

3、name=服务名称 enabled=yes:开机自动启动服务。

ansible

发表评论

评论数量:0