实战使用saltstack源码安装配置mysql

环境:

salt_master:192.168.100.228
salt_client1:192.168.100.245
master client 版本一致
[[email protected]_server base]# salt --versions-report
           Salt: 0.17.5
         Python: 2.6.6 (r266:84292, Jun 18 2012, 14:18:47)
         Jinja2: unknown
       M2Crypto: 0.20.2
 msgpack-python: 0.1.13
   msgpack-pure: Not Installed
       pycrypto: 2.0.1
         PyYAML: 3.10
          PyZMQ: 2.2.0.1
            ZMQ: 3.2.3
[[email protected]_server base]#

开始安装部署文件:

top.sls文件
[[email protected]_server base]# cat top.sls 
base:
  ‘salt_client*‘:
      - nginx
[[email protected]_server base]#

目录结构:

[[email protected]_server base]# tree mysql/
mysql/
├── conf.sls
├── files
│   ├── conf.sh
│   ├── my.cnf
│   ├── mysql-5.5.22.tar.gz
│   ├── mysqld
│   └── mysqllns.sh
├── init.sls
└── install.sls
1 directory, 8 files
[[email protected]_server base]# 
[[email protected]_server mysql]# cat init.sls 
include:
  - mysql.install
  - mysql.conf
[[email protected]_server mysql]#

安装mysql的主配置文件:

[[email protected]_server mysql]# cat install.sls 
#install source mysql
mysql_source:
  file.managed:
    - name: /home/mysql-5.5.22.tar.gz
    - unless: test -e /home/mysql-5.5.22.tar.gz
    - source: salt://mysql/files/mysql-5.5.22.tar.gz
#tar source mysql
extract_mysql:
  cmd.run:
    - cwd: /home
    - names:
        - tar xf mysql-5.5.22.tar.gz
        - chown root:root /home/mysql-5.5.22 -R
    - unless: test -d /home/mysql-5.5.22
    - require:
        - file: mysql_source
#useradd for mysql
mysql_user:
  user.present:
    - name: mysql
    - uid: 1024
    - createhome: False
    - gid_from_name: True
    - shell: /sbin/nologin
#mysql pkg.install
mysql_pkg:
  pkg.installed:
    - pkgs:
      - gcc
      - gcc-c++
      - autoconf
      - automake
      - openssl
      - openssl-devel
      - zlib
      - zlib-devel
      - ncurses-devel
      - libtool-ltdl-devel
      - cmake
#mysql source install
mysql_commpile:
  cmd.run:
    - cwd: /home/mysql-5.5.22
    - names:
        - cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8  -DDEFAULT_COLLATTON=utf8_cuicode_ci   -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1  -DENABLED_LOCAL_INFILE=1 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_DEBUG=0
        - make
        - make install
    - require:
        - cmd.run: extract_mysql
        - pkg: mysql_pkg
    - unless: test -d /usr/local/mysql
[[email protected]_server mysql]#

mysql config 文件:

[[email protected]_server mysql]# cat conf.sls 
include:
  - mysql.install
# mysql for config
mysql_cnf:
  file.managed:
    - name: /etc/my.cnf
    - user: root
    - mode: 755
    - source: salt://mysql/files/my.cnf
# mysql init
salt://mysql/files/conf.sh:
  cmd.script:
      - env:
          - BATCH: ‘yes‘
      - require:
          - cmd.run: mysql_commpile
          - pkg: mysql_pkg 
# mysql server
mysql_service:
   file.managed:
     - name: /etc/init.d/mysqld
     - user: root
     - mode: 755
     - source: salt://mysql/files/mysqld
   cmd.run:
     - names:
         - /sbin/chkconfig --add mysqld
         - /sbin/chkconfig --level 35 mysqld on
     - unless: /sbin/chkconfig --list mysqld
   service.running:
     - name: mysqld
     - enable: True
     - reload: True
[[email protected]_server mysql]#

配置文件:

[[email protected]_server mysql]# tree files/
files/
├── conf.sh初始化文件
├── my.cnf配置文件
├── mysql-5.5.22.tar.gz安装包
├── mysqld启动脚本
└── mysqllns.sh软连接
0 directories, 5 files
[[email protected]_server mysql]# 
[[email protected]_server mysql]# cat files/conf.sh 
#!/bin/bash
/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
[[email protected]_server mysql]# cat files/mysqllns.sh 
#!/bin/bash
#lns
ln -sv /usr/local/mysql/bin/mysql /usr/bin 
ln -sv /usr/local/mysql/bin/mysqladmin /usr/bin/
ln -sv /usr/local/mysql/bin/mysqldump /usr/bin/
#mysq competence
/bin/chown -R mysql.mysql /usr/local/mysql/ && /bin/chown -R mysql.mysql /usr/local/mysql/data/
[[email protected]_server mysql]#
时间: 2024-10-20 08:06:08

实战使用saltstack源码安装配置mysql的相关文章

MySQL系列 - MySQL源码安装配置

二.MySQL系列 - MySQL源码安装配置(附5.7等最新版本)1.依赖环境准备2.开始安装2.1.下载MySQL2.2.解压2.3.赋权限2.4.修改配置文件2.5.启动MySQL3.MySQL 5.7源码安装不同之处 二.MySQL系列 - MySQL源码安装配置(附5.7等最新版本) 1.依赖环境准备 make安装 make编译器下载地址:http://www.gnu.org/software/make/ # tar zxvf make-3.82.tar.gz # cd make-3.

saltstack 系列(四)centos7使用saltstack源码安装nginx

使用saltstack源码安装nginx,首先先看一下我nginx的目录  tree一下,我们只需要关系nginx-install.sls 和nignx-service.sls.clu-vhost是我用python写的自动添加集群和自动更新踢出集群,后面会讲到. nginx ├── files │   ├── clu-vhost │   │   ├── 11.py │   │   ├── content.txt │   │   ├── epel-release-latest-7.noarch.r

linux小白 mysql5.0源码安装配置

安装mysql-5.0.45.tar.gz(该软件包下载地址:http://www.filewatcher.com/m/mysql-5.0.45.tar.gz.24433261-0.html) # groupadd mysql              #添加mysql组 # useradd -g mysql mysql      #添加mysql用户,且加入mysql组 --------------------编译过程---------------------------------- # t

saltstack源码安装nrpe

最近弄saltstack弄上瘾了,今天又弄了saltstack源码安装nrpe,安装nrpe之前需要安装nagios-plugins,首先是top.sls文件: [[email protected] salt]# cat top.sls base: '*': - nagios [[email protected] salt]# tree nagios   #目录结构 nagios ├── conf.sls ├── files │?? ├── conf.sh │?? ├── nagios-plug

apr apr-util apache 源码安装 配置系统服务

在官网下载 源码包 apr-1.5.1.tar.gz apr-util-1.5.3.tar.gz httpd-2.4.10.tar.gz 安装用户是root 解压命令 tar -zxvf httpd-2.4.10.tar.gz 源码安装 apr ,apr-util ./configure --prefix=/usr/local/apr 报错:rm: cannot remove `libtoolT': No such file or directory 我直接忽略了,网上看有修改configure

Apache HTTP Server的源码安装配置及实现

Apache HTTP Server简介 Linux下最有名的.功能最丰富的WEB服务器就属Apache HTTP Server(简称Apache). Apache HTTP Server是Apache软件基金会最有名的开源项目之一,它可以在大多数操作系统上运行. 目前官网的主要版本为2.2和2.4.CentOS 6使用2.2版本,CentOS 7使用2.4版本. 目前生产环境中部署2.2版本的居多,但是2.4版本有很多新的特性,下面就简要说明以下: (1)运行时动态可装载MPM 在2.4版本中

mysql 5.5.6 源码安装配置

http://dev.mysql.com/doc/refman/5.6/en/index.html  mysql官网安装手册 http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html源码安装说明 根据官网文档将安装过程写成一个批处理文件mysql.install安装完毕之后需要修改配置文件 修改编码,防止乱码 my.cnf 配置参考http://dev.mysql.com/doc/refman/5.6/en/

通过saltstack源码安装mysql

tree /srv/salt /srv/salt |-- mysql |   |-- conf.sls |   |-- files |   |  |-- conf.sh |   |  |-- my.cnf |   |  |-- mysql-5.5.33.tar.gz |   |  |-- mysqld |   |  `-- mysqllns.sh |   |-- init.sls |   `-- install.sls `-- top.sls cat /srv/salt/top.sls base

saltstack源码安装zabbix_agent

公司现有的监控使用zabbix,saltstack客户端服务端安装好后,客户端不需要每台机器逐台安装,当然修改zabbix配置文件,直接用salt完成,今天测试了salt源码安装zabbix_agent,效果还行: 老规矩,top.sls [[email protected] salt]# cat top.sls base: '*': - zabbix #目录树 [[email protected] salt]# tree zabbix/ zabbix/ ├── conf.sls ├── fil