簡體   English   中英

使用Jenkins執行Ansible Playbook

[英]Executing Ansible Playbook using Jenkins

我知道這里有一個相關的問題: 在詹金斯(Jenkins)調用Ansible劇本

但是這個問題在某些方面與以下問題有所不同:

因此,我在單個服務器(EC2實例)中安裝了Jenkins和Ansible。 我創建了一個playbook.yml,它將文件從該服務器復制到另一台服務器。 如果我使用ec2-user執行ansible-playbook playbook.yml,則此操作成功。

如果我嘗試使用Jenkins,也是如此(創建了一個項目,並在運行ansible playbook時添加了構建步驟,並提到了playbook.yml的位置並以sudo ec2-user身份運行)。 這是失敗的錯誤:

fatal: [172.xx.xx.xx]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: no such identity: /home/ec2-user/.ssh/Host_Keypair.pem: Permission denied\r\nPermission denied (publickey).\r\n", "unreachable": true}
to retry, use: --limit @/var/lib/jenkins/workspace/Ansible/copy.retr

playbook.yml:

---
- hosts: 172.xx.xx.xx
  remote_user: ec2-user
  become: yes
  become_method: sudo
  tasks:
   - copy:
     src: /var/lib/jenkins/workspace/Ansible/myfile.conf
     dest: /etc/myfile.conf
     owner: ec2-user
     group: ec2-user
     mode: 0644

我對此很執着,不執行此操作就無法進行下一步。 誰能幫我解決我缺少的其他配置(可能在詹金斯方面)。 任何幫助將非常感激。

Playbook是在jenkins用戶下執行的, jenkins用戶無法訪問/home/ec2-user/.ssh/Host_Keypair.pem / jenkins主機上的/home/ec2-user/.ssh/Host_Keypair.pem密鑰以在遠程服務器上進行身份驗證。

沒有錯誤消息:

沒有這樣的身份:/home/ec2-user/.ssh/Host_Keypair.pem:權限被拒絕

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM