我对Ansible很新.我正在尝试遵循Ansible中角色概念的教程.我有以下主手册:
--- # Master Playbook for Webservers
- hosts: apacheweb
user: test
sudo: yes
connection: ssh
roles:
- webservers
Run Code Online (Sandbox Code Playgroud)
这是指具有以下任务/ main.yml的Web服务器角色:
- name: Install Apache Web Server
yum: pkg=httpd state=latest
notify: Restart HTTPD
Run Code Online (Sandbox Code Playgroud)
还有一个handler/main.yml:
- name: Restart HTTPD
service: name=httpd state=started
Run Code Online (Sandbox Code Playgroud)
当我执行上面提到的Master Playbook时,我收到以下错误:
TASK [webservers : Install Apache Web Server] **********************************
fatal: [test.server.com]: FAILED! => {"changed": false, "failed": true, "msg": "The following packages have pending transactions: httpd-x86_64", "rc": 128, "results": ["The following packages have pending transactions: httpd-x86_64"]}
Run Code Online (Sandbox Code Playgroud)
我无法理解这个错误对应的内容.根据我的研究,似乎没有任何相似之处可能表明我使用Yum模块的方式存在问题.
注意:Ansible版本:
ansible 2.2.1.0
config file = /etc/ansible/ansible.cfg
Run Code Online (Sandbox Code Playgroud)
gil*_*ile 26
目标主机上似乎有未完成/待处理的事务.尝试安装yum-utils程序包以运行yum-complete-transaction给出错误的目标主机.
# yum-complete-transaction --cleanup-only
Run Code Online (Sandbox Code Playgroud)
yum-complete-transaction是一个程序,它在系统上查找不完整或中止的yum事务并尝试完成它们.它查看transaction-all*和transaction-done*文件,如果yum事务在执行过程中中止,通常可以在/ var/lib/yum中找到它们.
如果它找到多个未完成的事务,它将首先尝试完成最近的事务.您可以多次运行它来清理所有未完成的事务.
| 归档时间: |
|
| 查看次数: |
8856 次 |
| 最近记录: |