监控zabbix
1)安装
[root@server11 ~]# cd /srv/
[root@server11 salt]# mkdir zabbix-server
[root@server11 zabbix-server]# vim init.sls
zabbix-server:
pkgrepo.managed:
- name: zabbix
- humanname: zabbix 4.0
- baseurl: http://192.168.100.141/zabbix/4.0
- gpgcheck: 0
pkg.installed:
- pkgs:
- zabbix-server-mysql
- zabbix-agent
[root@zhenji Desktop]# cd /var/www/html/
[root@zhenji html]# ls
rhel7.6 westos zabbix.tar.gz
[root@zhenji html]# tar zxf zabbix.tar.gz
[root@zhenji html]# mount /isos/rhel-server-7.6-x86_64-dvd.iso /var/www/html/rhel7.6/
[root@zhenji html]# ls
rhel7.6 westos zabbix zabbix.tar.gz
[root@server11 mysql]# salt server12 state.sls zabbix-server
2)配置mysq文件
[root@server11 salt]# mkdir mysql
[root@server11 mysql]# vim init.sls
mysql-install:
pkg.installed:
- pkgs:
- mariadb-server
- MySQL-python
file.managed:
- name: /etc/my.cnf
- source: salt://mysql/files/my.cnf
service.running:
- name: mariadb
- enable: true
- watch:
- file: mysql-install
[root@server11 mysql]# mkdir files
[root@server11 mysql]# cd files/
[root@server11 mysql]# scp server13:/etc/my.cnf .
[root@server11 mysql]# vim files/my.cnf
添加
log-bin=mysql-bin
character-set-server=utf8
[root@server11 mysql]# salt server13 state.sls mysql
[root@server11 mysql]# vim init.sls
mysql-install:
pkg.installed:
- pkgs:
- mariadb-server
- MySQL-python
file.managed:
- name: /etc/my.cnf
- source: salt://mysql/files/my.cnf
service.running:
- name: mariadb
- enable: true
- watch:
- file: mysql-install
mysql-config:
mysql_database.present:
- name: zabbix
mysql_user.present:
- name: zabbix
- host: '%'
- password: "westos"
[root@server11 mysql]# salt server13 state.sls mysql
[root@server12 yum.repos.d]# cd /usr/share/doc/zabbix-server-mysql-4.0.5/
[root@server12 zabbix-server-mysql-4.0.5]# ls
AUTHORS ChangeLog COPYING create.sql.gz NEWS README
[root@server12 zabbix-server-mysql-4.0.5]# scp create.sql.gz server11:/srv/salt/mysql/files
[root@server11 mysql]# cd files/
[root@server11 files]# ls
create.sql.gz my.cnf
[root@server11 files]# gunzip create.sql.gz
[root@server11 files]# ls
create.sql my.cnf
[root@server11 mysql]# vim init.sls
[root@server11 mysql]# cat init.sls
mysql-install:
pkg.installed:
- pkgs:
- mariadb-server
- MySQL-python
file.managed:
- name: /etc/my.cnf
- source: salt://mysql/files/my.cnf
service.running:
- name: mariadb
- enable: true
- watch:
- file: mysql-install
mysql-config:
mysql_database.present:
- name: zabbix
mysql_user.present:
- name: zabbix
- host: '%'
- password: "westos"
mysql_grants.present:
- grant: all privileges
- database: zabbix.*
- user: zabbix
- host: '%'
file.managed:
- name: /mnt/create.sql
- source: salt://mysql/files/create.sql
cmd.run:
- name: mysql zabbix < /mnt/create.sql && touch /mnt/zabbix.lock
- creates: /mnt/zabbix.lock
[root@server11 mysql]# salt server13 state.sls mysql
3)配置zabbix-server文件
[root@server11 files]# vim /srv/salt/zabbix-server/init.sls
zabbix-server:
pkgrepo.managed:
- name: zabbix
- humanname: zabbix 4.0
- baseurl: http://192.168.100.141/zabbix/4.0
- gpgcheck: 0
pkg.installed:
- pkgs:
- zabbix-server-mysql
- zabbix-agent
- zabbix-web-mysql
file.managed:
- name: /etc/zabbix/zabbix_server.conf
- source: salt://zabbix-server/files/zabbix_server.conf
service.running:
- name: zabbix-server
- enable: true
- watch:
- file: zabbix-server
zabbix-agent:
service.running
[root@server11 files]# cd /srv/salt/zabbix-server/
[root@server11 zabbix-server]# mkdir files
[root@server11 zabbix-server]# cd files/
[root@server11 files]# scp server12:/etc/zabbix/zabbix_server.conf .
[root@server11 files]# vim zabbix_server.conf
#更改:
DBHost=192.168.100.243
DBPassword=westos
[root@server11 files]# salt server12 state.sls zabbix-server
[root@server12 ~]# yum install mariadb.x86_64 -y
[root@server12 conf.d]# cd /etc/httpd/conf.d/
[root@server12 conf.d]# scp zabbix.conf server11:/srv/salt/zabbix-server/files
[root@server11 zabbix-server]# vim files/zabbix.conf
php_value date.timezone Asis/Shanghai

[root@server11 zabbix-server]# vim init.sls
[root@server11 zabbix-server]# cat init.sls
#添加:
zabbix-web:
file.managed:
- name: /etc/httpd/conf.d/zabbix.conf
- source: salt://zabbix-server/files/zabbix.conf
service.running:
- name: httpd
- enable: true
- watch:
- file: zabbix-web

[root@server11 zabbix-server]# salt server12 state.sls zabbix-server
4)网页访问192.168.100.242/zabbix,把初始化做完,然后移到server11中



Database host:192.168.100.243
[root@server12 conf.d]# cd /etc/zabbix/web/
[root@server12 web]# ls
maintenance.inc.php zabbix.conf.php
[root@server12 web]# mv zabbix.conf.php /mnt/
[root@server12 web]# scp /mnt/zabbix.conf.php server11:/src/salt/zabbix-server/files
[root@server11 files]# cd ..
[root@server11 zabbix-server]# vim init.sls
[root@server11 zabbix-server]# cat init.sls
#添加
/etc/zabbix/web/zabbix.conf.php:
file.managed:
- source: salt://zabbix-server/files/zabbix.conf.php
[root@server11 zabbix-server]# salt server12 state.sls zabbix-server

5)高级推
[root@server11 zabbix-server]# vim /srv/salt/top.sls
[root@server11 zabbix-server]# cat /srv/salt/top.sls
base:
'roles:apache':
- match: grain
- apache
- keepalived
- zabbix-server
'roles:nginx':
- match: grain
- nginx
- keepalived
- mysql
[root@server11 zabbix-server]# salt '*' state.highstate