如果希望在控制主机本地运行一个特定的任务,可以使用local_action语句。 假设我们需要配置的远程主机刚刚启动,如果我们直接运行playbook,可能会因为sshd服务尚未开始监听而导致失败,我们可以在控制主机上使用如下示例来等待被控端sshd端口监听: - name: wait for ssh server to be running wait_for port: 22 host: "...
- name: start_nginx shell: /usr/local/nginx/sbin/nginx - name: stop_nginx shell: /usr/local/nginx/sbin/nginx -s stop - name: reload_nginx shell: /usr/local/nginx/sbin/nginx -s reload 1. 2. 3. 4. 5. 6. 7. 8. (3) 在roles/nginx/tasks/main.yaml下添加添加notify任务 特别提示:...
shell:echo"test">/root/test.list delegate_to: 172.16.60.245 则上面的shell模块的task任务只会在172.16.60.245这台节点上执行,test_server组内其他的机器不会执行shell任务。 --- 如果"delegate_to: 127.0.0.1"则可以用local_action来代替。即下面两个配置效果是一样的!! [root@hostname~]# cat /etc/ans...
local_action: shell ls /var/lib/jenkins/workspace/ttt/target/alarmprovince*.jar register: file_name - name: 删除目标主机上面的备份jar包 shell: rm -f /tmp/alarmprovince.jar.bak ignore_errors: true - name: 备份原来jar包 shell: mv /tmp/alarmprovince.jar /tmp/alarmprovince.jar.bak ignore_e...
- name: local_action local_action: shell echo "local_action. {{inventory_hostname}} $(hostname)" >> /tmp/local.log 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 这个例子中,依次使用了connection、delegate_to和local_action三种方式,还使用了一个变量{{inventory_hostname}},这是ansible...
shell: netstat -lntp register: host_port - name: "print host port" debug: #msg: "{{ host_port }}" # 输出全部信息 #msg: "{{ host_port.cmd }}" # 引用方式一 msg: "{{ host_port['stdout_lines'] }}" # 引用方式二 connection: local ...
ansible 192.168.0.123 -m shell -a "uname -a" ansible常用模块 command、shell、raw、script执行shell命令 copy:复制文件到远程主机,可以改权限等 file设置文件目录属性等 fetch 从远程某主机获取文件到本地 service 服务程序管理,启动停止重启服务等操作 ...
一是adhoc(点对点模式):此模式相当于对管理主机执行单个的shell命令 二是playbook(剧本模式):该模式应用较多,该模式是指将一系列任务整合形成一个剧本,以此来达成某种功能(譬如部署某个服务,数据库备份等)的目的。 上述两种模式可类比于一个是执行单个shell命令,一个是shell脚本。
ansible ip -m shell -a 'echo "123456"|passwd --stdin root' 第三种方式是利用Raw模块,Raw支持管道命令。Raw有很多地方和Shell类似,但是如果是使用老版本Python(低于2.4),无法通过Ansible的其他模块执行命令,则需要先用到Raw模块远程安装Python-sim-plejson后才能受管;又或者是受管端是路由设备,因为没有安装Pyt...
ansible ip -m shell -a 'echo "123456"|passwd --stdin root' 第三种方式是利用Raw模块,Raw支持管道命令。Raw有很多地方和Shell类似,但是如果是使用老版本Python(低于2.4),无法通过Ansible的其他模块执行命令,则需要先用到Raw模块远程安装Python-sim-plejson后才能受管;又或者是受管端是路由设备,因为没有安装Pyt...