salt认证和语法

1 Master与Minion认证过程:html


1.minion在第一次启动时,会在/etc/salt/pki/minion/(该路径在/etc/salt/minion里面设置)下自动生成minion.pem(private key)和minion.pub(public key),node

而后将minion.pub发送给master。linux


2.master 在接收到minion的public key后,经过salt-key命令accept minion public key,这样在master的/etc/salt/pki/master/minions下的将会存放以minion id命名的public key,web

而后master就能对minion发送指令了。正则表达式


2 Master与Minion的链接shell

Saltstack master启动后默认监听4505和4506两个端口。4505(publish_port)为salt的消息发布系统,vim

4506(ret_port)为salt客户端与服务端通讯的端口。若是使用lsof查看4505端口,会发现全部的Minion在4505端口持续保持在ESTABLISHEDide


3 Master与Minion的Key:测试

因为上面已经设置了客户端自动注册到服务端,因此直接能够查看是否有客户端注册.net

[root@master slave]# salt-key -L

Accepted Keys:

slave_141

slave_142

slave_143

Unaccepted Keys:

Rejected Keys:


Accepted Keys:为被服务端接受的KEY(slave_141 slave_142 slave_143就是minion中的id标识号)

Unaccepted Keys:未被服务端接受的KEY

Rejected Keys:被服务端拒绝的KEY

salt-key命令能够接受特定的单个key或批量接受key, 使用-A选项接受当前全部的key, 接受单个key能够使用-a idname.


4 在服务端salt匹配minion id


在运行salt命令进行匹配时,请使用单引号('),避免shell解析


匹配全部minion:salt  '*' test.ping

匹配下边域的全部minion:salt '*.example.*' test.ping

匹配example.net域中的(web1.example.net、web2.example.net......webN.example.example.net):salt 'web?.example.net' test.ping

匹配web1到web5的minion: salt 'web[1-5]' test.ping

匹配web-x、web-y及web-z minion: salt 'web-[x-z]' test.ping


5 正则表达式:

匹配web-prod和web1-devel minion:

salt -E 'web1-(prod|devel)' test.ping


指定列表

salt -L 'web1,web2,web3' test.ping


指定组:

在服务务端中打开master配置文件

vim /etc/salt/master

添加以下分组

nodegroups:

group1: 'L@slave_143,slave_141'

group2: 'slave_142'


值得注意的是编辑master的时候,group1和group2前面是2个空格


6 测试:

[root@drfdai-17 salt]#salt -N group2 test.ping

slave_142:

True


可能你们会好奇group1中为何会有L@,这表明什么意思?

其实L是指客户端列表,咱们一组中有多个客户端,因此在前面用L表示。除了有列表匹配外,还有不少匹配方式,如:

这些参数均可以直接在命令行使用,如:

salt -S '192.168.43.142' test.ping

salt -G 'os:Centos' test.ping

salt -L '230,68' test.ping


minion基本信息的管理

基本使用:

salt '*' grains.ls  查看grains分类

salt '*' grains.items 查看grains全部信息

salt '*' grains.item osrelease 查看grains某个信息


如:

[root@drfdai-17 salt]# salt '*' grains.item osrelease

230:

osrelease: 6.2

68:

osrelease: 6.2



这一章参考:http://www.linuxyw.com/179.html

相关文章
相关标签/搜索