saltstack远程执行模块(python)及其salt syndic(topmaster)的应用)

一.编写远程执行模块

1.在server1上编写远程执行模块(python模块)

[root@server1 ~]# mkdir /srv/salt/_modules
[root@server1 ~]# cd /srv/salt/_modules/
[root@server1 _modules]# ls
[root@server1 _modules]# vim my_disk.py
#!/usr/bin/env python

def df():
    return __salt__['cmd.run']('df -h')

在这里插入图片描述
2.在server1(master)上推送该模块刷新该模块
在这里插入图片描述
4.在server2上查看发现该模块已经添加
在这里插入图片描述
5.在server1(master)上进行推送测试

[root@server1 _modules]# salt server2 my_disk.df   df为在编写文件时定义的函数名称

在这里插入图片描述

二.salt syndic

多个master有一个topmaster进行数据汇集,由client与topmaster进行连接,topmaster进行下发任务,syndic是一个服务与master一起运行,当用户与topmaster进行连接的时候实际连接的是syndic。

原理图如下:
在这里插入图片描述

部署如下:

实验环境

主机名(IP)服务
server1(172.25.254.1)master
server2(172.25.254.2)minion
server3(172.25.254.3)minion
server4(172.25.254.4)topmaster

1.在server1上安装salt-syndic,并且编辑配置文件添加指向的topmaster

//yum源安装,之前已经配置好的具体可参考saltstack的部署
[root@server1 ~]# yum install -y salt-syndic
//安装包安装,官网下载安装包进行安装
[root@server1 ~]# ls
add.sql  anaconda-ks.cfg  salt-syndic-2018.3.3-1.el7.noarch.rpm
[root@server1 ~]# rpm -ivh salt-syndic-2018.3.3-1.el7.noarch.rpm 

//编辑配置文件添加指向的topmaster,如果配置了相应的mysql在配置文件中将其注释掉方便验证
[root@server1 ~]# vim /etc/salt/master
1058 syndic_master: 172.25.254.4

在这里插入图片描述
2.在server4上安装salt-master,并且编辑master的配置文件打开base开启服务

[root@server2 yum.repos.d]# scp salt.repo server4:/etc/yum.repos.d/
[root@server4 ~]# cat /etc/yum.repos.d/salt.repo 
[saltstack]
name=saltstack
baseurl=http://172.25.42.250/2018
gpgcheck=0
[root@server4 ~]# yum install -y salt_master

[root@server4 ~]# vim /etc/salt/master
 664 file_roots:
 665    base:
 666      - /srv/salt/

 1054 order_masters: true
[root@server4 ~]# systemctl start salt-master

在这里插入图片描述
3.在server1上重启master并且开启salt-syndic,查看进程

[root@server1 salt]# systemctl restart salt-master
[root@server1 salt]# systemctl start salt-syndic
[root@server1 salt]# ps ax 

在这里插入图片描述
4.在server4上添加key
在这里插入图片描述
5.在server4上做简单的测试会发现直接通过master获取minion的信息
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值