saltstack之Return data to a mysql server
发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,本文章是参照官网和网上一些资料。多数以官网为主。首先是需要安装mysql数据库,我这里已经安装好了一个mysql数据库的分支叫MariaDB数据库,我就使用现成的。听说操作和mysql的操作一样。其实
千家信息网最后更新 2025年11月08日saltstack之Return data to a mysql server
PS:内容有点乱,写作水平也有限,不过这都是我的操作过程,用来记录一番,同时希望能给大家带来参考。
本文章是参照官网和网上一些资料。多数以官网为主。
首先是需要安装mysql数据库,我这里已经安装好了一个mysql数据库的分支叫MariaDB数据库,我就使用现成的。听说操作和mysql的操作一样。其实我就是想试试这个数据库··
依赖条件:所有minion端要安装 。
MySQL-python
| maturity: | mature |
|---|---|
| depends: | python-mysqldb |
| platform: | all |
三个主要步骤:
1、创建数据库和表
2、修改minion配置文件指向mysql数据库
3、测试以及查看数据库
1、登录数据库,创建一个salt数据库,三个表:jids、salt_returns、salt_events[root@salt-master ~]# mysql -u root -pEnter password: Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 360Server version: 5.5.50-MariaDB MariaDB ServerCopyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> CREATE DATABASE `salt` -> DEFAULT CHARACTER SET utf8 -> DEFAULT COLLATE utf8_general_ci;Query OK, 1 row affected (0.00 sec)MariaDB [(none)]> USE `salt`;Database changedMariaDB [salt]> DROP TABLE IF EXISTS `jids`;Query OK, 0 rows affected, 1 warning (0.00 sec)MariaDB [salt]> CREATE TABLE `jids` ( -> `jid` varchar(255) NOT NULL, -> `load` mediumtext NOT NULL, -> UNIQUE KEY `jid` (`jid`) -> ) ENGINE=InnoDB DEFAULT CHARSET=utf8;Query OK, 0 rows affected (0.04 sec)MariaDB [salt]> CREATE INDEX jid ON jids(jid) USING BTREE;ERROR 1061 (42000): Duplicate key name 'jid'MariaDB [salt]> CREATE INDEX jid ON jids(jid) USING BTREE;ERROR 1061 (42000): Duplicate key name 'jid'MariaDB [salt]> 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;Query OK, 0 rows affected (0.04 sec)MariaDB [salt]> DROP TABLE IF EXISTS `salt_events`;Query OK, 0 rows affected, 1 warning (0.01 sec)MariaDB [salt]> 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;Query OK, 0 rows affected (0.05 sec)创建数据库完毕!2、开始查看一下数据表,三个没错。MariaDB [salt]> show tables -> ;+----------------+| Tables_in_salt |+----------------+| jids || salt_events || salt_returns |+----------------+3 rows in set (0.00 sec)MariaDB [salt]> select * from salt_returns;Empty set (0.00 sec)3、给数据库授权,官网竟然没有说,差点漏了MariaDB [salt]> grant all on salt.* to salt@'%' identified by 'salt';Query OK, 0 rows affected (0.00 sec)MariaDB [salt]> flush privileges;Query OK, 0 rows affected (0.01 sec)MariaDB [salt]>4、修改minion配置文件[root@salt-minion01 ~]# vim /etc/salt/minion###### Returner settings ################################################### Which returner(s) will be used for minion's result:#return: mysqlmysql.host: '10.0.0.177' #我的master主机ip地址mysql.user: 'salt'mysql.pass: 'salt'mysql.db: 'salt'mysql.port: 3306[root@salt-minion01 ~]# /etc/init.d/salt-minion restartStopping salt-minion daemon: [ OK ]Starting salt-minion daemon: [ OK ]5、差点忘记安装依赖条件了,安装依赖条件。没有安装成功,和python版本有关,请大家自行寻找,我先第六步试试看,[root@salt-master ~]# yum install MySQLdb -y[root@salt-minion01 ~]# yum install mysql-python -y Loaded plugins: fastestmirrorSetting up Install ProcessLoading mirror speeds from cached hostfile * base: mirrors.zju.edu.cn * epel: mirror01.idc.hinet.net * extras: centos.ustc.edu.cn * updates: centos.ustc.edu.cnNo package mysql-python available. * Maybe you meant: MySQL-pythonError: Nothing to do6、运行测试命令,然后进入数据库查看。[root@salt-master ~]# salt '*' test.ping --return mysqlsalt-master: Truesalt-minion01: Truehddcluster1: Truehddcluster4: Truehddcluster2: Truehddcluster3: True#注意:下面id:salt-master 是因为我上面没有安装成功mysql-python,后来我在master端的minion安装mysql-python成功测试。[root@salt-master ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 367Server version: 5.5.50-MariaDB MariaDB ServerCopyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> use salt; Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedMariaDB [salt]> select * from salt_returns;+-----------+----------------------+--------+-------------+---------+-----------------------------------------------------------------------------------------------------------------------------------------+---------------------+| fun | jid | return | id | success | full_ret | alter_time |+-----------+----------------------+--------+-------------+---------+-----------------------------------------------------------------------------------------------------------------------------------------+---------------------+| test.ping | 20161214171944749902 | true | salt-master | 1 | {"fun_args": [], "jid": "20161214171944749902", "return": true, "retcode": 0, "success": true, "fun": "test.ping", "id": "salt-master"} | 2016-12-14 17:19:54 |+-----------+----------------------+--------+-------------+---------+-----------------------------------------------------------------------------------------------------------------------------------------+---------------------+1 row in set (0.00 sec)MariaDB [salt]> 7、终于找到了包的名字是MySQL-python[root@salt-minion01 ~]# yum install MySQL-pythonLoaded plugins: fastestmirrorSetting up Install ProcessLoading mirror speeds from cached hostfile * base: mirrors.zju.edu.cn * epel: mirror01.idc.hinet.net * extras: centos.ustc.edu.cn * updates: centos.ustc.edu.cnResolving DependenciesThere are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.--> Running transaction check---> Package MySQL-python.x86_64 0:1.2.3-0.3.c1.1.el6 will be installed--> Finished Dependency ResolutionDependencies Resolved===================================================================================== Package Arch Version Repository Size=====================================================================================Installing: MySQL-python x86_64 1.2.3-0.3.c1.1.el6 base 86 kTransaction Summary=====================================================================================Install 1 Package(s)Total download size: 86 kInstalled size: 246 kIs this ok [y/N]: yDownloading Packages:MySQL-python-1.2.3-0.3.c1.1.el6.x86_64.rpm | 86 kB 00:00 Running rpm_check_debugRunning Transaction TestTransaction Test SucceededRunning Transaction Installing : MySQL-python-1.2.3-0.3.c1.1.el6.x86_64 1/1 Verifying : MySQL-python-1.2.3-0.3.c1.1.el6.x86_64 1/1 Installed: MySQL-python.x86_64 0:1.2.3-0.3.c1.1.el6 Complete![root@salt-minion01 ~]# 8、再次测试命令,查看数据库。[root@salt-master ~]# salt 'salt-minion01' test.ping --return mysql salt-minion01: True[root@salt-master ~]# mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g.Your MariaDB connection id is 370Server version: 5.5.50-MariaDB MariaDB ServerCopyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MariaDB [(none)]> use salt; Reading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedMariaDB [salt]> select * from salt_returns;+-----------+----------------------+--------+---------------+---------+-------------------------------------------------------------------------------------------------------------------------------------------+---------------------+| fun | jid | return | id | success | full_ret | alter_time |+-----------+----------------------+--------+---------------+---------+-------------------------------------------------------------------------------------------------------------------------------------------+---------------------+| test.ping | 20161214171944749902 | true | salt-master | 1 | {"fun_args": [], "jid": "20161214171944749902", "return": true, "retcode": 0, "success": true, "fun": "test.ping", "id": "salt-master"} | 2016-12-14 17:19:54 || test.ping | 20161214172841623449 | true | salt-minion01 | 1 | {"fun_args": [], "jid": "20161214172841623449", "return": true, "retcode": 0, "success": true, "fun": "test.ping", "id": "salt-minion01"} | 2016-12-14 17:28:41 |+-----------+----------------------+--------+---------------+---------+-------------------------------------------------------------------------------------------------------------------------------------------+---------------------+2 rows in set (0.00 sec)MariaDB [salt]>
数据
数据库
测试
成功
三个
条件
命令
文件
配置
主机
内容
再次
分支
同时
名字
地址
就是
指向
数据表
有限
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
深圳市鹏城科技互联网
数据库中的图片名称怎么自动改
ciw网络安全认证
金融网络安全ppt
浅析网络安全论文
什么是网络安全工程
干细胞生信数据库有哪些
迅雷网盘能当服务器吗
义乌市云图网络技术
旧服务器加入宝塔面板
vpn添加服务器地址
深圳世信互联网科技有限公司
iss网络安全生态
网络技术助理都做什么的
oraclr数据库迁移
如何用树莓派搭建mc服务器
河北it软件开发推荐
公安信息网络安全遵循
静安区数据软件开发优势
服务器心跳软件
软件开发找哪个平台
广东服务器防火墙作用
网络安全风险漏洞通报整改
大数据数据库课程设计
广州 软件开发有限公司
免费上网软件开发编程
四叶草剧场服务器人鱼港
韩国 网络安全事件
配置服务器域名
2021网民网络安全感调查