部署环境简介:
本篇文章所用服务器为阿里云ECS Centos7系统、zabbix版本为4.2.8、grafana版本为6.7.3。
Eg挨蒙,开始部署。
一、部署LNMP
第一步:安装nginx
#将nginx的软件源添加到centos 7 系统中:
yum localinstall http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
#安装nginx软件:
yum install nginx -y
#启动nginx服务并加入开机启动项:
systemctl start nginx && systemctl enable nginx
第二步:安装mysql5.7版本
#将mysql5.7软件源添加到系统中
yum localinstall http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
#安装数据库:
yum install mysql-community-server mysql-community-devel -y
#启动数据库服务并加入开机启动项
systemctl start mysqld && systemctl enable mysqld
#查看数据库运行状态:
systemctl status mysqld
#查看mysql5.7的临时密码:
grep 'password' /var/log/mysqld.log
此步很容易出现问题,对于没有初始化生成临时密码的情况,请在/etc/my.cnf下的mysqld下添加skip-grant-tables字段,然后重启服务,进行密码的修改和设置
#使用临时密码登陆数据库:
mysql -u root -p
#修改root用户密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
flush privileges;
quit;
第三步:安装php
#添加php的软件源到系统中,此处安装php7.2
yum localinstall https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
#安装php软件已经扩展:
yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
#安装redis以及PHP的扩展:
yum install redis git -y
cd /usr/local/src/
yum install git -y
git clone https://github.com/phpredis/phpredis.git
cd phpredis
phpize
./configure
make && make install
此处使用了克隆源码编译安装,在此过程中也是比较容易出错的,很容易报错出现php加载不了此扩展,网上很多说直接修改php的配置文件/etc/php.ini,添加内容,然而并不好使,直接编译加载即可
#启动php-fpm服务:
systemctl start php-fpm
systemctl enable php-fpm
#查看下版本:php -v
第四部:整合nginx,使其支持解析php程序
vim /etc/nginx/conf.d/default.conf
#内容如下所示:
server {
listen 80; #监听端口号
server_name localhost; #主机名或域名或ip
root /www; #网站根目录
index index.php index.html; #支持解析的文件类型
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000; #代理到本机的9000端口,解析php程序
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}
第五步:测试lnmp环境是否成功
vim /www/index.php
phpinfo();
?>
访问http://ip 即可
第六步:优化php为zabbix做准备
修改php.ini
vi /etc/php.ini
max_execution_time = 300
max_input_time = 300
date.timezone = Asia/Shanghai
post_max_size = 32M
memory_limit = 128M
mbstring.func_overload = 2
#重启php
systemctl restart php-fpm
二、部署Zabbix Server
1、获取源,安装zabbix server,Web前端,agent
# rpm -Uvh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm
# yum clean all
yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
注: 如果下载不成功,手动去下载rpm包,再上传到服务器,作者也是没有下载成功。
下载地址:
https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-web-mysql-4.2.8-1.el7.noarch.rpm
https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-agent-4.2.8-1.el7.x86_64.rpm
https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-server-mysql-4.2.8-1.el7.x86_64.rpm
2、创建初始数据库
# mysql -uroot -p
password
mysql> create database zabbix character set utf8 collate utf8_bin;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by '123456';
mysql> quit;
3、导入初始架构和数据,系统将提示您输入新创建的密码,然后等待完成。
*# zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix**
4、编辑配置文件 /etc/zabbix/zabbix_server.conf,为zabbix server配置数据库
DBName=zabbix
DBUser=zabbix
DBPassword=123456
5、启动zabbix-server和zabbix-agent,并设置开机启动
# systemctl enable zabbix-server zabbix-agent
# systemctl start zabbix-server zabbix-agent
6、创建Nginx配置文件
在/etc/nginx/conf.d/下创建zabbix.conf文件
注:我们监听的80端口,会与Nginx的默认文件冲突。建议启动前删掉default.conf。
server {
listen 80;
root /usr/share/zabbix;
location ~.*.(php)?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location / {
root /usr/share/zabbix;
index index.php;
}
}
7、重启各组件
启动php-fpm
systemctl restart php-fpm
启动zabbix-server和agent
systemctl restart zabbix-server zabbix-agent
启动Nginx
systemctl restart nginx
8、配置Zabbix前端
把文件上传到/usr/share/zabbix/assets/fonts目录下并修改配置文件
[root@iz2ze846r4r3t1w2vf34luz fonts]# ls
graphfont.ttf simkai.ttf
[root@iz2ze846r4r3t1w2vf34luz fonts]# vim /usr/share/zabbix/include/defines.inc.php
改成如下内容:
define('ZBX_GRAPH_FONT_NAME', 'simkai'); // font file name
define('ZBX_FONT_NAME', 'simkai');
9、重启zabbix-server
systemctl restart zabbix-server
三、部署Zabbix Agent
1、安装zabbix agent
yum -y install zabbix-agent
注: 如果下载不成功,手动去下载rpm包,再上传到服务器,作者也是没有下载成功。
下载地址:
https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-agent-4.2.8-1.el7.x86_64.rpm
2、编辑配置文件
vim /etc/zabbix/zabbix_agentd.conf
Server=10.10.10.10 # zabbix 服务器IP
ServerActive=10.10.10.10 # zabbix 服务器IP
Hostname=39.39.39.39 #当前被监控机的IP
3、启动zabbix-agent
systemctl start zabbix-agent
四、填加agent监控
在zabbix服务器 10.10.10.10 操作:
#在 zabbix 服务器端检查
zabbix_get -s 10.10.10.8 -p10050 -k "system.hostname"
zabbix_get -s 10.10.10.8 -p 10050 -k "system.cpu.load"
四、安装Grafana6.7.3
1、下载rpm包
官网:https://grafana.com/grafana/download?edition=oss
这里我下载最新的我下载的是最新的Grafana-6.7.3版本的rpm包安装,注意grafana仅支持64位系统。
2、使用yum命令安装:
sudo yum localinstall -y grafana-6.7.3-1.x86_64.rpm
3、启动grafana
systemctl restart grafana-server
systemctl enable grafana-server
4、验证
访问http://ip:3000
默认管理员账号密码为admin/admin,第一次登录强制修改密码。
至此环境所用到的组件已部署完成,因截图限制,下一篇整合zabbix+grafana,敬请期待。bye