SSHユーザを指定

Ansibleにおいて表題の通り。

■ 環境

  • Ansible 2.3.1.0
  • Mac OSX El Capitan

■ ansible.cfg

開発環境で主に使うので、”ansible.cfg“には下記を書いている。

$ cat ansible.cfg
[defaults]
inventory = hosts
remote_user = vagrant
private_key_file = ~/.vagrant.d/insecure_private_key
host_key_checking = False
retry_files_enabled = False
$

いざ開発したものを試しに別環境にやってみようかと思うと、”ansible.cfg“の設定が優先されてしまうのでたまに困ることがある。

よって”hosts“に下記のように”variable“として書くことにしている。

$ cat hosts
  :
[group1]
host001
host002

[group1:vars]
ansible_ssh_private_key_file=~/.ssh/id_rsa
ansible_ssh_user=root
$

host001“等は”~/.ssh/config“の方に書いている。

もうちょっとうまい方法はないのであろうか。

以上。

■ 関連

ansible_ssh_private_key_file

InventoryFileでグループ変数