2016-12-29 209 views
6

我無法找到實際問題的地方。我下面的劇本執行我的私有密鑰:無法通過SSH連接到主機通過SSH與流行與Ansible Playbook

--- 
- hosts: localhost 
    gather_facts: false 
    sudo: yes 
    tasks: 
    - name: Install package libpcre3-dev 
     apt: name=libpcre3-dev state=latest 

但我得到下面的錯誤流浪Ubuntu的機器上:

PLAY [localhost] 
********************************************************************* 

TASK [Install package ] 
*************************************************** 
fatal: [vagrant]: UNREACHABLE! => {"changed": false, "msg": "Failed to 
connect to the host via ssh: Permission denied (publickey,password).\r\n", 
"unreachable": true} 
     to retry, use: --limit @/home/vagrant/playbooks/p1.retry 

PLAY RECAP 
********************************************************************* 
vagrant     : ok=0 changed=0 unreachable=1 failed=0 

這可能是什麼可能的建議?

回答

5

您正在使用SSH連接(默認爲Ansible)運行一個針對localhost的操作手冊,此操作失敗。很可能是因爲您從未在您的計算機上配置該帳戶以接受自己的密鑰。使用默認值,您需要將~/.ssh/id_rsa.pub添加到~/.ssh/authorized_keys

相反,要在本地添加connection: local到播放:

--- 
- hosts: localhost 
    connection: local 
    tasks: 
    - debug: 

,它會給你一個適當的迴應:

TASK [debug] ******************************************************************* 
ok: [localhost] => { 
    "msg": "Hello world!" 
} 
+1

正確的。我在playbook中添加了連接:local line,現在它完美地工作了。謝謝..!!! – Bhotu

相關問題