一、问题描述
生产线上使用的自动化管理工具是saltstack,CentOS6.8 x64,python 2.6.6 ,正所谓不作不死,由于有些功能需要python2.7.x ,在升级好python2.7后,写了saltstack api 发现python2.7不好使,原理是python2.7下没有salt模块,因此pip install salt 即在python2.7下安装成功了salt模块,但是发现重启salt-master时报错。如下图:
生产线啊,这可不行,赶紧恢复吧。pip uninstall salt
御载好salt 2.7下的模块后启动salt问题依旧
File "/usr/bin/salt-master", line 6, in <module>
from salt.scripts import salt_master
ImportError: No module named salt.scripts
二、问题解决
于是看下源代码了cat /usr/bin/salt-master其中下面一条
from salt.scripts import salt_master
结合错误提示,明显是找不到要导入的模块,所以才无法启动,如是找到python 2.6下salt模块的位置
/usr/lib/python2.6/site-packages/salt/下
确实没有找到scripts.py 模块。难道在御载的时候 连2.7的相碰 模块也御了?该目录下有scripts.po
这说明之前 应该是有这个模块文件,可是这个salt模块包没有备份呢?
三、解决方案
在一台测试CentOS6.8上安装 salt salt-master 后找到对应的scripts.py 上传到生产环境,还是类似 报错,好吧,我把所有的salt包(目录)打包全覆盖吧。问题解决!如图:
本文出自 “学无止境,学以致用” 博客,请务必保留此出处http://dyc2005.blog.51cto.com/270872/1966900
saltstack "ImportError: No module named salt.scripts"错误解决
原文地址:http://dyc2005.blog.51cto.com/270872/1966900