您的位置:首页技术文章
文章详情页

教你saltstack部署zabbix服务的方法

【字号: 日期:2023-04-06 15:09:29浏览:60作者:猪猪
目录
  • saltstack部署zabbix服务
  • 安装httpd、mysql、php
    • 安装httpd
    • 安装mysql
    • 安装php
  • 部署zabbix所需的lamp架构环境
    • 安装zabbix

saltstack部署zabbix服务

环境

主机 ip 服务 master 192.168.200.132 salt-matser node1 192.168.200.133 salt-minion

[root@master salt]# tree prod/prod/|-- modules|   |-- application|   |   `-- php|   |       |-- files|   |       |   |-- install.sh|   |       |   |-- oniguruma-devel-6.8.2-2.el8.x86_64.rpm|   |       |   |-- php-7.4.24.tar.gz|   |       |   |-- php-fpm|   |       |   |-- php-fpm.conf|   |       |   |-- php-fpm.service|   |       |   `-- www.conf|   |       `-- install.sls|   |-- database|   |   `-- mysql|   |       |-- files|   |       |   |-- install.sh|   |       |   |-- my.cnf|   |       |   |-- mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz|   |       |   |-- mysql.server|   |       |   `-- mysqld.service|   |       `-- install.sls|   `-- web|       `-- apache|   |-- files|   |   |-- apr-1.7.0.tar.gz|   |   |-- apr-util-1.6.1.tar.gz|   |   |-- httpd-2.4.49.tar.gz|   |   |-- httpd.conf|   |   |-- httpd.service|   |   |-- index.php|   |   `-- install.sh|   `-- install.sls`-- zabbix    |-- apache.sls    |-- files    |   |-- index.php    |   |-- install.sh    |   |-- mysql.conf    |   |-- php.ini    |   |-- vhosts.conf    |   |-- zabbix-5.4.4.tar.gz    |   `-- zabbix_server.conf    |-- main.sls    |-- mysql.sls    `-- zabbix.sls

安装httpd、mysql、php

安装httpd

[root@master salt]# cat prod/modules/web/apache/install.sls apache-dep-package:  pkg.installed:    - pkgs:      - openssl-devel      - pcre-devel      - expat-devel      - libtool      - gcc      - gcc-c++      - makeapache:  user.present:    - shell: /sbin/nologin    - createhome: false    - system: trueapache-download:  file.managed:    - names:      - /usr/src/apr-1.7.0.tar.gz:- source: salt://modules/web/apache/files/apr-1.7.0.tar.gz      - /usr/src/apr-util-1.6.1.tar.gz:- source: salt://modules/web/apache/files/apr-util-1.6.1.tar.gz      - /usr/src/httpd-2.4.49.tar.gz:- source: salt://modules/web/apache/files/httpd-2.4.49.tar.gz/usr/lib/systemd/system/httpd.service:  file.managed:    - source: salt://modules/web/apache/files/httpd.service    - user: root    - group: root    - mode: "0644"salt://modules/web/apache/files/install.sh:  cmd.script/usr/local/httpd/conf/httpd.conf:  file.managed:     - source: salt://modules/web/apache/files/httpd.conf    - user: root    - group: root    - mode: "0644"
[root@master salt]# cat prod/modules/web/apache/files/install.sh #!/bin/bashcd /usr/srcrm -rf apr-1.7.0 apr-util-1.6.1 httpd-2.4.49tar xf apr-1.7.0.tar.gztar xf apr-util-1.6.1.tar.gztar xf httpd-2.4.49.tar.gzcd /usr/src/apr-1.7.0sed -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/httpd \--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

安装mysql

[root@master salt]# cat prod/modules/database/mysql/install.slsncurses-compat-libs:   pkg.installedcreate-mysql-user:  user.present:    - name: mysql    - system: true    - createhome: false    - shell: /sbin/nologincreate-datadir:  file.directory:     - name: /opt/data    - user: mysql    - group: mysql    - mode: "0755"    - makedirs: true/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.scripttrasfer-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 salt]# cat prod/modules/database/mysql/files/install.sh#!/bin/bashcd /usr/srctar xf mysql-5.7.34-linux-glibc2.12-x86_64.tar.gz -C /usr/localln -s /usr/local/mysql-5.7.34-linux-glibc2.12-x86_64 /usr/local/mysqlchown -R mysql.mysql /usr/local/mysql*/usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --datadir=/opt/data/echo "export PATH=/usr/local/mysql/bin:$PATH" > /etc/profile.d/mysql.sh

安装php

[root@master salt]# cat prod/modules/application/php/install.sls/usr/src/oniguruma-devel-6.8.2-2.el8.x86_64.rpm:  file.managed:    - source: salt://modules/application/php/files/oniguruma-devel-6.8.2-2.el8.x86_64.rpm    - user: root    - group: root    - mode: "0644"  cmd.run:     - name: yum -y install /usr/src/oniguruma-devel-6.8.2-2.el8.x86_64.rpmdep-package-install:   pkg.installed:     - pkgs:       - 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      - libmcrypt      - libmcrypt-devel      - readline      - readline-devel      - libxslt      - libxslt-devel      - mhash      - mhash-devel      - php-mysqlnd      - libsqlite3x-devel      - libzip-devel/usr/src/php-7.4.24.tar.gz:  file.managed:     - source: salt://modules/application/php/files/php-7.4.24.tar.gz    - user: root    - group: root    - mode: "0644"#salt://modules/application/php/files/install.sh:#  cmd.scriptcopyphp:   file.managed:     - names:       - /etc/init.d/php-fpm:- source: salt://modules/application/php/files/php-fpm- user: root- group: root- mode: "0755"      - /usr/local/php7/etc/php-fpm.conf:- source: salt://modules/application/php/files/php-fpm.conf      - /usr/local/php7/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.servicephp-fpm.service:  service.running:    - enable: true
[root@master salt]# cat prod/modules/application/php/files/install.sh#!/bin/bashcd /usr/srcrm -rf php-7.4.24tar xf php-7.4.24.tar.gzcd php-7.4.24./configure --prefix=/usr/local/php7  \--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

部署zabbix所需的lamp架构环境

[root@master salt]# cat prod/zabbix/apache.sls"Development Tools":  pkg.group_installedinclude:   - modules.web.apache.install/usr/include/httpd:  file.symlink:     - target: /usr/local/apache/include/usr/local/httpd/htdocs/zabbix:  file.directory:     - user: root    - group: root    - mode: "0775"    - makedirs: true/usr/local/httpd/htdocs/zabbix/index.php:  file.managed:     - source: salt://zabbix/files/index.php    - user: root    - group: root    - mode: "0644"/usr/local/httpd/conf/extra/vhosts.conf:  file.managed:     - source: salt://zabbix/files/vhosts.conf    - user: root    - group: root    - mode: "0644"zabbix-apache-service:  service.running:     - name: httpd    - enable: true
[root@master salt]# cat prod/zabbix/mysql.slslamp-dep-package:   pkg.installed:     - pkgs:       - ncurses-devel      - openssl-devel      - openssl      - cmake       - mariadb-develinclude:  - modules.database.mysql.installprovides-mysql-file:  file.managed:     - user: root    - group: root    - mode: "0644"    - names:       - /etc/my.cnf:- source: salt://zabbix/files/my.cnf      - /etc/ld.so.conf.d/mysql.conf:- source: salt://zabbix/files/mysql.conf/usr/local/include/mysql:  file.symlink:     - target: /usr/local/mysql/includemysqld.service:  service.running:     - enable: truemysqld-set-password:   cmd.run:    - name: /usr/local/mysql/bin/mysql -e "set password = password("123456");"

安装zabbix

[root@master salt]# cat prod/zabbix/zabbix.sls    zabbix-dep-packages:  pkg.installed:   - pkgs:     - net-snmp-devel     - libevent-develzabbix:  user.present:    - shell: /sbin/nologin    - system: true    - createhome: false/usr/src/zabbix-5.4.4.tar.gz:  file.managed:    - source: salt://zabbix/files/zabbix-5.4.4.tar.gzsalt://zabbix/files/install.sh:  cmd.script/usr/local/etc/zabbix_server.conf:  file.managed:    - source: salt://zabbix/files/zabbix_server.conf/var/lib/mysql:  file.directory:    - user: root    - group: root          - mode: "0755"/var/lib/mysql/mysql.sock:  file.symlink:    - target: /tmp/mysql.sockzabbix_server:  cmd.run:    - names:      - cp -r /usr/src/zabbix-5.4.4/ui/*  /usr/local/httpd/htdocs/zabbix/      - zabbix_server      - zabbix_agentd/etc/php.ini:  file.managed:    - source: salt://zabbix/files/php.ini    - user: root    - group: root    - mode: "0644"reload-service:  service.running:    - reload: true    - names:      - httpd      - php-fpm
[root@master salt]# cat prod/zabbix/files/install.sh #!/bin/bashcd /usr/srctar xf zabbix-5.4.4.tar.gz -C /usr/src/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 "123";"/usr/local/mysql/bin/mysql -uroot -p123456 -e "flush privileges;"cd /usr/src/zabbix-5.4.4/database/mysql//usr/local/mysql/bin/mysql -uroot -p123456 zabbix < schema.sql/usr/local/mysql/bin/mysql -uroot -p123456 zabbix < images.sql/usr/local/mysql/bin/mysql -uroot -p123456 zabbix < data.sqlcd /usr/src/zabbix-5.4.4./configure --enable-server \--enable-agent \--with-mysql \--with-net-snmp \--with-libcurl \--with-libxml2 && \make install 

到此这篇关于saltstack部署zabbix服务的文章就介绍到这了,更多相关saltstack部署zabbix服务内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

标签: Zabbix