FAQ 自动化运维
SaltStack问题

1、什么是SaltStack脚本库?

SaltStack是业界知名的IT基础架构集中化管理平台,在SaltStack运行环境中,拥有一套非常完善的函数库,包含了日常运维领域的常见操作,行云管家将其作为预设脚本库的形式提供给用户,便于用户使用这些脚本进行日常运维操作。

进入作业中心,在左侧导航中,将可直接看到“预设脚本库(SaltStack)”,选中后,将展现脚本库中的所有Package和脚本。

2、在行云管家中使用SaltStack的先决条件是什么?

想要在主机上执行SaltStack脚本,请确保以下几点:

(1)只有Linux主机才能执行SaltStack脚本;

(2)主机上需要安装行云管家Agent;

(3)主机已经安装了Python2.6或以上版本;

3、如何在命令控制台中使用SaltStack?

行云管家允许用户直接在命令控制台中执行SaltStack,用户只需在命令输入框中执行:salt-local . 即可,示例:salt-local ip.get_routes。

4、如何在脚本控制台中使用SaltStack?

在脚本控制台中,用户只需选择“预设脚本库(SaltStack)”,即可使用SaltStack脚本资源。

5、在用户自己的脚本中如何使用SaltStack?

目前行云管家支持两种自定义脚本:shell脚本和python脚本,在需要的时候,这两种脚本均可引用SaltStack脚本,具体引用方式如下:

(1)shell脚本:脚本中直接输入salt-local .

(2)python脚本:在python脚本文件头部加入以下声明

import sys
sys.path.append('/usr/local/YunAgent/salt/bin')
from saltlocal import getSaltCall

需要运行SaltStack脚本的地方输入:

caller = getSaltCall('/usr/local/YunAgent/salt')
caller.run(['<module>', '<function>'])

6、预设脚本库有没有相关专业的社区指引?

问题解答:

我们这里对接的是SaltStack,您直接搜索 SaltStack+模块名 就可以查到对应模块的用处;

这里有部分模块的介绍供您参考哈:https://www.jianshu.com/p/05cf41288234

7、4.18版本前的SaltStack不符合2020安全标准

问题解答:

(1)行云管家SaltStack只有本地命令,不受此次安全事件的影响;

(2)鉴于对此问题的担心,即便不受影响,行云管家在4.18版本里也已经对内置的SaltStack版本进行升级。

注意:salt-local升级以后,salt-local需要运行在python2.7上面,在安装Agent的主机里如果python版本低于2.7的话是无法运行的。

如果您要升级您的python版本,请先评估您的目标主机里是否有依赖原有低版本python的应用程序。

这里附上CentOS 6升级python的方法:

yum install centos-release-scl

yum install python27