微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Ansible 常用模块

1. command 模块 Command 模块在远程主机执行命令,不支持管道,重定向等 Shell 的特性,常用参数如下(不支持管道,不建议使用)。 1. chdir:在远程主机上运行命令前要提前进入的目录 2. creates:在命令运行时创建一个文件,如果文件已经存在,则不会创建任务 3. removes:在命令运行时移除一个文件,如果不存在,则不会执行移除任务 4. executeble:指明运行命令的 Shell 程序   2. Shell 模块 shell 模块在远程主机执行命令,相当于调用远程主机的 shell 进程,然后在该shell 下打开一个子 shell 运行命令,和 command 模块的区别是它支持 shell 特性,如管道,重定向等。   3. raw 模块 最原始的方式运行命令(不依赖 python,仅通过 ssh 实现,效率比较高)   4. copy 模块 copy 模块用于复制指定主机文件到远程主机的指定位置,常见的参数如下: 1. dest:指出复制文件的目标目录位置,使用绝对路径。如果源是目录,指定目标也要是目录,如果目标文件已经存在会覆盖原有内容。 2. src:指出源文件的路径,可以使用相对路径或绝对路径支持直接指定目录,如果源是目录则目标也要是目录。 3. mode:指出复制时,目标文件的权限 (可选) 4. owner:指出复制时,目标文件的属主 (可选) 5. group:指出复制时,目标文件的属组 (可选) 6. content:指出复制到目标主机上的内容,不与 src 一起使用,相当于复制 content 指明的数据到目标文件中。   提示: 参数:backup=yes 意思是,如果目标路径下,有与我同名但不同内容文件时,在覆盖前,对目标文件先进行备份。 所有被管理节点必须安装 libselinux-python 包   5. hostname 模块 hostname 模块用于管理远程主机上的主机名,常用参数如下: 1. name:指明主机名   6. yum 模块 Yum 模块基于 yum 机制,对远程主机管理程序包,常用参数如下: 1. name:程序包的名称,可以带上版本号,如不指定版本号认安装为最新版本。 2. state=present | latest | absent:指明对程序包执行的操作,pressent 表示安装程序包,latest 表示安装最新版本的程序包,absent 表示卸载程序包。 3. disablerepo:在用 yum 安装时禁用某个仓库的 ID。 4. enablerepo:在用 yum 安装时启用某个仓库的 ID。 5. conf_file: yum 运行时的配置文件而不是使用认的配置文件 6. diable_gpg_check_=yes | no:是否启用完整性校验功能。   注意: 实验前要在 client 端配置 yum 仓库 管理员只是发送 yum 命令到被管理端,被管理端要存在可用的 yum 仓库才可以成功安装。   7. service 模块 service 模块为用来管理远程主机上的服务的模块,常见参数如下: 1. name:被管理的服务名称。 2. state=started | stopped | restarted:动作包含启动关闭或重启。 3. enabled=yes | no:表示是否设置该服务开机自启动。 4. runlevel:如果设定了 enabled 开机自启动,则要定义在哪些运行目标下自启动。   8. User 模块 User 模块用于管理远程主机上的用户账户,常见参数如下: 1. name:必选参数 账号名称 2. state=present | absent:创建账号或者删除账号,present 表示创建,absent 表示删除。 3. system=yes | no:是否为系统账号。 4. uid:用户的 UID。 5. group:用户的基本组。 6. groups:用户的附加组。 7. shell:认使用的 shell。 8. home:用户的家目录。 9. move_home=yes | no:如果设置的家目录已经存在,是否将已存在的家目录进行移动。 10. password:用户密码,建议使用加密后的字符串。 11. comment:用户的注释信息。 12. remove=yes | no:当 state=absent 时,是否删除用户的家目录。   案例: ansible calm -m user -a 'name=user1 system=yes uid=502 group=root group=sshd shell=/sbin/nologin home=/home/user1 password=user1 comment="test user"' //ansible 命令字 对 calm 组进行操作 -m 指定模块为 user -a 信息 ‘用户名为 user1 是系统账号 uid 是 502 用户的基本组是 root 附加组是 sshd shell 是/sbin/nologin 家目录是 /home/user1 注释信息是测试用户

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐