saltstack-把执行结果存储到mysql服务内
saltstack把执行的结果保存到mysql中,以便进行命令安全审计
mysql负责存储数据,mysql-python负责收集数据
master需要安装mysql和MySQL-python,minion端安装MySQL-python
系统环境
CentOS Linux release 7.4
master 10.0.0.111
minion 10.0.0.112
1、master 端操作:
参考网址:https://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.mysql.html
参考博客:https://www.cnblogs.com/zzzhfo/p/5867771.html
1.1、安装mysql
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-server MySQL-python #启动mysql
systemctl start mysqld.service
systemctl enable mysqld.service
systemctl status mysqld.service #修改mysql密码
[root@salt-server ~]# grep "password" /var/log/mysqld.log
set global validate_password_policy=0;
set global validate_password_length=1;
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456'; #修改完密码后再依次输入以下内容:
##########################################################
CREATE DATABASE `salt`
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
##########################################################
USE `salt`;
##########################################################
DROP TABLE IF EXISTS `jids`;
CREATE TABLE `jids` (
`jid` varchar(255) NOT NULL,
`load` mediumtext NOT NULL,
UNIQUE KEY `jid` (`jid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE INDEX jid ON jids(jid) USING BTREE;
############################################################
DROP TABLE IF EXISTS `salt_returns`;
CREATE TABLE `salt_returns` (
`fun` varchar(50) NOT NULL,
`jid` varchar(255) NOT NULL,
`return` mediumtext NOT NULL,
`id` varchar(255) NOT NULL,
`success` varchar(10) NOT NULL,
`full_ret` mediumtext NOT NULL,
`alter_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
KEY `id` (`id`),
KEY `jid` (`jid`),
KEY `fun` (`fun`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
############################################################
DROP TABLE IF EXISTS `salt_events`;
CREATE TABLE `salt_events` (
`id` BIGINT NOT NULL AUTO_INCREMENT,
`tag` varchar(255) NOT NULL,
`data` mediumtext NOT NULL,
`alter_time` TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
`master_id` varchar(255) NOT NULL,
PRIMARY KEY (`id`),
KEY `tag` (`tag`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
#############################################################
grant all on salt.* to salt@'%' identified by '123456'; #以下是上边操作的截图
1.2、测试mysql是否设置完成
1.3、修改master主配置文件
[root@salt-server ~]# vim /etc/salt/minion
mysql.host: '10.0.0.111'
mysql.user: 'salt'
mysql.pass: '123456'
mysql.db: 'salt'
mysql.port: 3306
#重启配置文件
systemctl restart salt-minion
2、minion端修改内容如下:
yum -y install MySQL-python
[root@minion02 ~]# vim /etc/salt/minion
mysql.host: '10.0.0.111'
mysql.user: 'salt'
mysql.pass: '123456'
mysql.db: 'salt'
mysql.port: 3306 #重启minion服务
systemctl restart salt-minion
总测试:
[root@salt-server ~]# salt '*' test.ping --return mysql
[root@salt-server ~]# salt '*' cmd.run 'df -h' --return mysql
在master的mysql服务查看:
[root@salt-server ~]# mysql -uroot -p
Enter password:
mysql> use salt;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A Database changed
mysql> mysql> select * from salt_returns\G;
方法2
master端安装MySQL-python和mysql-server
minion端不需要安装MySQL-python包
操作步骤略(与发一相同) [root@salt-master /]# vim /etc/salt/master 追加如下内容
master_job_cache: mysql #每次执行不加--return mysql由master端将返回的数据写入数据库 不需要minion 重启服务
[root@salt-master /]# /etc/init.d/salt-master restart 测试:
[root@salt-master /]# salt 'salt-minion' test.ping
salt-minion:
True
[root@salt-master /]# salt 'salt-minion' cmd.run 'df -h'
salt-minion:
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 18G 935M 16G 6% /
tmpfs 495M 12K 495M 1% /dev/shm
/dev/sda1 194M 27M 158M 15% /boot
root@salt-master /]# mysql -u salt -p -h 192.168.161.131
Enter password:
mysql> use salt;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A Database changed mysql> select * from salt_returns;
+-----------+----------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
| fun | jid | return | id | success | full_ret | alter_time |
+-----------+----------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
| test.ping | 20160826200517605155 | true | salt-minion | 1 | {"fun_args": [], "jid": "20160826200517605155", "return": true, "retcode": 0, "success": true, "fun": "test.ping", "id": "salt-minion"} | 2016-08-26 20:05:17 |
| test.ping | 20160826202029989457 | true | salt-minion | 1 | {"fun_args": [], "jid": "20160826202029989457", "return": true, "retcode": 0, "success": true, "cmd": "_return", "_stamp": "2016-08-26T12:20:30.138166", "fun": "test.ping", "id": "salt-minion"} | 2016-08-26 20:20:30 |
| cmd.run | 20160826202045948708 | "Filesystem Size Used Avail Use% Mounted on\n/dev/sda3 18G 935M 16G 6% /\ntmpfs 495M 12K 495M 1% /dev/shm\n/dev/sda1 194M 27M 158M 15% /boot" | salt-minion | 1 | {"fun_args": ["df -h"], "jid": "20160826202045948708", "return": "Filesystem Size Used Avail Use% Mounted on\n/dev/sda3 18G 935M 16G 6% /\ntmpfs 495M 12K 495M 1% /dev/shm\n/dev/sda1 194M 27M 158M 15% /boot", "retcode": 0, "success": true, "cmd": "_return", "_stamp": "2016-08-26T12:20:45.984974", "fun": "cmd.run", "id": "salt-minion"} | 2016-08-26 20:20:46 |
+-----------+----------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------+---------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+---------------------+
3 rows in set (0.00 sec)
saltstack-把执行结果存储到mysql服务内的更多相关文章
- saltstack执行结果存储到MySQL
saltstack执行结果保存到MySQL中,以便进行命令安全审计必须是python2.7以上的环境安装相关模块ubuntu系统安装 apt-get install -y python-mysqldb ...
- 安装/移除 MySQL 服务
MySQL Community Server 下载:https://dev.mysql.com/downloads/mysql/ 以下内容使用的版本为:mysql-5.7.17-win32.zip 1 ...
- 【saltstack】saltstack执行结果和事件存储到mysql
前言 项目中使用saltstack有一段时间了,之前都是在控制台操作,后来感觉越来越不方便,每次操作需要登陆服务器,还需要记一堆命令.最重要的是,公司进新人之后,新人由于不熟悉saltstack,容易 ...
- SaltStack远程执行-返回MySQL
上一篇:SaltStack远程执行-模块 参考官方文档:https://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.my ...
- docker 部署mysql服务之后,执行sql脚本
1,先将.sql文件copy到docker容器里 docker ps //找到容器的短ID或者指定的name. docker inspect -f '{{.Id}}' id or name 得到指定 ...
- MySql免安装版安装配置,附MySQL服务无法启动解决方案
文首提要: 我下载的MySQL版本是:mysql-5.7.17-winx64.zip Archive版:系统:Windows7 64位. 一.解压文件 下载好My ...
- [MySQL Reference Manual] 5 MySQL 服务管理
5. MySQL 服务管理 5. MySQL 服务管理 5.1 The Mysql Server 5.2 Mysql 服务日志 5.2.1 选择General query log和slow query ...
- Saltstack远程执行(四)
Saltstack远程执行 语法例:salt '*' cmd.run 'w' - 命令:salt - 目标:'*' - 模块:cmd.run,自带150+模块,也可以自己写模块 - 返回:执行 ...
- win7下安装MYSQL报错:"MYSQL 服务无法启动"的3534问题
上午在win7下安装MYSQL,只到“net start mysql”这一步报错:3534的错误: 于是在百度中搜索关键字“mysql服务无法启动3534”. 参考以下两个链接中的方法,解决了3534 ...
随机推荐
- 使用Java设计验证码生成程序
我们来设计一个简单的验证码生成程序:验证码一个由4位的数字.字母随机组合而成图像,为了避免被光学字元识别(OCR,Optical Character Recognition)之类的程序识别出图片中的数 ...
- [C++][转]CPU字节序 网络序 主机序 大端小端
原帖:http://www.cnblogs.com/darktime/p/3298075.html 不同的CPU有不同的字节序类型 这些字节序是指整数在内存中保存的顺序 这个叫做主机序最常见的有两种1 ...
- (技术分享) 解决 Firefox 显示“已阻止载入混合活动内容”的问题
(摘自http://blog.aizhet.com/Windows/18415.html) 从 Firefox 18 开始,如果 HTTPS 页面中包含非加密的 HTTP 内容,浏览器会在控制台输出警 ...
- 用bind方法保持this上下文
什么是this对象 先来说说什么是this对象吧.每一个函数在调用的时候都会自己主动获取两个特殊变量:this和arguments对象. this值详细是指哪个对象是和该函数的运行环境相关的.假设是作 ...
- RxJS - Subject(转)
Observer Pattern 观察者模式定义 观察者模式又叫发布订阅模式(Publish/Subscribe),它定义了一种一对多的关系,让多个观察者对象同时监听某一个主题对象,这个主题对象的状态 ...
- 撩课-Web大前端每天5道面试题-Day26
1.vuejs与angularjs以及react的区别? .与AngularJS的区别 相同点: 都支持指令:内置指令和自定义指令. 都支持过滤器:内置过滤器和自定义过滤器. 都支持双向数据绑定. 都 ...
- Spring Security 安全框架
一 简介:Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spr ...
- PCA vs Linear Regression 可视化理解
https://shankarmsy.github.io/posts/pca-vs-lr.html https://shapeofdata.wordpress.com/2013/04/09/princ ...
- IDEA使用总结1-Github下载代码和上传代码到Git
1. 首先你需要在IDEA中创建一个项目,创建完项目后使能版本管理插件 选择git后创建本地git仓库成功,提示如下 2.第二步 commit代码到 commit时会提示是否需要进行检查什么的 3.第 ...
- MVP 模式简单易懂的介绍方式
为什么用Android MVP 设计模式? 当项目越来越庞大.复杂,参与的研发人员越来越多的时候,MVP 模式 的优势就充分显示出来了. MVP 模式是 MVC 模式在 Android 上的一种变体, ...