zoukankan      html  css  js  c++  java
  • SaltStack远程执行-返回MySQL

      上一篇:SaltStack远程执行-模块

      

      参考官方文档:https://docs.saltstack.com/en/latest/ref/returners/all/salt.returners.mysql.html#module-salt.returners.mysql

      Salt执行的返回是由minion返回的,是由minion直接写在数据库或者其他里面的

      在minion上面安装MySQL-python (salt不支持交互所以需要yum安装是时候加参数y)

    salt '*' cmd.run 'yum -y install MySQL-python'
    

      也可以使用命令

    salt '*' state.single pkg.installed name=MySQL-python
    

      在master上面安装mariadb

    yum -y install mariadb-server
    

      进入mysql创建数据库并且使用库

    CREATE DATABASE  `salt`
      DEFAULT CHARACTER SET utf8
      DEFAULT COLLATE utf8_general_ci;
    
    use salt
    

      创建表

    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;
    

      

    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;
    

      

    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 'salt@pwd';
    

      修改minion配置文件/etc/salt/minion添加以下几行

    mysql.host: '192.168.56.11'
    mysql.user: 'salt'
    mysql.pass: 'salt@pwd'
    mysql.db: 'salt'
    mysql.port: 3306
    

      重启minion

    systemctl restart salt-minion
    

      测试

    salt '*' test.ping --return mysql
    

      查看数据表

      可以通过master收集

      修改master配置文件

    master_job_cache: mysql
    mysql.host: '192.168.56.11'
    mysql.user: 'salt'
    mysql.pass: 'salt@pwd'
    mysql.db: 'salt'
    mysql.port: 3306
    

      重启

     systemctl restart salt-master
    

      这个时候不使用return mysql就可以输出到mysql 在minion上面不需要安装MySQL-python包    

      没成功

      加参数-v显示jid

      排错:

      安装mariadb-server及MySQL-python时候报错

      原因:之前使用rpm包安装了MySQL5.7

      解决办法:卸载mysql-community-common

    yum remove mysql-community-common
    

      

       安装了mariadb以后无法启动报错为

      原因:和之前rpm包安装的MySQL有冲突

      解决办法:删除原所有数据文件,默认文件夹为/var/lib/mysql 可以在配置文件/etc/my.cnf下面查看到默认的数据文件放置位置

      下一篇:SaltStack之Salt-ssh

  • 相关阅读:
    OutputCache 缓存key的创建 CreateOutputCachedItemKey
    Asp.net Web Api源码调试
    asp.net mvc源码分析DefaultModelBinder 自定义的普通数据类型的绑定和验证
    Asp.net web Api源码分析HttpParameterBinding
    Asp.net web Api源码分析HttpRequestMessage的创建
    asp.net mvc源码分析ActionResult篇 RazorView.RenderView
    Asp.Net MVC 项目预编译 View
    Asp.net Web.config文件读取路径你真的清楚吗?
    asp.net 动态创建TextBox控件 如何加载状态信息
    asp.net mvc源码分析BeginForm方法 和ClientValidationEnabled 属性
  • 原文地址:https://www.cnblogs.com/minseo/p/8776093.html
Copyright © 2011-2022 走看看