如果我在playbook中定义了多个任务,ansible是否为每个任务创建了一个单独的ssh连接。如果是,那不是性能问题。
因为每当我运行剧本时我都会做一个详细的o / p,所以我发现每个任务。 "为用户建立SSH连接:gparasha" 我理解错了。
答案 0 :(得分:4)
默认情况下,Ansible会为每个任务创建一个新连接。它利用SSH connection multiplexing来显着减少建立新连接所需的时间。
如果启用pipelining功能,那么在许多情况下,Ansible将能够为多个任务重用单个ssh连接(尽管在某些情况下,它仍然需要生成新连接)。 / p>
要启用流水线操作,您需要在ansible.cfg
中添加以下内容:
[ssh_connection]
pipelining = True