saltstack其他运行模式

Posted 北方姆Q

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了saltstack其他运行模式相关的知识,希望对你有一定的参考价值。

除了常规的运行模式外,salt还有几种运行模式

salt-call --local可以直接在minion上自执行,多用于本机自测试,此方式几乎不用,知道即可

1 [[email protected] ~]# salt-call --local test.ping
2 local:
3     True

很明显,因为是本机自测试,所以只有自己的返回值

 

salt-ssh是一种不需要在安装minion即可对各目标机器进行操作的方式,熟悉ansible的同学们是不是眼前一亮呢~没错,我萌的salt可以直接指定ansible的文件然后对各个机器直接进行控制,当然这种方法也不常用。除了命令变为salt-ssh外,后面的一切与salt正常使用无区别

 1 [[email protected] ~]# yum install salt-ssh -y
 2 [[email protected] salt]# cat /etc/salt/roster             # 这里是定义被连接主机的文件
 3 # Sample salt-ssh config file
 4 #web1:
 5 #  host: 192.168.42.1 # The IP addr or DNS hostname
 6 #  user: fred         # Remote executions will be executed as user fred
 7 #  passwd: foobarbaz  # The password to use for login, if omitted, keys are used
 8 #  sudo: True         # Whether to sudo to root, not enabled by default
 9 #web2:
10 #  host: 192.168.42.2
11 linux-node2.example.com:
12   host: 192.168.56.12
13   user: root
14   passwd: redhat
15   port: 22
16 [[email protected] salt]# salt-ssh * cmd.run whoami
17 linux-node2.example.com:
18     root
19 [[email protected] salt]# cat /etc/salt/myroster             # 创建一个自己定义的roster文件
20 linux-node2.example.com:
21   host: 192.168.56.12
22   user: root
23   passwd: redhat
24   port: 22
25 [[email protected] salt]# salt-ssh --roster-file=/etc/salt/myroster * cmd.run whoami
26 linux-node2.example.com:
27     root
28 [[email protected] salt]# salt-ssh --roster=ansible --roster-file=ansible-file-path * cmd.run whoami                # 使用ansible存货单来进行操作,我没有ansible不执行了

 

salt-run是指认master去完成工作的方式。正常的流程为master发布任务minion匹配到然后拿到任务自己去执行,将执行结果扔回队列master再去读取结果,以test.ping为例就是各个minion自己执行了test.ping了自己,然后返回结果。而salt-run则是由master亲自去一个个ping各个minion

1 [[email protected] salt]# salt-run manage.up            # 命令不太一样
2 - linux-node1.example.com
3 - linux-node2.example.com

 

以上是关于saltstack其他运行模式的主要内容,如果未能解决你的问题,请参考以下文章

SaltStack基础入门

saltstack

Saltstack自动化运维

一 saltstack 数据系统 远程执行

SaltStack介绍简单配置安装及通信原理

自动化运维Saltstack系列之配置管理业务模块