SSH connection slow after going from 1.6 to 1.8

Hi there!

I’ve these options in my ansible.cfg:

[ssh_connection]
pipelining=True
ssh_args=-o ForwardAgent=yes -o ControlMaster=auto -o ControlPersist=7200s

On an older version (Ansible 1.6 development, shortly before 1.7 was final), these settings make deploying relatively fast.

On Ansible 1.8 (devel fe0ab8e750, from earlier today), deploying is really, really, really slow.

How can update the settings/has configuration changed?

Thanks,
Thomas

What is your control machine (machine you are running ansible from)?

Ansible 1.8 now chooses paramiko as the “smart” transport when running from Mac. If this is your case, you will need to set transport = ssh under defaults as well.

You can verify if you are using ssh or paramiko by running with -vvvv, which may help trace things down regardless of this being the case.

“Ansible 1.8 now chooses paramiko as the “smart” transport when running from Mac. If this is your case, you will need to set transport = ssh under defaults as well.”

Actually it doesn’t.

Darwin has a somewhat common error where “askpass” for SSH can occasionally kernel panic the machine (I’m almost positive this is due to iCloud keychain - possibly a keychain plugin - or something like it), so we’ll use paramiko by default there in 1.8 to avoid this happening.

We’ve considered making it do this only if it thinks it needs a password, but that’s possibly confusing.

I think it’s time to make that change now though, and I’ll see that we do.

Filed here for reference:

https://github.com/ansible/ansible/issues/9470