当前位置: 首页>编程语言>正文

ansible playbook 提权 再降权 ansible权限管理


一、Ansible 管理命令

Ansible 管理命令有如下几个: 
(1)ansible:这个命令是日常工作中使用率非常高的命令之一,主要用于临时一次性操作; 
(2)ansible-doc:Ansible 模块文档说明,针对每个模块都有详细的用法说明和应用案例介绍; 
(3)ansible-galaxy:可以简单的理解为 Github 或 PIP 的功能,是 Ansible 官方一个分享 role 的功能平台。可以通过 ansible-galaxy 命令很简单的实现 role 的分享和安装; 
(4)ansible-playbook:是日常应用中使用频率最高的命令,其工作机制是,通过读取预先编写好的playbook文件实现批量管理; 
(5)ansible-pull:Ansible 的另一种工作模式,pull 模式,Ansible 默认使用 push 模式; 
(6)ansible-vault:主要用于配置文件加密; 
(7)ansible-console:让用户可以在 ansible-console 虚拟出来的终端上像 Shell 一样使用 Ansible 内置的各种命令。

下面对常用的管理命令做介绍。 二、ansible 命令

ansible 是日常工作中使用率非常高的命令之一,其主要在如下场景使用: 
(1)非固化需求 
(2)临时一次性操作 
(3)二次开发接口调用

该命令使用方式如下:



ansible <host-pattern> [options]



比如:工作中我临时想查看 web1 服务器是否存活,或我想临时复制本地的 /etc/fstab 到 web1 服务器的 /tmp 目录下做测试等等。

具体的命令使用如下: 
检查服务器存活



ansible web1 -m ping



复制本地文件到远程



ansible web1 -m copy -a "src=/etc/fstab dest=/tmp/fstab owner=root group=root mode=644 backup=yes"



详细参数可以查看帮助:



[root@ansible-manager ~]# ansible -h Usage: ansible <host-pattern> [options] Define and run a single task 'playbook' against a set of hosts Options: -a MODULE_ARGS, --args=MODULE_ARGS module arguments --ask-vault-pass ask for vault password -B SECONDS, --background=SECONDS run asynchronously, failing after X seconds (default=N/A) -C, --check don't make any changes; instead, try to predict some of the changes that may occur -D, --diff when changing (small) files and templates, show the differences in those files; works great with --check -e EXTRA_VARS, --extra-vars=EXTRA_VARS set additional variables as key=value or YAML/JSON, if filename prepend with @ -f FORKS, --forks=FORKS specify number of parallel processes to use (default=5) ...... Some modules do not make sense in Ad-Hoc (include, meta, etc)



相关选项都有解释,这里不再详述。 三、ansible-doc 命令

ansible-doc 是 Ansible 模块文档说明,针对每个模块都有详细的用法说明及应用案例介绍,功能和 Linux 系统 man 命令类似。该命令使用方式如下:



ansible-doc [options] [module...]



ansible-doc 命令后跟[options]参数或[模块名],显示模块用法说明,具体示例如下:

列出支持的模块



ansible-doc -l



ping 模块功能说明



ansible-doc ping


四、ansible-playbook 命令

ansible-playbook 是日常应用中使用频率最高的命令,其工作机制是通过读取预先编写好的 playbook文件实现批量管理。要实现的功能与命令 ansible 是一样的,可以理解为按一定条件组成的 ansible 任务集

ansible-playbook 命令后跟 YML 格式的 playbook 文件,执行事先编排好的任务集,命令使用方式如下:



ansible-playbook playbook.yml



具体示例如下: 
执行 nginx.yml 这个 playbook 中定义的所有任务集



ansible-playbook nginx.yml



playbook 具有编写简单、可定制性高、灵活方便同时可固化日常所有操作的特点,运维人员应熟练掌握。 五、总结

本节介绍了 Ansible 管理的系列命令,并就常用的 ansible 、ansible-doc、ansible-playbook 命令做了简单介绍。下一节,我们学习 Inventory。

参考文档: 
http://www.ilurker.cn/?post=283  http://www.sohu.com/a/128270825_610730 
《Ansible 权威指南》


https://www.xamrdz.com/lan/53e1934226.html

相关文章: