黑帽联盟

标题: saltstack自动化安装编译redis [打印本页]

作者: 定位    时间: 2019-9-7 09:44
标题: saltstack自动化安装编译redis
环境:centos6.7
172.31.225.250 node1.example.com (salt-master运行的地方)
172.31.225.252 node3.example.com (salt-minion运行的地方)
172.31.225.254 node4.example.com (salt-minion运行的地方)

我们所需要用到的相关文件都在 /srv/salt/prod/files/ 这个目录下面,大家直接下载即可: files.zip (1.94 MB, 下载次数: 0)
21.png

master相关配置:(/etc/salt/master)

  1. file_roots:
  2.   base:
  3.     - /srv/salt/base
  4.   dev:
  5.     - /srv/salt/dev
  6.   prod:
  7.     - /srv/salt/prod

  8. pillar_roots:
  9.   base:
  10.     - /srv/salt/base/pillar
  11.   dev:
  12.     - /srv/salt/dev/pillar
  13.   prod:
  14.     - /srv/salt/prod/pillar
复制代码
1、部署keepalived(这里个人是编译安装)
首先下载源码包:
wget http://download.redis.io/redis-stable.tar.gz
redis所依赖的相关包我已经yum安装过了,这里就不做yum安装了,比如:autoconf组件等,下面直接redis安装

redis安装:(/srv/salt/prod/redis/redis.sls)
  1. redis-source:
  2.   file.managed:
  3.     - name: /usr/local/src/redis-stable.tar.gz
  4.     - source: salt://redis/files/redis-stable.tar.gz
  5.     - user: root
  6.     - group: root
  7.     - mode: 644

  8. redis-install:
  9.   cmd.run:
  10.     - name: cd /usr/local/src/ && tar xf redis-stable.tar.gz && cd redis-stable && make && make install
  11.     - unless: test -f /usr/local/bin/redis-server
  12.     - require:
  13.       - file: redis-source

  14. redis-persistent:
  15.   file.directory:
  16.     - name: /var/redis/data
  17.     - watch_in:
  18.       - service: redis-service

  19. redis-conf-directory:
  20.   file.directory:
  21.     - name: /etc/redis
  22.     - watch_in:
  23.       - service: redis-service

  24. redis-conf:
  25.   file.managed:
  26.     - name: /etc/redis/redis.conf
  27.     - source: salt://redis/files/redis.conf
  28.     - user: root
  29.     - group: root
  30.     - mode: 644
  31.     - require:
  32.       - file: redis-conf-directory
  33.       - cmd: redis-install

  34. redis-init:
  35.   file.managed:
  36.     - name: /etc/init.d/redis
  37.     - source: salt://redis/files/redis_init_script
  38.     - user: root
  39.     - group: root
  40.     - mode: 755
  41.     - require_in:
  42.       - service: redis-service

  43. redis-chkconfig:
  44.   cmd.run:
  45.     - name: chkconfig --add redis
  46.     - unless: chkconfig --list | grep redis
  47.     - require:
  48.       - file: redis-init

  49. redis-service:
  50.   service.running:
  51.     - name: redis
  52.     - enable: True
  53.     - watch:
  54.       - file: redis-conf
复制代码

下面正式安装:
安装之前最好先进行测试安装,检查有没有错误,因为在生产环境下直接执行安装错误,会导致对外服务的相关组件有可能出现问题,所以先进性测试安装
  1. salt '*' state.sls redis.redis env=prod test=True
复制代码
这里我测试没有问题,就直接安装了
  1. salt '*' state.sls redis.redis env=prod
复制代码
查看redis服务,或者查看端口号有没有在机器上(这里自己是在172.31.225.251这台机器上安装的)
22.png



至此就结束了。原创不易,转载请注明原创来处,谢谢!






欢迎光临 黑帽联盟 (https://bbs.cnblackhat.com/) Powered by Discuz! X2.5