Ad-Hoc 点对点模式

1、Ad-Hoc 点对点模式简介:

Ad-Hoc 模式是使用 ansible 命令行工具执行单个任务或命令,Ad-Hoc 任务通常用于快速的、临时性的操作,例如文件复制、软件包安装、服务启停等。

ansible  <目标主机或主机组>  -m  <模块名称>  -a  <模块参数>

● <目标主机或主机组> 是指定要在哪些主机上执行任务;

● <模块名称> 是指定要使用的 Ansible 模块;

● <模块参数> 是模块所需的参数,具体取决于所选的模块。

2、复制模块:

(1) 简介:

Ansible 的复制模块(copy module)用于将文件或目录从 Ansible 服务器上复制到目标主机上。

ansible-doc copy:记录 copy 模块的文档,包括模块的描述、参数、示例以及其他相关信息。

(2) 示例:

将文件从服务器复制到 webservers 主机组

ansible  webservers  -m  copy  -a  'src=/etc/hosts  dest=/tmp/2.txt  owner=root  group=bin mode=700'

● -m copy:指定要使用的 Ansible 模块,即copy模块,它用于复制文件;

● -a:表示接下来将提供给模块的参数;

● src=/etc/hosts:ansible 服务器上复制的文件的路径;

● dest=/tmp/2.txt:目标主机存放文件的路径;

● owner=root group=bin:指定了复制后的文件的所有者为root用户,所属组为bin组;

● mode=700:指定了复制后的文件的权限。

ansible  webservers  -m  copy  -a  'src=/etc/hosts dest=/tmp/2.txt  owner=root  group=bin mode=700  backup=yes'

● backup=yes:这个部分指示 Ansible 在复制文件时创建备份文件。如果目标主机上已经存在同名文件,Ansible 将创建一个备份文件,以确保不会覆盖原始文件。

3、用户模块

(1) 简介:

在 Ansible 中,用户模块用于管理系统上的用户账户,使用用户模块可以创建、删除、修改和管理用户账户的各种属性。

(2) 用户管理:

① 创建用户

ansible  webservers  -m  user  -a  'name=abc state=present'

● -m user:指定了要使用 user 模块,管理用户账户;

● state=present:指定了要创建的用户的状态,即"present",如果不存在的话就创建该用户。

② 修改密码

echo  '555'  |  openssl  passwd  -1  -stdin

使用哈希算法对密码进行加密

③ 修改用户信息

例:修改 shell

ansible  webserver  -m  user  -a  'name=abc shell=/sbin/nologin append=yes

append=yes:如果用户已经存在,则追加修改现有用户的信息,而不是创建一个新用户。

④ 删除用户

ansible  webservers  -m  user  -a  'name=abc state=absent'

● state=absent 的含义是删除用户账户。如果该用户存在,Ansible将尝试删除,如果不存在,则不会执行任何操作。

4、软件包管理

(1) ansible-doc yum:

用于查看 Ansible 中 yum 模块的文档,包括模块的参数、用法示例以及其他相关信息。

(2) 示例:

ansible  host1  -m  yum  -a  'name="*" state=latest'

这个命令会连接到 host1 主机,并使用 yum 模块来更新所有已安装的软件包到它们的最新版本。

● name="*":操作的软件包名称是通配符 "*",也就是所有软件包。host1 将更新所有已安装的软件包。

● state=latest:这个命令的目标是确保所有已安装的软件包都是最新版本。

如果要安装具体软件包,可将 "*" 换成软件包名

例:ansible host1 -m yum -a 'name="httpd" state=latest'

5、服务模块

(1) ansible-doc service:

用于查看 Ansible 中与服务管理相关的模块的文档。

(2) 示例:

ansible  host1  -m  service  -a  'name=httpd state=started'

● state=started:启动应用 ;state=stopped :停止应用 ;state=restarted:重启应用

ansible  host2  -m  service  -a  'name=httpd state=started enabled=yes'

● enabled=yes:开机启动 ;enabled=no:禁止开机启动

6、文件模块

ansible  host1  -m  file  -a  'path=/tmp/88.txt mode=777 state=touch'

● path=/tmp/88.txt: 要操作的文件路径;

● state=touch: 创建文件,如果指定路径上的文件不存在,Ansible 将会创建一个空的文件;如果文件已存在,Ansible 不会修改文件的内容,但会将该文件的时间戳更新为当前时间。

ansible  host1  -m  file  -a  'path=/tmp/99 mode=777 state=directory'

在远程主机 host1 的 /tmp 目录下创建一个名为 99 的目录,并将该目录的权限设置为 777。

7、收集模块

(1) ansible-doc setup:

检索关于远程主机的信息,例如操作系统类型、主机名、网络接口信息、CPU 和内存信息等。

(2) 示例:

ansible host3 -m setup:查询远程主机所有信息

ansible  host3  -m  setup  -a  'filter=ansible_all_ipv4_addresses'

● filter=ansible_all_ipv4_addresses:过滤 setup 模块返回的系统信息(facts)。限制返回的信息只包括远程主机的 IPv4 地址,而不包括其他系统信息。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值