• SaltStack简介及其故障排除示例


    Saltstack是继 Puppet、Chef 之后新出现的配置管理及远程执行工具, 目前,SaltStack 正得到越来越多的瞩目。与 Puppet 相比,SaltStack 没有那么笨重,较为轻量;不像 Puppet 有一套自己的 DSL用来写配置,SaltStack 使用YAML作为配置文件格式,写起来既简单又容易,同时也便于动态生成;此外,SaltStack 在远程执行命令时的速度非常快,也包含丰富的模块。SaltStack 是开源软件,其源代码托管于GitHub上,安装及使用尽可参考其官方文档,也可以参考灿哥的blog

    官方文档:http://docs.saltstack.com/topics/installation/rhel.html

    对于集群中的多个节点,当在新加入的节点上直接使用yum安装salt-minion后,默认安装的是最新的版本(2014.1.0);而原来安装的salt-master的版本则是比较旧的0.17.4。安装完成后,更改minion端的配置文件,指定master和id,然后发现minion和master可以正常的通信。使用简单的测试命令,如test.ping,cmd.run 'ls /tmp/'等也可以正常使用。这样以为就安装完成了,打算收工做其他事情了。

    后来,由于需要在salt-master端为minion端推送脚本,并在minion端执行,便在master端向新装minion端的节点,推送了脚本,如下所示:

    salt '*' cmd.script salt://scripts/testWriteTime.sh

    观察来自minion端的返回,发现了如下问题:有的minion可以执行成功,有的不可以。

    不可以成功执行的输出信息如下:

    可以成功执行的输入信息如下:

     

    观察来自minion端的日志可以看到,命令已经成功的被传递到minion端了,只是在解析的时候发生了问题,如下:

     

    通过分析发现,应该是由于salt的版本更新,里面的解析函数发生了变化,导致master端和minion端不能正常解析的。所以最简单的方法是在新装minion端的节点卸载了salt-minion,并下载0.17.4版本的salt重新安装。

    具体操作如下:

    yum remove salt-minion -y

    cd ~/Downloads/

    wget https://codeload.github.com/saltstack/salt/zip/0.17

    unzip 0.17 && cd salt-0.17

    python setup.py bulid && python setup.py intall

    然后更改minion端的配置文件,指定master和id,启动salt-minion即可。

  • 相关阅读:
    MATLAB getframe
    matlab 中 hold on 和hold off的使用
    在MATLAB中得到系统当前日期、时间的函数
    Matlab 中常用的直线与点形表示属性
    matlab中的unique函数详解
    栈的整体作用
    文件句柄、文件描述符与进程和多线程的那些事
    IP头、TCP头、UDP头详解以及定义
    计算机是如何启动的?
    uCOS-II 任务调度机制
  • 原文地址:https://www.cnblogs.com/hust_wsh/p/3770806.html
Copyright © 2020-2023  润新知