部署过程
-
在server1端安装 mariadb-server和MySQL-python
[root@server1 jobs]# yum install -y mariadb-server [root@server1 ~]# yum install -y MySQL-python
-
开启mariadb并在数据库中对本地localhost用户授权
[root@server1 jobs]# systemctl start mariadb [root@server1 jobs]# mysql MariaDB [(none)]> grant all on salt.* to salt@'localhost' identified by 'salt';
-
在server1端的mysql数据库中导入数据
[root@server1 ~]# cat test.sql CREATE DATABASE `salt` DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci; USE `salt`; -- -- Table structure for table `jids` -- 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; -- -- Table structure for table `salt_returns` -- 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; -- -- Table structure for table `salt_events` -- 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; [root@server1 ~]# mysql < test.sql
- 编辑server1端的master文件
[root@server1 ~]# vim /etc/salt/master
#return: mysql
mysql.host: 'localhost'
mysql.user: 'salt'
mysql.pass: 'salt'
mysql.db: 'salt'
mysql.port: 3306
master_job_cache: mysql
[root@server1 ~]# systemctl restart salt-master
-
在server1上向server3 上推送
[root@server1 ~]# salt server3 test.ping server3: True
-
在数据库中查看到推送的数据