一、安装常用依赖包

(本文永久地址:http://www.jb51.cc/article/p-xyhpwomp-bmq.html)

yum install -y make gcc gcc-c++ perl zlib-devel libaio libpng libpng-devel libjpeg-devel pcre-devel

yum install -y libXpm-devel openssl openssl-devel libxml2-devel bzip2-devel.x86_64 libjpeg-turbo-devel

yum install -y freetype freetype-devel libtool cmake ncurses-devel bison re2c curl-devel wget

rpm -ivh "http://mirrors.sohu.com/fedora-epel/epel-release-latest-6.noarch.rpm"

yum install -y libmcrypt-devel re2c


二、安装Nginx

cd /usr/local/src

wget http://mirrors.sohu.com/Nginx/Nginx-1.12.0.tar.gz

tar zxvf Nginx-1.12.0.tar.gz

cd Nginx-1.12.0

./configure --prefix=/usr/local/Nginx --with-pcre --with-http_stub_status_module --with-http_ssl_module

make && make install

vi /etc/init.d/Nginx

把下面Nginx启动脚本保存为 /etc/init.d/Nginx,

#!/bin/sh
#
#Nginx-thisscriptstartsandstopstheNginxdaemon
#
#chkconfig:-8515
#description:NginxisanHTTP(S)server,HTTP(S)reverse\
#proxyandIMAP/POP3proxyserver
#processname:Nginx
#config:/etc/Nginx/Nginx.conf
#config:/etc/sysconfig/Nginx
#pidfile:/var/run/Nginx.pid
#Sourcefunctionlibrary.
./etc/rc.d/init.d/functions
#Sourcenetworkingconfiguration.
./etc/sysconfig/network
#Checkthatnetworkingisup.
["$NETWORKING"="no"]&&exit0
Nginx="/usr/sbin/Nginx"
prog=$(basename$Nginx)
sysconfig="/etc/sysconfig/$prog"
lockfile="/var/lock/subsys/Nginx"
pidfile="/var/run/${prog}.pid"
Nginx_CONF_FILE="/etc/Nginx/Nginx.conf"
[-f$sysconfig]&&.$sysconfig
start(){
[-x$Nginx]||exit5
[-f$Nginx_CONF_FILE]||exit6
echo-n$"Starting$prog:"
daemon$Nginx-c$Nginx_CONF_FILE
retval=$?
echo
[$retval-eq0]&&touch$lockfile
return$retval
}
stop(){
echo-n$"Stopping$prog:"
killproc-p$pidfile$prog
retval=$?
echo
[$retval-eq0]&&rm-f$lockfile
return$retval
}
restart(){
configtest_q||return6
stop
start
}
reload(){
configtest_q||return6
echo-n$"Reloading$prog:"
killproc-p$pidfile$prog-HUP
echo
}
configtest(){
$Nginx-t-c$Nginx_CONF_FILE
}
configtest_q(){
$Nginx-t-q-c$Nginx_CONF_FILE
}
rh_status(){
status$prog
}
rh_status_q(){
rh_status>/dev/null2>&1
}
#Upgradethebinarywithnodowntime.
upgrade(){
localoldbin_pidfile="${pidfile}.oldbin"
configtest_q||return6
echo-n$"Upgrading$prog:"
killproc-p$pidfile$prog-USR2
retval=$?
sleep1
if[[-f${oldbin_pidfile}&&-f${pidfile}]];then
killproc-p$oldbin_pidfile$prog-QUIT
success$"$progonlineupgrade"
echo
return0
else
failure$"$progonlineupgrade"
echo
return1
fi
}
#TellNginxtoreopenlogs
reopen_logs(){
configtest_q||return6
echo-n$"Reopening$proglogs:"
killproc-p$pidfile$prog-USR1
retval=$?
echo
return$retval
}
case"$1"in
start)
rh_status_q&&exit0
$1
;;
stop)
rh_status_q||exit0
$1
;;
restart|configtest|reopen_logs)
$1
;;
force-reload|upgrade)
rh_status_q||exit7
upgrade
;;
reload)
rh_status_q||exit7
$1
;;
status|status_q)
rh_$1
;;
condrestart|try-restart)
rh_status_q||exit7
restart
;;
*)
echo$"Usage:$0{start|stop|reload|configtest|status|force-reload|upgrade|restart|reopen_logs}"
exit2
esac

找到下面三行

Nginx="/usr/sbin/Nginx"

pidfile="/var/run/${prog}.pid"

Nginx_CONF_FILE="/etc/Nginx/Nginx.conf"


修改为:

Nginx="/usr/local/Nginx/sbin/Nginx"

pidfile="/usr/local/Nginx/logs/${prog}.pid"

Nginx_CONF_FILE="/usr/local/Nginx/conf/Nginx.conf"


保存后,执行

chmod +x /etc/init.d/Nginx

chkconfig --add Nginx

chkconfig Nginx on

/etc/init.d/Nginx start


三、安装PHP

安装依赖包

yum install openldap openldap-devel -y

cd /usr/local/src

wget http://mirrors.sohu.com/PHP/PHP-5.5.38.tar.gz

tar zxvf PHP-5.5.38.tar.gz

cd PHP-5.5.38

./configure --prefix=/usr/local/PHP --with-config-file-path=/usr/local/PHP/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-gd-native-ttf --with-iconv-dir --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir --with-zlib --with-pdo-MysqL=MysqLnd --with-MysqLi=MysqLnd --with-MysqL=MysqLnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath --with-ldap


make && make install

cp PHP.ini-production /usr/local/PHP/etc/PHP.ini

cp /usr/local/src/PHP-5.5.38/sapi/fpm/init.d.PHP-fpm /etc/init.d/PHP-fpm

cp -v /usr/local/PHP/etc/{PHP-fpm.conf.default,PHP-fpm.conf}

vi /usr/local/PHP/etc/PHP.ini

找到

;date.timezone =

改为

date.timezone = Asia/Chongqing


保存后,执行

chmod 755 /etc/init.d/PHP-fpm

chkconfig --add PHP-fpm

chkconfig PHP-fpm on

service PHP-fpm start


四、安装MysqL

wget http://mirrors.sohu.com/MysqL/mysql-5.6/mysql-5.6.36.tar.gz

tar zxvf mysql-5.6.36.tar.gz

cd mysql-5.6.36


cmake -DCMAKE_INSTALL_PREFIX=/usr/local/MysqL -DDEFAULT_CHARSET=utf8 -DENABLED_LOCAL_INFILE=1 -DMysqL_DATADIR=/data/MysqL -DWITH_EXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMysqL_TCP_PORT=3306 -DDEFAULT_COLLATION=utf8_general_ci


make && make install


建立MysqL用户

useradd -s /sbin/nologin MysqL


初始化数据库,创建系统自带的数据库和表

mkdir -p /data/MysqL

chown -R MysqL:MysqL /data/MysqL

cd /usr/local/MysqL

scripts/MysqL_install_db --basedir=/usr/local/MysqL --datadir=/data/MysqL --user=MysqL


添加服务,拷贝服务脚本到init.d目录,并设置开机启动

cp support-files/my-default.cnf /etc/my.cnf

cp support-files/MysqL.server /etc/init.d/MysqLd

chmod 755 /etc/init.d/MysqLd

vi /etc/init.d/MysqLd

修改datadir

basedir=/usr/local/MysqL

datadir=/data/MysqL

chkconfig --add MysqLd

chkconfig MysqLd on

service MysqLd start

MysqL修改密码

/usr/local/MysqL/bin/MysqLadmin -uroot password "1234"

PATH=$PATH:/usr/local/MysqL/bin

创建zabbix数据库、用户名和密码:

MysqL -uroot -p -e "create database zabbix default charset utf8"

MysqL -uroot -p -e "grant all privileges on zabbix.* to zabbix@'localhost' identified by '1234'";


五、安装zabbix server

官网下载地址 https://www.zabbix.com/download

这里下载的是: zabbix-3.0.10.tar


安装依赖包

yum install net-snmp-devel -y


cd /usr/local/src

tar zxvf zabbix-3.0.10.tar.gz

cd zabbix-3.0.10

./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


创建zabbix用户

useradd -s /sbin/nologin zabbix

导入3个sql文件:(密码这里设的是1234)

MysqL -uroot -p zabbix < database/MysqL/schema.sql

MysqL -uroot -p zabbix < database/MysqL/images.sql

MysqL -uroot -p zabbix < database/MysqL/data.sql


创建网站目录

mkdir /data/web/zabbix -p

将前端文件拷贝到web目录下

cp -rp frontends/PHP/* /data/web/zabbix/

配置Nginx

cd /usr/local/Nginx/conf/

mkdir extra

cd extra/

vi zabbix.conf

加入以下内容,并保存:

server{
listen80;
server_namewww.test.com;
access_log/data/logs/zabbix/www.test.com.access.logmain;
indexindex.htmlindex.PHPindex.html;
root/data/web/zabbix;
location/{
try_files$uri$uri//index.PHP?$args;
}
location~^(.+.PHP)(.*)${
fastcgi_split_path_info^(.+.PHP)(.*)$;
includefastcgi.conf;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.PHP;
fastcgi_paramPATH_INFO$fastcgi_path_info;
}
}

cd ..

vi Nginx

加入以下内容,并保存:

usernobody;
worker_processes1;
#error_loglogs/error.logwarning;
#error_loglogs/error.lognotice;
#error_loglogs/error.loginfo;
pidlogs/Nginx.pid;
events{
worker_connections1024;
}
http{
includemime.types;
default_typeapplication/octet-stream;
log_formatmain'$remote_addr-$remote_user[$time_local]"$request"'
'$status$body_bytes_sent"$http_referer"'
'"$http_user_agent""$http_x_forwarded_for"';
access_loglogs/access.logmain;
sendfileon;
#tcp_nopushon;
#keepalive_timeout0;
keepalive_timeout65;
#gzipon;
includeextra/*.conf;
}

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

修改如下内容并保存:

LogFile=/tmp/zabbix_server.log

PidFile=/tmp/zabbix_server.pid

DBHost=localhost

dbname=zabbix

DBUser=zabbix

DBPassword=1234


启动zabbix server

/usr/local/zabbix/sbin/zabbix_server

如果显示:

error while loading shared libraries: libMysqLclient.so.18: cannot open shared object file: No such file or directory

执行:

ln -s /usr/local/MysqL/lib/libMysqLclient.so.18 /usr/lib64/


查看启动的服务和端口号

netstat -lnpt


六、网页安装zabbix

浏览器访问

http://ip/

(如果无法显示,检查iptables和selinx是否关闭)

wKioL1mBglTS0x2iAABfolGSJAk572.png-wh_50

点下一步

wKiom1mBgo6Ami_wAACeJ7vskAY715.png-wh_50

vi /usr/local/PHP/etc/PHP.ini

跟据错误提示修改,保存后重启PHP-fpm

service PHP-fpm restart

wKioL1mBgqzQl-GcAACNaii7iSc504.png-wh_50

继续点下一步

wKioL1mBgvPyfsTDAABs3agHFkw196.png-wh_50

填写完点下一步

wKiom1mBg4_j_0ttAABbvqTt2Zs885.png-wh_50

填写完点下一步

wKiom1mBg-awc-z0AACDgVek5Bs184.png-wh_50

继续点下一步

wKiom1mBhBjxn1NOAABcx5SmJiE956.png-wh_50

这里的报错是因为Nginx用户没有写入权限,按图中提示手动修改或者直接修改目录权限:

cd /data/web/zabbix/

chown nobody:nobody conf

改完后刷新网页

wKiom1mBhSijDtllAABil_JHMoo974.png-wh_50

点Finish,接下来登陆zabbix,默认管理员账号为 admin:zabbix

wKiom1mBhVfCG6EhAAAjhQvYv8E441.png-wh_50

登陆后的画面:

wKiom1mBhmqxWM9QAADbumBNl_M540.png-wh_50

设置中文显示:

点右上角的小图标,显示如下网页,在Language项修改

wKioL1mBhvKRJhw5AABkE_oQqVg219.png-wh_50

点Update

wKiom1mBh2qzc9OgAAC6I6Re15A965.png-wh_50

已经显示成中文了。


zabbix出现中文乱码的解决方法

zabbix在显示中文时有的地方会出现乱码,这是因为没有中文字库的缘故,只需把windows里的字库复制过去即可。windows的字体文件c:\windows\fonts目录下,比如华文仿宋字体文件名是STFANGSO.ttf。


把字体文件上传到系统里(可以使用PSFTP、FileZilla等文件传输工具上传),将原字体文件直接覆盖

mv STFANGSO.ttf /data/web/zabbix/fonts/DejaVuSans.ttf


或者

把字体文件复制/data/web/zabbix/fonts/目录

vi /data/web/zabbix/include/defines.inc.PHP

找到

define('ZBX_GRAPH_FONT_NAME','DejaVuSans');

修改成上传的中文字体文件名。

Centos6.9下zabbix3.0的搭建的更多相关文章

  1. iOS – 友好的NSDate格式

    我需要在我的应用程序中显示帖子的日期给用户,现在我用这种格式:“5月25日星期五”.如何格式化NSDate以阅读“2小时前”的内容?使其更加用户友好.解决方法NSDateFormatter不能做这样的事情;你将需要建立自己的规则.我想像:所以这是打印’x分钟前’或’x小时前’从日期起24小时,通常是一天.

  2. 从iOS应用程序发送帖子到PHP脚本不工作…简单的解决方案就像

    我之前已经做了好几次了但是由于某些原因我无法通过这个帖子…我尝试了设置为_POST且没有的变量的PHP脚本……当它们未设置为发布时它工作精细.这是我的iOS代码:这里是PHP的一大块,POST变量不在正确的位置?我想这对于更有经验的开发人员来说是一个相当简单的答案,感谢您的帮助!解决方法$_POST是一个数组,而不是一个函数.您需要使用方括号来访问数组索引:

  3. 记一次云计算测试实验-openstack-icehouse-安装swift

    -----------------------controller:---------------------------------sourceadmin-openrc.shkeystoneuser-create--name=swift--pass=000000--email=swift@localhostkeystoneuser-role-add--user=swift--tenant=ser

  4. swift学习2 元组 tuples

    swift中出现了一种新的数据结构,非常牛掰的元组tuples如果懂PHP的猿,会发现这个元组和PHP的数组非常类似,同样是可以默认不指定key,也可以指定key目前的学习疑问是,如何进行元组的遍历?

  5. 尝试使用swift mailer,gmail smtp,php发送邮件

    这里是我的代码:在运行时出现此错误…

  6. Android – 将SQLite与MySQL同步的最佳方式

    参见英文答案>Synchronizingclient-serverdatabases5个我正在开发一个包含网络应用和移动应用程序的项目,该应用程序记录每日用户的数据.用户可以删除,更新他们的数据,他们可以使用许多设备插入数据.我打算这样开发:用户输入他们的数据然后插入sqlite.服务将定期启动(每5小时或每小时)以使用时间戳与MysqL同步.我确实在互联网上使用服务和时间戳搜索了一个样本,但我一

  7. android – 模拟器中hosts文件中的Url映射被忽略

    我正在使用genymotion仿真器,并使用它从主机文件中提取adbremountadbpull/system/etc/hostsC:\Users\Rkn09\Desktop\hosts我添加了新的映射192.168.0.115xxx.mydomain.com,我把它推回到模拟器使用adbpushC:\Users\Rkn09\Desktop\hosts/system/etc/hosts但是当我向x

  8. android – 如何将唯一的GCM注册标识存储到MySQL中

    我正在设置GoogleCloudMessaging机制的服务器端,使用MySQL存储移动应用提供的注册ID.Google可以发出最多4k个注册码,我被迫将其存储在TEXT字段中.所有的好,到目前为止,问题是我必须处理这样的情况:>用户登录到应用程序>该应用从google请求注册ID>应用程序将新的注册ID发送到应用服务器>服务器存储该注册ID并将其链接到当前登录的用户>该用户注销并且新用户登录>应

  9. PHP使用JpGraph绘制折线图操作示例【附源码下载】

    这篇文章主要介绍了PHP使用JpGraph绘制折线图操作,结合实例形式分析了php使用JpGraph的相关操作技巧与注意事项,并附带源码供读者下载参考,需要的朋友可以参考下

  10. jQuery的Cookie封装,与PHP交互的简单实现

    下面小编就为大家带来一篇jQuery的Cookie封装,与PHP交互的简单实现。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部