saltstack除了salt命令外还有一些其他命令也可以用来辅助管理客户端节点,例如:salt-run、salt-key、salt-cp、salt-call、salt-ssh、salt-api
salt-run
salt-run是一个前端命令,用来执行salt runners。salt runners是在master上执行的一些简单的模块,重点是在master上执行的,不是在minion端
--version 打印当前运行的salt版本 --versions-report 打印程序的依赖性和版本号 -h, --help 查看帮助信息 -c CONFIG_DIR, --config-dir=CONFIG_dir 设置配置文件的目录,这个目录默认在master和minion上市通用的。默认的配置文件目录是/etc/salt。 -t TIMEOUT, --timeout=TIMEOUT 等待minion回复消息的超时时间,超时时间指定了命令行客户端等待多长时间去向minion查询并检查执行的job,默认是1。 -d, --doc, --documentation 显示runner的帮助文档。 -l LOG_LEVEL, --log-level=LOG_LEVEL 设置日志相关信息,在命令行设置的log信息会覆盖配置文件的日志配置,该参数设置在console中显示的日志级别,主要有以下级别 all, garbage, trace, debug, info, warning, error, quiet. 默认是: warning. --log-file=LOG_FILE 设置日志文件的位置,默认是:/var/log/salt/master. --log-file-level=LOG_LEVEL_LOGFILE 该参数设置在日志文件中显示日志的级别,主要有以下级别 all, garbage, trace, debug, info, warning, error, quiet. 默认是: warning.
salt-key
-q, --quiet 安静模式,取消输出内容 -y, --yes 对所问的问题回答yes,默认是False --log-file=LOG_FILE 默认是 /var/log/salt/minion. --log-file-level=LOG_LEVEL_LOGFILE 该参数设置在日志文件中显示日志的级别,主要有以下级别 all, garbage, trace, debug, info, warning, error, quiet. 默认是: warning. --out 替换默认的返回数据的显示格式,主要支持以下格式:grains, highstate, json, key, overstatestage, pprint, raw, txt, yaml 如果你的返回数据不支持你指定的显示数据的格式,则salt默认使用pprint格式 如果你使用 --out=json返回格式,,你可能希望使用--static模式.。如果没有使用static选项,你会在所有的minion客户端得到JSON字符串,这取决于你是否使用了一个迭代的outputter,所以建议你使用 --static --out-indent OUTPUT_INDENT, --output-indent OUTPUT_INDENT 打值印输出值中的缩进, 负值则禁用缩进,只适用于支持缩进的 outputters --out-file=OUTPUT_FILE, --output-file=OUTPUT_FILE 指定输出到一个文件 --no-color 不显示颜色 --force-color 强制显示颜色 绿色表示成功,红色表示失败,蓝色表示有改动,但是成功执行,黄色表示配置未来会改变 -l ARG, --list=ARG 列出公钥,参数 pre, un, 和unaccepted 会列出 unaccepted/unsigned keys, acc oraccepted 会列出accepted/signed keys.,rej or rejected会列出rejected keys,最后, all 列出所有keys -L, --list-all 列出所有的公钥 -a ACCEPT, --accept=ACCEPT 接受一个指定的客户端公钥 -A, --accept-all 接受所有被阻止的客户端公钥 -r REJECT, --reject=REJECT 拒绝指定的客户端公钥 -R, --reject-all 拒绝所有被阻止的客户端公钥 -p PRINT, --print=PRINT 打印指定的客户端公钥 -P, --print-all 打印所有的客户端公钥 -d DELETE, --delete=DELETE 删除指定的客户端公钥 -D, --delete-all 删除所有的客户端公钥 -f FINGER, --finger=FINGER 打印指定公钥的指纹 -F, --finger-all 打印所有公钥的指纹 --gen-keys=GEN_KEYS Set a name to generate a keypair for use with salt --gen-keys-dir=GEN_KEYS_DIR Set the directory to save the generated keypair. Only works with 'gen_keys_dir' option; default is the current directory. --keysize=KEYSIZE Set the keysize for the generated key, only works with the '--gen-keys' option, the key size must be 2048 or higher, otherwise it will be rounded up to 2048. The default is 2048.
salt-cp
salt-cp:拷贝一个本地文件到所有匹配的minion客户端
-t TIMEOUT, --timeout=TIMEOUT 超时时间,默认是5 -E, --pcre 使用PCRE正则配置minion客户端 -L, --list 具体列出要拷贝到的minion客户端名称 -G, --grain 根据minion客户端的grain来区分拷贝地址 --grain-pcre 使用PCRE正则匹配grain的返回值来确定要拷贝的minion客户端 -N, --nodegroup 根据分配的组来确定拷贝地址 -R, --range Instead of using shell globs to evaluate the target, use a range expression to identify targets. Range expressions look like %cluster. Using the Range option requires that a range server is set up and the location of the range server is referenced in the master configuration file.
salt-call
salt-call:在minion本地运行module的功能,而不是在master上远程控制minion来运行module
-g, --grains 返回grains生成的信息 -m MODULE_DIRS, --module-dirs=MODULE_DIRS 从一个指定的目录获取模块,多个目录可以用逗号分开 --master=MASTER 设置一个master,该minion客户端必须在这个master上经过认证,如果没有进行设置,则默认会从minion的配置文件中获取master地址,如果有多个master,则第一个生效 --return RETURNER 设置salt-call把返回的数据发送到一个或者多个returner接口,如果返回到多个returnners接口,多个接口之间用逗号分隔即可 --local 在本地运行salt-call,就好像没有master在运行一样。
salt-ssh
salt-ssh:允许你使用ssh协议在客户端执行命名,而不需要安装master
-r, --raw, --raw-shell 执行一个原始的shell命令 --priv 指定一个私钥进行验证 --roster 指定哪个roster系统要被使用,可以是database、scanner、custom roster,默认是平面文件roster系统 --roster-file 指定默认的roster本地文件位置,默认的文件名是roster,位置在master的/etc/salt//roster --refresh, --refresh-cache q强制刷新master上的缓存数据,这种情况一般出现在minion的grains已经变化了的情况 --max-procs 同时和多少minion进行通讯,启动的进程越多则通讯的速度越快,默认是25 -i, --ignore-host-keys 忽视ssh主机keys,默认情况下连接要征求同意 --passwd 在连接进行认证时设置默认的密码 --key-deploy Set this flag to attempt to deploy the authorized ssh key with all minions. This combined with --passwd can make initial deployment of keys very fast and easy./etc/salt/roster文件的格式如下:
web1: host: IP # The IP addr or DNS hostname user: test # Remote executions will be executed as user fred passwd: xxxxx