我有一个主机文件:
[synology]
192.168.1.111 ansible_sudo_pass='dfg78G67'
[web]
139.59.xx:8682 server_name=do1 sql_server_id=1 sql_auto_increment_increment=1
139.59.xx:8682 server_name=do2 sql_server_id=2 sql_auto_increment_increment=2
对于每个服务器,我都有他的ssh公钥
我想将它添加到我的synology
- name: "Add ssh key"
authorized_key: user=admin key="{{ lookup('file', 'ssh_keys/id_rsa_{{ item.server_name }}.pub') }}"
with_items: "{{ groups['web'] }}"
但Ansible回应
TASK [synology_init : Add ssh key] **********************
fatal: [192.168.1.111]: FAILED! => {"failed": true, "msg": "'unicode object' has no attribute 'server_name'"}
THX
答案 0 :(得分:0)
- name: "Add ssh keys"
authorized_key: user=admin key="{{ lookup('file', 'ssh_keys/id_rsa_{{ hostvars[item].server_name }}.pub') }}"
with_items: "{{ groups['web'] }}"