运行问题

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. harmakik

    Solution 对于原树一个节点\(x\): \(f_x(h)\)表示,\(x\)作为一个深度为\(h\)的点时,\(x\)及其子树的安排方案有多少(不考虑\(x\)具体在深度为\(h\)的哪个点) ...

  2. K8s核心概念详解

    kubernetes(通常简称为K8S),是一个用于管理在容器中运行的应用的容器编排工具. Kubernetes不仅有你所需要的用来支持复杂容器应用的所有东西,它还是市面上最方便开发和运维的框架. K ...

  3. DataFrame 数据去重

    df.head() >>> Price Seqno Symbol time 0 1623.0 0.0 APPL 1473411962 1 1623.0 0.0 APPL 147341 ...

  4. Android log 方法

    package test; public abstract class Logger { private static Class<? extends Logger> mLoggerCla ...

  5. A1058. A+B in Hogwarts

    If you are a fan of Harry Potter, you would know the world of magic has its own currency system -- a ...

  6. Nvivo

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

  7. Oracle记录-Linux JDK与Oracle profile环境配置

    1.LINUX JDK环境配置 #set java environment export JAVA_HOME=/usr/java/jdk1.7.0_79 export JRE_HOME=/usr/ja ...

  8. C#获取Html中的图片元素路径

    使用Ueditor的时候把文章以HTML标签的方式存在数据库中,同时还要将文章的第一张图片的路径一并存入数据库,所以就需要在Html中获取第一个图片的路径,没有图片的话设置一个默认的图片.代码如下: ...

  9. HDU - 4389 X mod f(x)(数位dp)

    http://acm.hdu.edu.cn/showproblem.php?pid=4389 题意 为[A,B] 区间内的数能刚好被其位数和整除的数有多少个. 分析 典型的数位dp...比赛时想不出状 ...

  10. URL基本结构

    先来简单说下URI.URL.URN这三个鬼东西. URI全称Uniform Resource Identifier,统一资源标识符 URL全称Uniform Resource Locator,统一资源 ...