zabbix & Grafana 监控搭建

zabbix 监控 Grafana 搭建

1.安装nignx

nginx: http://nginx.org/    ##nginx官网
cd /usr/local/src/
wget http://nginx.org/download/nginx-1.16.1.tar.gz    ##下载nginx 源码包
yum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel ##依赖环境
tar -zaf nginx-1.16.1.tar.gz 
cd nginx-1.16.1
./configure --prefix=/usr/local/nginx ##(安装到此目录 好处是配置文件日志文件都在里面了 )
make && make install ##开始编译安装 

1.1 添加nginx环境变量 启动 验证 nginx服务

vim /etc/profile 
export PATH=$PATH:/usr/local/nginx/sbin  ##添加到环境变量profile  
source /etc/profile
nginx -t  ##测试配置文件是否正常
nginx  ##启动nginx
nginx -s stop
ps auxfww | grep nginx  查看进程
netstat -tulnp | grep nginx 查看监听端口
tail -f /usr/local/nginx/logs/access.log  查看日志

1.2 创建systemctl文件

vim /usr/lib/systemd/system/nginx.service

[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
[Install]
WantedBy=mulit-user.target

1.3 修改nginx.conf

ngnix 默认的配置是无法处理php,所以要修改配置文件 (vim /usr/local/nginx/conf/nginx.conf)

修改前        location / {
            root   html;
            index  index.html index.htm;

修改后        location / {
            root   html;
            index  index.html index.htm index.php; (添加对php支持)


移除注释        #location ~ \.php$ {
      
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script
_name;
            include        fastcgi_params;
        }


1.4 检查配置文件

[root@localhost ~]# nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

2.安装php

yum -y install epel-release ##比较多软件的epel源
yum -y install gcc gcc-c++ make pcre pcre-devel zlib zlib-devel openssl openssl-devel libxml2 libxml2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel openldap openldap-devel libmcrypt libmcrypt-devel   ##依赖环境
cd /usr/local/src/
wget http://www.php.net/distributions/php-7.4.1.tar.gz
tar  -zxf php-5.6.40.tar.gz 
cd php-5.6.40
 ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-ctype --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap --with-gettext --enable-fpm
make && make install ##编译安装 
cp php.ini-production /usr/local/php/php.ini ##复制一个初始文件

2.1添加php环境变量 检查配置文件

vim /etc/profile
export PATH=$PATH:/usr/local/php/sbin/:/usr/local/php/bin   ##添加进环境变量
php-fpm -t 启动
cp /usr/local/php/etc  php-fpm.conf.default php-fpm.conf  ##复制配置文件
cat php-fpm.conf ##查看配置文件是监听在9000端口:
; Note: This value is mandatory.
listen = 127.0.0.1:9000

2.2 创建systemctl 文件

vim /usr/lib/systemd/system/php-fpm.service  ##创建启动service 启动

[Unit]
Description=php-fpm
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/php/sbin/php-fpm
[Install]
WantedBy=mulit-user.target

查看服务是否正常 
[root@localhost ~]# netstat -tulnp | grep php
tcp        0      0 127.0.0.1:9000          0.0.0.0:*               LISTEN      1309/php-fpm: maste 

[root@localhost ~]# ps auxf | grep php-fpm
root      1324  0.0  0.0 112712   964 pts/0    S+   03:22   0:00          \_ grep --color=auto php-fpm
root      1309  0.0  0.4 218888  4992 ?        Ss   03:21   0:00 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nobody    1310  0.0  0.4 218888  4532 ?        S    03:21   0:00  \_ php-fpm: pool www
nobody    1311  0.0  0.4 218888  4532 ?        S    03:21   0:00  \_ php-fpm: pool www
[root@localhost ~]#

3.安装mysql

/usr/local/src 安装包存放路径 
yum install -y gcc gcc-c++ make tar openssl openssl-devel cmake ncurses ncurses-devel
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS:STRING=all -DWITH_DEBUG=0 -DWITH_SSL=yes -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1
useradd -s /sbin/nologin mysql #添加mysql用户

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod a+x /etc/init.d/mysqld
export PATH=$PATH:/usr/local/mysql/bin/ ##添加环境变量

3.1mqsql配置文件

vim /etc/my.cnf ##更新配置
[mysqld]
bind-address=0.0.0.0
port=3306
datadir=/data/mysql
user=mysql
skip-name-resolve
long_query_time=2
slow_query_log_file=/data/mysql/mysql-slow.log
expire_logs_days=2
innodb-file-per-table=1
innodb_flush_log_at_trx_commit = 2
log_warnings = 1
max_allowed_packet = 512M
connect_timeout = 60
net_read_timeout = 120
[mysqld_safe]
log-error=/data/mysql/mysqld.log
pid-file=/data/mysql/mysqld.pid

3.2初始化mysql

mkdir  -pv /data/mysql
chown  -R mysql:mysql /usr/local/mysql/ /data/mysql/
yum install -y perl-Module-Install
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --user=mysql --datadir=/data/mysql/

3.3 创建systemctl 文件

vim /usr/lib/systemd/system/mysqld.service

[Unit]
Description=mysqld
After=network.target
[Service]
Type=forking
ExecStart=/etc/init.d/mysqld start 
[Install]
WantedBy=mulit-user.target```

## 3.4 mysql 安全配置
mysql -uroot -h 127.0.0.1 -A
mysqladmin -h 127.0.0.1 -u root password 'test123'
mysql -uroot -h 127.0.0.1 -p -A
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.%' IDENTIFIED BY 'test123' WITH GRANT OPTION; 
 flush privileges; 

## 3.5 启动 验证mysql 服务
systemctl start mysqld.service
ps auxf | grep mysql
netstat -tulnp | grep mysql
cat /data/mysql/mysqld.log 
```powershell

4.验证LNMP 环境

vim /usr/local/nginx/html/test_mysql.php
<?php
$link=mysql_connect("127.0.0.1","root","test123");
if(!$link){
 echo "mysql_connect fail";
}else{
echo "mysql_connect success";
}
?>
http://serverip/test_mysql.php web访问

5.zabbix 搭建

yum install -y libevent-devel weget tar gcc gcc-c++ make net-snmp-devel libxml2-devel libcurl-devel  #环境依赖:
cd /usr/local/src/
tar -zxvf zabbix-4.0.16.tar.gz 
cd zabbix-4.0.16
./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql=/usr/local/mysql/bin/mysql_config --with-net-snmp --with-libcurl --with-libxml2
make && make install 
export PATH=$PATH:/usr/local/zabbix/sbin/:/usr/local/zabbix/bin  #添加环境变量
zabbix_server --version

5.1 zabbix-server 数据库初始化

使用root 登录mysql
mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.01 sec)
mysql> grant all privileges on zabbix.* to zabbix@'127.0.0.1' identified by 'zabbix123';
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

set names utf8;
use zabbix;
source /usr/local/src/zabbix-4.0.16/database/mysql/schema.sql
source /usr/local/src/zabbix-4.0.16/database/mysql/data.sql
source /usr/local/src/zabbix-4.0.16/database/mysql/images.sql

5.2 zabbix-server 配置


vim /usr/local/zabbix/etc/zabbix_server.conf

LogFile=/usr/local/zabbix/zabbix_server.log
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix123
DBPort=3306
Timeout=30
AlertScriptsPath=/usr/local/zabbix/alertscripts
ExternalScripts=/usr/local/zabbix/externalscrips
LogSlowQueries=3000


useradd -s /sbin/nologin zabbix
chown  zabbix:zabbix -R /usr/local/zabbix/

zabbix_server #启动zabbix
ps auxf| grep zabbix_server
netstat -tulnp| grep zabbix
tail-f /usr/local/zabbix/zabbix_server.log

5.3 zabbix web 安装

mkdir /usr/local/nginx/html/zabbix
cp -a /usr/local/src/zabbix-4.0.16/frontends/php/* /usr/local/nginx/html/zabbix/

http://ip/zabbix/setup.php ##访问zabbix 进行配置
vim /usr/local/php/etc/php.ini ##zabbix web 会提示 部分参数不通过,修改如下php配置参数
post_max_size = 32M
max_execution_time = 350
max_input_time = 350
date.timezone = Asia/Shanghai
always_populate_raw_post_data = -1

systemctl restart php-fpm  ##重启服务

最后zabbix 会尝试一下配置文件 直接复制过来 配置zabbix.conf.php

vim /usr/local/nginx/html/zabbix/conf/zabbix.conf.php
<?php
// Zabbix GUI configuration file.
global $DB;

$DB['TYPE']     = 'MYSQL';
$DB['SERVER']   = '127.0.0.1';
$DB['PORT']     = '3306';
$DB['DATABASE'] = 'zabbix';
$DB['USER']     = 'zabbix';
$DB['PASSWORD'] = 'zabbix123';

// Schema name. Used for IBM DB2 and PostgreSQL.
$DB['SCHEMA'] = '';

$ZBX_SERVER      = 'localhost';
$ZBX_SERVER_PORT = '10051';
$ZBX_SERVER_NAME = '';

$IMAGE_FORMAT_DEFAULT = IMAGE_FORMAT_PNG;

默认zabbix密码为 Admin zabbix

6.Grafana 安装

yum -y localinstall grafana-6.0.2-1.x86_64.rpm
systemctl enable grafana-server
systemctl start grafana-server

源码包
https://download.csdn.net/download/lxbee/12132910

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值