运行问题

1、直接物理性移除minion或者更换minion原先连接的master,会导致先前的master始终无法ping通minion

[root@localhost salt]# salt '*' test.ping
minion_centos7:
    True
win_minion:
    True
10.1.240.193:
    Minion did not return. [No response]

解决办法:在master上查看已接受的key

[root@localhost salt]# salt-key -L
Accepted Keys:
10.1.240.193
minion_centos7
win_minion
Denied Keys:
Unaccepted Keys:
Rejected Keys:

把删除的那台minion的key删除就好了

[root@localhost salt]# salt-key -d 10.1.240.193

其他汇总

1、minion安装的版本不同可能会导致master的部分请求解析失败,master同理

解决办法:查看minion的版本,升级或降级,务必统一版本

2、遇到一次同步后的grains为空白的情况,grains空白后导致整个minion连接异常,无论执行任何正常命令,报错都是minion无响应,与minion不在线的提示相同

不知什么原因,目前怀疑是与salt的modules命名相同或者是grains中有异常代码导致。前者还好处理,后者的话可能要加安全校验机制

解决办法:cd到/var/cache/salt/minion/extmods/grains/路径,把与modules同名的文件删除即可,不行的话清空整个目录内的文件

windows系统的解决办法差不多,找到安装目录下的grains存放位置,把异常的文件删除即可,比如我传来的grains是存放在C:\salt\var\cache\salt\minion\extmods\grains

3、saltstack模块内部出现错误时,salt内部抛出且不会回显,但是调用该模块时会出现问题,所以若模块调用正常,但写成api时结果不正常,有可能是模块的问题

4、minion上的防火墙服务firewalld开启可能会导致Minion did not return. [No response]

如果需要传参的话,最好不要用debug模式,因为-l debug这些字符可能传参处理时会引发异常从而导致运行失败

5、由于salt返回的一律是字典型,所以将输出写入文件时一定要转化为字符串,用str处理就好

6、可用**kwargs来接收不限数量的参数,但外部参数必须用kwargs['__pub_arg'][0]来获得,而且一旦不能转化为字典型就会报错

7、传送大文件时,有时返回成功,但是传送文件的目录里,文件名后面有个.part证明传输异常中断了

8、salt-master的ip有时会变,若配置文件没相应变更ip,重启salt时会提示[WARNING ] Unable to bind socket, error: [Errno 99] Cannot assign requested

9、写grains时,grains的模块名字命名不可以与grains.item 的命名相同,否则只会输出none

研究slatstack时踩过的坑,注意点及解决方案的更多相关文章

  1. [问题解决]RedHat7更换CentOS7的yum源时踩过的坑

    更换yum源的流程 查看当前yum程序 $ rpm -qa|grep yum 这里推荐将其结果截屏或拷贝出来,以免后面报错修复. 删除原有yum源 $ rpm -aq | grep yum|xargs ...

  2. 使用Ajax中get请求发送Token时踩的那些坑

    在使用惯了各种牛X的插件以后,在使用原生组件写一些小东西的时候总是有踩不完的坑! 今天就来说一说我使用原生ajax请求时踩得坑: 下面是我的代码: var xmlhttp; if (window.XM ...

  3. 记录初学者学习Hive时踩过的坑

    1. 缺少MySQL驱动包 1.1 问题描述 Caused by: org.datanucleus.store.rdbms.connectionpool.DatastoreDriverNotFound ...

  4. 曲演杂坛--使用CTE时踩的小坑:No Join Predicate

    在一次系统优化中,意外发现一个比较“坑”的SQL,拿出来供大家分享. 生成演示数据: --====================================== --检查测试表是否存在 IF(O ...

  5. 配置tomcat时踩过的坑

    conf/server.xml文件有2处地方容易踩坑: 1.<HOst>标签中的appBase名字,要看清,有些修改的版本,会把这个名字改成deploy,而eclipse默认部署的是web ...

  6. 那些年我用awk时踩过的坑——awk使用注意事项

    由于项目经历原因,经常使用awk处理一些文本数据.甚至,我特意下载了一个windows上的awk:gawk.exe,这样在windows上也能享受awk处理数据的方便性,. 俗话说,"常在河 ...

  7. [转] 那些在使用webpack时踩过的坑

    用webpack的过程,就是一个不断入坑和出坑的过程.回望来时路,一路都是坑啊!现把曾经趟过的那些坑整理出来,各位看官有福了~ 文章末尾有我用到的依赖的版本信息,若你发现某个问题与我在本文中的描述不一 ...

  8. 前端开发工具Brackets介绍,安装及安装Emme插件时踩过的坑

    对于前端开发的园友来说有可能IDE工具有很多,层次不穷,还有每个人的喜好及习惯也不一样,因为我是一名后端开发的.Net程序员,但是大家都知道,现在都提倡什么全栈工程师,所以也得会点前端开发,所以我对于 ...

  9. 记录在vue中使用jsx时踩过的坑

    使用方法及细节就不一一说了. 1.给input或者textarea绑定value时,出现失效的问题.解决方法:https://github.com/vuejs/babel-plugin-transfo ...

随机推荐

  1. Python中的join()函数的用法及列表推导式

    [红色为转载后新增部分] 函数:string.join() Python中有join()和os.path.join()两个函数,具体作用如下: join():连接字符串数组.将字符串.元组.列表中的元 ...

  2. JDK源码分析(5)Vector

    JDK版本 Vector简介 /** * The {@code Vector} class implements a growable array of * objects. Like an arra ...

  3. centos6.5重新调整/home和跟目录/大小

    0. 说明 系统刚刚安装完之后,默认到/home有1.5TiB,而根分区只有200G.现在是要将VolGroup-lv_home缩小到200G,并将剩余的空间添加给VolGroup-lv_root. ...

  4. WCF快速搭建Demo

    WCF快速搭建Demo ps:本Demo只是演示如何快速建立WCF 1.首先完成IBLL.BLL.Model层的搭建,由于数据访问层不是重点,WCF搭建才是主要内容,所以本Demo略去数据访问层. 新 ...

  5. 【洛谷P1072】Hankson 的趣味题

    题目大意:给定四个数字 a,b,c,d,求满足 \(gcd(a,x)=b,lcm(c,x)=d\) 的 x 的个数. 题解: 解法1:根据 lcm 的性质,x 一定为 d 的约数.因此,直接枚举 d ...

  6. 用矩阵和待定系数法求数列的分析(复杂度log(n))

    下载地址:http://pan.baidu.com/s/1nuVew6d

  7. 获取天气预报API

    sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频) https://study.163.com/course/introduction.htm?courseId=1005269003& ...

  8. Linux下网卡绑定模式

    Linux bonding驱动一共提供了7种模式,它们分别是:balance-rr .active-backup.balance-xor.broadcast.802.3ad.balance-tlb.b ...

  9. 附录B. Spring Boot 配置文件application.properties

    #SPRING CONFIG (ConfigFileApplicationListener) spring.config.name= # config file name (default to 'a ...

  10. java AOP使用注解@annotation方式实践

       java AOP使用配置项来进行注入实践 AOP实际开发工作比较常用,在此使用注解方式加深对面向切面编程的理解 废话不多少,先看下面的实例代码 场景: 1.未满一岁的小孩,在执行方法之前打印:“ ...