YUM源优先级

生产案例:OpenStack Icehouse novncproxy无法启动解决

这个企业案例随着我们的课程升级已经过时了,但是解决问题的方法还是值得学习的。
广告:
CentOS7.1+Openstack L版全球最新讲解(上)
CentOS7.1+Openstack L版全球最新讲解(下)

使用启动脚本执行正常,但进程没有启动。手动启动发现报错

  1. [root@linux-node1 ~]# nova-novncproxy --config-file=/etc/nova/nova.conf
  2. Traceback (most recent call last):
  3. File "/usr/bin/nova-novncproxy", line 10, in <module>
  4. sys.exit(main())
  5. File "/usr/lib/python2.6/site-packages/nova/cmd/novncproxy.py", line 87, in main
  6. wrap_cmd=None)
  7. File "/usr/lib/python2.6/site-packages/nova/console/websocketproxy.py", line 47, in __init__
  8. ssl_target=None, *args, **kwargs)
  9. File "/usr/lib/python2.6/site-packages/websockify/websocketproxy.py", line 231, in __init__
  10. websocket.WebSocketServer.__init__(self, RequestHandlerClass, *args, **kwargs)
  11. TypeError: __init__() got an unexpected keyword argument 'no_parent'

原因

  1. 是由于python-websockify这个包的版本造成的问题。其实在fedora源中也提供了一些python的依赖包。
  2. http://mirrors.aliyun.com/epel/6/x86_64/ 真坑,9月份更新的!!!
  3. python-websockify-0.6.0-3.el6.noarch.rpm 04-Sep-2015 19:29 63556
  4. https://repos.fedorapeople.org/repos/openstack/EOL/openstack-icehouse/epel-6/
  5. python-websockify-0.5.1-1.el6.noarch.rpm 2013-09-10 09:31 58K
  6. http://mirrors.ustc.edu.cn/epel/6/x86_64/
  7. python-websockify-0.6.0-3.el6.noarch.rpm 04-Sep-2015 19:29 63556
  8. # 应该是国外的总源换了
  9. 为什么6版本不行
  10. https://bugs.launchpad.net/nova/+bug/1334327
  11. https://bugs.launchpad.net/nova/+bug/1333746

** 解决方法 **

优先使用icehouse源提供的软件包,这里涉及到yum源优先级的问题。有的包需要epel源,但有的包epel太新了,不能用,用了就出问题,因此优先使用icehouse源提供的包。一些关键的python包icehouse源也提供了,不需要下载epel源的

Yum Priorities插件可以用来强制保护源。它通过给各个源设定不同的优先级,使得系统管理员可以将某些源(比如Linux发行版的官方源)设定为最高优先级,从而保证系统的稳定性(同时也可能无法更新到其它源上提供的软件最新版本)。

1. 安装Yum Priorities

yum -y install yum-priorities

2. 配置使用Yum Priorities

  1. vim /etc/yum/pluginconf.d/priorities.conf
  2. # 确保配置文件中包含下面的行
  3. [main]
  4. enabled=1

3. 修改阿里epel源优先级

  1. # icehouse源默认有优先级了
  2. [root@linux-node1 ~]# grep priority /etc/yum.repos.d/rdo-release.repo
  3. priority=98
  4. # 在epel源加一行,使epel源的优先级低于icehouse源
  5. [root@linux-node1 ~]# vi /etc/yum.repos.d/epel.repo
  6. [epel]
  7. …………
  8. priority=99

注1:优先级由1 ~ 99的99个数表示,1的优先级最高。优先级小的源即使有某软件的较新版本,如果优先级高的源中没有,在启用该插件的情况下,系统也无法安装/升级到该较新版本。
注2:要禁用 YUM 优先级功能,只需要将/etc/yum/pluginconf.d/priorities.conf的enable=1 改为 enable=0 即可。


本文转载于张耀的博客,原文链接

2
如无特殊说明,文章均为本站原创,转载请注明出处
  • 转载请注明来源:YUM源优先级
  • 本文永久链接地址:https://blog.oldboyedu.com/yum-priorities/

该文章由 发布

这货来去如风,什么鬼都没留下!!!
发表我的评论

Hi,请填写昵称和邮箱!

取消评论
代码 贴图 加粗 链接 删除线 签到