栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

saltstack部署zabbix

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

saltstack部署zabbix

[root@master prod]# ls
modules  zabbix
[root@master prod]# tree modules/
modules/
├── application
│   └── php
│       ├── files
│       │   ├── install.sh
│       │   ├── php-8.0.10.tar.gz
│       │   ├── php-fpm
│       │   ├── php-fpm.conf
│       │   ├── php-fpm.service
│       │   └── www.conf
│       └── install.sls
├── database
│   └── mysql
│       ├── files
│       │   ├── install.sh
│       │   ├── mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz
│       │   ├── mysqld.service
│       │   └── mysql.server
│       └── install.sls
└── web
    └── httpd
        ├── files
        │   ├── apr-1.7.0.tar.gz
        │   ├── apr-util-1.6.1.tar.gz
        │   ├── httpd-2.4.49.tar.gz
        │   ├── httpd.conf
        │   ├── httpd.service
        │   └── install.sh
        └── install.sls

9 directories, 19 files
[root@master prod]# 
//httpd
[root@master prod]# cat modules/web/httpd/install.sls 
apache-dep-package:
  pkg.installed: 
    - pkgs:
      - openssl-devel
      - pcre-devel
      - expat-devel
      - libtool
      - gcc
      - gcc-c++ 
      - make

apache: 
  user.present: 
    - shell: /sbin/nologin
    - createhome: false
    - system: true

apache-download: 
  file.managed:
    - names: 
      - /usr/src/apr-1.7.0.tar.gz:
        - source: salt://modules/web/httpd/files/apr-1.7.0.tar.gz
      - /usr/src/apr-util-1.6.1.tar.gz:
        - source: salt://modules/web/httpd/files/apr-util-1.6.1.tar.gz
      - /usr/src/httpd-2.4.49.tar.gz:
        - source: salt://modules/web/httpd/files/httpd-2.4.49.tar.gz


salt://modules/web/httpd/files/install.sh:
  cmd.script

/usr/local/apache/conf/httpd.conf:
  file.managed: 
    - source: salt://modules/web/httpd/files/httpd.conf
    - user: root
    - group: root
    - mode: '0644'

/usr/lib/systemd/system/httpd.service:
  file.managed:
    - source: salt://modules/web/httpd/files/httpd.service
    - user: root
    - root: root
    - mode: '0644'
[root@master prod]# cat modules/web/httpd/files/install.sh 
#!/bin/bash

cd /usr/src
tar xf apr-1.7.0.tar.gz
tar xf apr-util-1.6.1.tar.gz
tar xf httpd-2.4.49.tar.gz

cd /usr/src/apr-1.7.0
    sed -i '/$RM "$cfgfile"/d' configure
    ./configure --prefix=/usr/local/apr && make && make install

cd ../apr-util-1.6.1
    ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr && make && make install

cd ../httpd-2.4.49
    ./configure --prefix=/usr/local/apache 
     --enable-so 
     --enable-ssl 
     --enable-cgi 
     --enable-rewrite 
     --with-zlib 
     --with-pcre 
     --with-apr=/usr/local/apr 
     --with-apr-util=/usr/local/apr-util/ 
     --enable-modules=most 
     --enable-mpms-shared=all 
     --with-mpm=prefork && make && make install

systemctl daemon-reload
[root@master prod]# 
mysql
[root@master prod]# cat modules/database/mysql/install.sls 
ncurses-compat-libs:
  pkg.installed

mysql:
  user.present:
    - shell: /sbin/nologin
    - createhome: false
    - system: true

create-data: 
  file.directory: 
    - name: /opt/data
    - user: mysql
    - group: mysql
    - mode: '0755'
    - makedirs: true 

echo 'export PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh: 
  cmd.run


/usr/src/mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz:
  file.managed:
    - source: salt://modules/database/mysql/files/mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz
    - user: root
    - group: root
    - mode: '0644'

salt://modules/database/mysql/files/install.sh:
  cmd.script

files: 
  file.managed: 
    - names: 
        - /usr/local/mysql/support-files/mysql.server:
          - source: salt://modules/database/mysql/files/mysql.server
        - /usr/lib/systemd/system/mysqld.service:
          - source: salt://modules/database/mysql/files/mysqld.service
[root@master prod]# 
[root@master prod]# cat modules/database/mysql/files/install.sh 
#!/bin/bash

cd /usr/src
rm -rf mysql-5.7.34-linux-glibc2.12-x86_64
tar xf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz -C /usr/local

ln -s /usr/local/mysql-5.7.34-linux-glibc2.12-x86_64 /usr/local/mysql

chown -R mysql.mysql /usr/local/mysql*

/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/opt/data/


[root@master prod]# 
php
[root@master prod]# cat modules/application/php/install.sls 
php-dep-package:
  pkg.installed:
    - pkgs:
      - epel-release
      - sqlite-devel 
      - libzip-devel 
      - libxml2 
      - libxml2-devel 
      - openssl 
      - openssl-devel 
      - bzip2 
      - bzip2-devel 
      - libcurl 
      - libcurl-devel 
      - libicu-devel 
      - libjpeg-turbo 
      - libjpeg-turbo-devel
      - libpng 
      - libpng-devel 
      - openldap-devel 
      - pcre-devel 
      - freetype 
      - freetype-devel 
      - gmp 
      - gmp-devel
      - readline 
      - readline-devel 
      - libxslt 
      - libxslt-devel 
      - oniguruma-devel
      - libzip-devel
      - libsqlite3x-devel

/usr/src/php-8.0.10.tar.gz: 
   file.managed: 
     - source: salt://modules/application/php/files/php-8.0.10.tar.gz
     - user: root
     - group: root
     - mode: '0644'

salt://modules/application/php/files/install.sh:
   cmd.script

cp: 
  file.managed: 
    - names: 
       - /etc/init.d/php-fpm:
         - source: salt://modules/application/php/files/php-fpm
         - user: root
         - group: root
         - mode: '0755'
       - /usr/local/php8/etc/php-fpm.conf:
         - source: salt://modules/application/php/files/php-fpm.conf
       - /usr/local/php8/etc/php-fpm.d/www.conf:
         - source: salt://modules/application/php/files/www.conf
       - /usr/lib/systemd/system/php-fpm.service: 
         - source: salt://modules/application/php/files/php-fpm.service

php-fpm.service: 
  service.running: 
    - enable: true
[root@master prod]# 
[root@master prod]# cat modules/application/php/files/install.sh 
#!/bin/bash

cd /usr/src
rm -rf php-8.0.10
tar xf php-8.0.10.tar.gz 

cd php-8.0.10
./configure --prefix=/usr/local/php8  
  --with-config-file-path=/etc 
  --enable-fpm 
  --disable-debug 
  --disable-rpath 
  --enable-shared 
  --enable-soap 
  --with-openssl 
  --enable-bcmath 
  --with-iconv 
  --with-bz2 
  --enable-calendar 
  --with-curl 
  --enable-exif  
  --enable-ftp 
  --enable-gd 
  --with-jpeg 
  --with-zlib-dir 
  --with-freetype 
  --with-gettext 
  --enable-mbstring 
  --enable-pdo 
  --with-mysqli=mysqlnd 
  --with-pdo-mysql=mysqlnd 
  --with-readline 
  --enable-shmop 
  --enable-simplexml 
  --enable-sockets 
  --with-zip 
  --enable-mysqlnd-compression-support 
  --with-pear 
  --enable-pcntl 
  --enable-posix  && 
make && make install
  
[root@master prod]# 

zabbix
[root@master prod]# tree zabbix/
zabbix/
├── apache.sls
├── files
│   ├── index.php
│   ├── my.cnf
│   ├── mysql.conf
│   ├── php.ini
│   ├── vhosts.conf
│   ├── zabbix-5.4.4.tar.gz
│   ├── zabbix_server.conf
│   └── zabbix.sh
├── lamp.sls
├── mysql.sls
└── zabbix.sls

1 directory, 12 files
[root@master prod]# 
[root@master prod]# cat zabbix/zabbix.sls 
zabbix-packages:
  pkg.installed: 
    - pkgs: 
      - net-snmp-devel
      - libevent-devel
      - gcc
      - gcc-c++
      - make

zabbix:
  user.present:
    - shell: /sbin/nologin
    - createhome: false
    - system: true

/usr/src/zabbix-5.4.4.tar.gz:
  file.managed:
    - source: salt://zabbix/files/zabbix-5.4.4.tar.gz
    - user: root
    - group: root
    - mode: '0644'

salt://zabbix/files/zabbix.sh:
  cmd.script

/usr/local/etc/zabbix_server.conf:
  file.managed: 
    - source: salt://zabbix/files/zabbix_server.conf


/etc/php.ini: 
  file.managed: 
    - source: salt://zabbix/files/php.ini

/var/lib/mysql: 
  file.symlink: 
    - target: /tmp/mysql.sock

zabbix-service: 
  cmd.run:
    - names: 
      - zabbix_agentd
      - zabbix_server



[root@master prod]# 
[root@master prod]# cat zabbix/files/zabbix.sh 
cd /usr/src
tar xf   zabbix-5.4.4.tar.gz

/usr/local/mysql/bin/mysql -uroot -p123456 -e "create database zabbix character set utf8 collate utf8_bin;"
/usr/local/mysql/bin/mysql -uroot -p123456 -e "grant all privileges on zabbix.* to 'zabbix'@'localhost' identified by 'zabbix123';"
/usr/local/mysql/bin/mysql -uroot -p123456 -e "flush  privileges;"

cd  /usr/src/zabbix-5.4.4.tar.gz/database/mysql
/usr/local/mysql/bin/mysql -uroot -pzabbix123! zabbix < schema.sql
/usr/local/mysql/bin/mysql -uroot -pzabbix123! zabbix < images.sql
/usr/local/mysql/bin/mysql -uroot -pzabbix123! zabbix < data.sql 

cd  /usr/src/zabbix-5.4.4/
./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2  &&  make install

[root@minion src]# ss -antl
State          Recv-Q         Send-Q                 Local Address:Port                  Peer Address:Port         Process         
LISTEN         0              128                        127.0.0.1:9000                       0.0.0.0:*                            
LISTEN         0              128                          0.0.0.0:22                         0.0.0.0:*                            
LISTEN         0              128                          0.0.0.0:10050                      0.0.0.0:*                            
LISTEN         0              80                                 *:3306                             *:*                            
LISTEN         0              128                                *:80                               *:*                            
LISTEN         0              128                             [::]:22                            [::]:*                            
[root@minion src]# 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/457417.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号