📅  最后修改于: 2020-11-02 03:12:30             🧑  作者: Mango
Ad hoc命令是可以单独运行以执行快速功能的命令。这些命令无需稍后执行。
例如,您必须重新启动所有公司服务器。为此,您将从’ / usr / bin / ansible ‘运行Adhoc命令。
这些临时命令不用于配置管理和部署,因为这些命令是一次性使用的。
ansible-playbook用于配置管理和部署。
一次以12个并行派生重新启动公司服务器。为此,我们需要设置SSHagent进行连接。
$ ssh-agent bash
$ ssh-add ~/.ssh/id_rsa
要在12个并行fork中为组“abc”中的所有公司服务器运行重新引导-
$ Ansible abc -a "/sbin/reboot" -f 12
默认情况下,Ansible将以当前用户帐户运行上述临时命令。如果要更改此行为,则必须在临时命令中传递用户名,如下所示:
$ Ansible abc -a "/sbin/reboot" -f 12 -u username
您可以使用Ad-hoc命令在多台计算机上并行处理SCP (安全复制协议)大量文件。
$ Ansible abc -m copy -a "src = /etc/yum.conf dest = /tmp/yum.conf"
$ Ansible abc -m file -a "dest = /path/user1/new mode = 777 owner = user1 group = user1 state = directory"
$ Ansible abc -m file -a "dest = /path/user1/new state = absent"
临时命令可用于yum和apt。以下是一些使用yum的临时命令。
以下命令检查是否已安装yum软件包,但不会对其进行更新。
$ Ansible abc -m yum -a "name = demo-tomcat-1 state = present"
以下命令检查软件包是否已安装。
$ Ansible abc -m yum -a "name = demo-tomcat-1 state = absent"
以下命令检查已安装软件包的最新版本。
$ Ansible abc -m yum -a "name = demo-tomcat-1 state = latest"
事实可用于在剧本中实现条件语句。您可以通过以下Ad-hoc命令找到所有事实的即席信息-
$ Ansible all -m setup