资讯专栏INFORMATION COLUMN

Centos-7安装zabbix

charles_paul / 4046人阅读

摘要:,初始化完毕。。。解决图形中文乱码把它拷贝到的端的目录下例如,确认后缀为

本例环境使用Centos7.3 64位

安装zabbix需要mysql的支持,下面是快速安装LNMP的方法(使用EZHTTP安装)

安装LNMP

首先创建一个目录存放下载文件:

</>复制代码

  1. [root@localhost ~]# mkdir /software
  2. [root@localhost software]# cd /software/

安装wget工具:

</>复制代码

  1. [root@localhost software]# yum -y install wget

下载EZHTTP安装脚本:

</>复制代码

  1. [root@localhost software]# wget --no-check-certificate https://github.com/centos-bz/ezhttp/archive/master.zip?time=$(date +%s) -O ezhttp.zip

启动脚本:

</>复制代码

  1. [root@localhost software]# unzip ezhttp.zip
  2. [root@localhost software]# cd ezhttp-master
  3. [root@localhost ezhttp-master]# chmod +x start.sh
  4. [root@localhost ezhttp-master]# ./start.sh

进去选择页面

除了数字选择项需要确认输入,其他的的按回车默认就行:

nginx 和 apache 都行,个人比较喜欢nginx
php版本5.5-7.1
mysql版本5.6

</>复制代码

  1. [root@localhost ezhttp-master]# ./start.sh
  2. #############################################################################
  3. You are welcome to use this script to deploy your linux,hope you like.
  4. The script is written by Zhu Maohai.
  5. If you have any question.
  6. please visit http://www.centos.bz/ezhttp/ and submit your issue.thank you.
  7. ############################################################################
  8. 1) LAMP LNMP LANMP Installation.
  9. 2) Some Useful Tools.
  10. 3) Upgrade Software
  11. 4) Exit.
  12. please select: 1
  13. you select LAMP LNMP LANMP Installation.
  14. 1) LNMP(Nginx MySQL PHP)
  15. 2) LAMP(Apache MySQL PHP)
  16. 3) LNAMP(Nginx Apache MySQL PHP)
  17. 4) back to main menu
  18. please input the package you like to install: 1
  19. #################### nginx setting ####################
  20. 1) nginx-1.8.0
  21. 2) tengine-2.1.0
  22. 3) openresty-1.9.7.3
  23. 4) custom_version
  24. 5) do_not_install
  25. which nginx you do select(default do_not_install): 1
  26. your selection: nginx-1.8.0
  27. nginx-1.8.0 install location(default:/usr/local/nginx,leave blank for default):
  28. nginx-1.8.0 install location: /usr/local/nginx
  29. the nginx-1.8.0 configure parameter is:
  30. --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=/software/ezhttp-master/soft/openssl-1.0.2h --with-http_sub_module --with-http_stub_status_module --with-pcre --with-pcre=/software/ezhttp-master/soft/pcre-8.33 --with-zlib=/software/ezhttp-master/soft/zlib-1.2.8 --with-http_secure_link_module
  31. Would you like to change it?[N/y](default n):
  32. you select no,configure parameter will not be changed.
  33. Do you need to install nginx module?[N/y](default n):
  34. #################### mysql setting ####################
  35. 1) mysql-5.1.73
  36. 2) mysql-5.5.54
  37. 3) mysql-5.6.35
  38. 4) mysql-5.7.17 (need about 2GB RAM when building,try mysql-5.6 if failed)
  39. 5) libmysqlclient18
  40. 6) custom_version
  41. 7) do_not_install
  42. which mysql you"d select(default do_not_install): 3
  43. your selection: mysql-5.6.35
  44. mysql-5.6.35 install location(default:/usr/local/mysql,leave blank for default):
  45. mysql-5.6.35 install location: /usr/local/mysql
  46. mysql data location(default:/usr/local/mysql/data,leave blank for default):
  47. mysql-5.6.35 data location: /usr/local/mysql/data
  48. mysql port number(default:3306,leave blank for default):
  49. mysql port number: 3306
  50. mysql server root password (default:root,leave blank for default): 123456
  51. mysql-5.6.35 root password: 123456
  52. the mysql-5.6.35 configure parameter is:
  53. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/usr/local/mysql/etc -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=complex -DENABLED_LOCAL_INFILE=1
  54. Would you like to change it?[N/y](default n):
  55. you select no,configure parameter will not be changed.
  56. #################### php setting ####################
  57. 1) php-5.2.17
  58. 2) php-5.3.29
  59. 3) php-5.4.43
  60. 4) php-5.5.27
  61. 5) php-5.6.15
  62. 6) php-7.1.0
  63. 7) custom_version
  64. 8) do_not_install
  65. which php you"d select(default do_not_install): 6
  66. your selection: php-7.1.0
  67. php-7.1.0 install location(default:/usr/local/php,leave blank for default):
  68. php-7.1.0 install location: /usr/local/php
  69. the php-7.1.0 configure parameter is:
  70. --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --enable-bcmath=shared --with-pdo_sqlite --with-gettext=shared --with-iconv --enable-ftp=shared --with-sqlite --with-sqlite3 --enable-mbstring=shared --enable-sockets=shared --enable-zip --enable-soap=shared --with-openssl --with-zlib --with-curl=shared --with-gd=shared --with-jpeg-dir --with-png-dir --with-freetype-dir --with-mcrypt=shared,/opt/ezhttp/libmcrypt-2.5.8 --with-mhash=shared,/opt/ezhttp/mhash-0.9.9.9 --enable-opcache --with-mysql=mysqlnd --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --without-pear --with-libdir=lib64 --disable-fileinfo
  71. Would you like to change it?[N/y](default n):
  72. you select no,configure parameter will not be changed.
  73. #################### PHP modules install ####################
  74. php-7.1.0 version available modules:
  75. #################### php_modules install ####################
  76. 1) fileinfo
  77. 2) php-gmp
  78. 3) php-swoole-1.7.20
  79. 4) do_not_install
  80. please input one or more number between 1 and 4(default do_not_install)(ie.1 2 3):
  81. your selection do_not_install
  82. #################### other_soft install ####################
  83. 1) memcached-1.4.24
  84. 2) pure-ftpd-1.0.41
  85. 3) phpMyAdmin-4.4.12-all-languages
  86. 4) redis-3.0.3
  87. 5) mongodb-linux-x86_64-2.4.9
  88. 6) phpRedisAdmin-1.1.0
  89. 7) memadmin-1.0.12
  90. 8) rockmongo-1.1.6-fix-auth
  91. 9) jdk1.7.0_79
  92. 10) jdk1.8.0_66
  93. 11) apache-tomcat-7.0.68
  94. 12) apache-tomcat-8.0.39
  95. 13) do_not_install
  96. please input one or more number between 1 and 13(default do_not_install)(ie.1 2 3): 1 2 3 4 6 10 12
  97. your selection memcached-1.4.24 pure-ftpd-1.0.41 phpMyAdmin-4.4.12-all-languages redis-3.0.3 phpRedisAdmin-1.1.0 jdk1.8.0_66 apache-tomcat-8.0.39
  98. input memcached-1.4.24 location(default:/usr/local/memcached):
  99. memcached location: /usr/local/memcached
  100. input pure-ftpd-1.0.41 location(default:/usr/local/pureftpd):
  101. pureftpd location: /usr/local/pureftpd
  102. Would you like to install web user manager for pureftpd?[N/y](default n):
  103. you select not install web manager
  104. input phpMyAdmin-4.4.12-all-languages location(default:/home/wwwroot/phpmyadmin):
  105. phpmyadmin location: /home/wwwroot/phpmyadmin
  106. input redis-3.0.3 location(default:/usr/local/redis):
  107. redis location: /usr/local/redis
  108. please input the max memory allowed for redis(ie.128M,512m,2G,4g): 128M
  109. 128M
  110. input phpRedisAdmin-1.1.0 location(default:/home/wwwroot/redisadmin):
  111. phpRedisAdmin location: /home/wwwroot/redisadmin
  112. input jdk1.8.0_66 location(default:/usr/local/jdk1.8.0_66):
  113. jdk8 location: /usr/local/jdk1.8.0_66
  114. input apache-tomcat-8.0.39 location(default:/usr/local/tomcat8):
  115. tomcat8 location: /usr/local/tomcat8
  116. #################### your choice overview ####################
  117. Package: lnmp
  118. *****Nginx Setting*****
  119. Nginx: nginx-1.8.0
  120. Nginx Location: /usr/local/nginx
  121. Nginx Configure Parameter: --prefix=/usr/local/nginx --with-http_ssl_module --with-openssl=/software/ezhttp-master/soft/openssl-1.0.2h --with-http_sub_module --with-http_stub_status_module --with-pcre --with-pcre=/software/ezhttp-master/soft/pcre-8.33 --with-zlib=/software/ezhttp-master/soft/zlib-1.2.8 --with-http_secure_link_module
  122. Nginx Modules:
  123. *****MySQL Setting*****
  124. MySQL Server: mysql-5.6.35
  125. MySQL Location: /usr/local/mysql
  126. MySQL Data Location: /usr/local/mysql/data
  127. MySQL Port Number: 3306
  128. MySQL Root Password: 123456
  129. MySQL Configure Parameter: -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/usr/local/mysql/etc -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=complex -DENABLED_LOCAL_INFILE=1
  130. *****PHP Setting*****
  131. PHP: php-7.1.0
  132. PHP Location: /usr/local/php
  133. PHP Configure Parameter: --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm --enable-bcmath=shared --with-pdo_sqlite --with-gettext=shared --with-iconv --enable-ftp=shared --with-sqlite --with-sqlite3 --enable-mbstring=shared --enable-sockets=shared --enable-zip --enable-soap=shared --with-openssl --with-zlib --with-curl=shared --with-gd=shared --with-jpeg-dir --with-png-dir --with-freetype-dir --with-mcrypt=shared,/opt/ezhttp/libmcrypt-2.5.8 --with-mhash=shared,/opt/ezhttp/mhash-0.9.9.9 --enable-opcache --with-mysql=mysqlnd --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --without-pear --with-libdir=lib64 --disable-fileinfo
  134. *****Other Software Setting*****
  135. Other Software: memcached-1.4.24 pure-ftpd-1.0.41 phpMyAdmin-4.4.12-all-languages redis-3.0.3 phpRedisAdmin-1.1.0 jdk1.8.0_66 apache-tomcat-8.0.39
  136. memcached location: /usr/local/memcached
  137. pureftpd location: /usr/local/pureftpd
  138. phpmyadmin_location: /home/wwwroot/phpmyadmin
  139. redis_location: /usr/local/redis
  140. phpRedisAdmin_location: /home/wwwroot/redisadmin
  141. jdk8_location: /usr/local/jdk1.8.0_66
  142. tomcat8_location: /usr/local/tomcat8
  143. JAVA_HOME: /usr/local/jdk1.8.0_66
  144. ##############################################################
  145. Are you ready to configure your Linux?[Y/n](default y):

安装过程等待即可:

</>复制代码

  1. ..............................
  2. ..............................

安装成功:

</>复制代码

  1. start programs...
  2. Starting nginx daemon: .
  3. Starting MySQL.. SUCCESS!
  4. Warning: Using a password on the command line interface can be insecure.
  5. Starting php-fpm done
  6. Starting memcached:
  7. Start pureftpd.... [OK]
  8. Starting Redis server...

使用EZHTTP安装成功后各服务已经打开,输入Linxu 机器IP 访问即可:

开始安装zabbix 配置源

Zabbix在CentOS基本源里不可获得,因此必须配置EPEL 和Zabbix 官方repository,因为需要一款名叫fping的软件(这款软件你下载源码编译安装貌似行不通!),然后其他的yum源将mysql全部识别为mariadb了,所以想yum安装mysql,请安装mysql社区版官方源,或者编译安装,上面的EZHTTP安装脚本就是编译安装

安装EPEL repository

</>复制代码

  1. [root@localhost software]# pwd
  2. /software
  3. [root@localhost software]# yum -y install epel-release

配置ZabbixZone package repository and GPG key

</>复制代码

  1. [root@localhost software]# rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX
  2. [root@localhost software]# rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX-A14FE591
  3. [root@localhost software]# yum -y install fping
  4. [root@localhost software]# rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
安装Zabbix server and agent(agent是可选的)

安装Zabbix server and agent:(配置自己监控自己,所以安装了zabbix-agent)

</>复制代码

  1. yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent

可以上zabbix rpm包官网查看或下载相应包

http://repo.zabbix.com/

创建MySQL 数据库和用户

登录Mysql:

</>复制代码

  1. [root@localhost software]# mysql -uroot -p123456

创建一个数据库zabbix和数据库用户zabbix:

</>复制代码

  1. mysql> create database zabbix character set utf8;
  2. mysql> grant all privileges on zabbix.* to "zabbix"@"localhost" identified by "zabbix";
  3. mysql> flush privileges;
数据库导入zabbix template

看yum安装的zabbix-server-mysql-3.x.x 这个文件的版本是多少就改成多少

</>复制代码

  1. [root@localhost software]# zcat /usr/share/doc/zabbix-server-mysql-3.2.4/create.sql.gz |mysql -uzabbix -pzabbix -b zabbix
配置Zabbix server

</>复制代码

  1. vi /etc/zabbix/zabbix_server.conf

配置下面的几个参数
带#号的就去掉#号,并修改其值

</>复制代码

  1. ListenPort=10051
  2. DBHost=localhost
  3. DBName=zabbix
  4. DBUser=zabbix
  5. DBPassword=zabbix
  6. DBSocket=/usr/local/mysql/data/mysql.sock
  7. DBPort=3306
配置zabbix-agent

</>复制代码

  1. vi /etc/zabbix/zabbix_agentd.conf

配置zabbix server的ip

</>复制代码

  1. ## Line 95 - Specify Zabbix server ##
  2. Server=127.0.0.1
  3. ## Line 136 - Specify Zabbix server ##
  4. ServerActive=127.0.0.1
  5. ## Line 147 - Specify Zabbix server Hostname or IP address
  6. Hostname=127.0.0.1
修改PHP 设置

修改php.ini为zabbix 建议的设置
编辑文件 php.ini,

</>复制代码

  1. [root@localhost software]# vi /usr/local/php/etc/php.ini

设置下面的参数:

</>复制代码

  1. max_execution_time = 300
  2. max_input_time = 300
  3. memory_limit = 128M
  4. post_max_size = 32M
  5. upload_max_filesize = 2M
  6. date.timezone = Asia/Shanghai

安装时可能缺少下面扩展,把下面内容添加到php.ini

</>复制代码

  1. extension=bcmath.so
  2. extension=gettext.so
  3. extension=sockets.so

安装扩展

</>复制代码

  1. [root@localhost ext]# cd /software/ezhttp-master/soft/php-7.1.0/ext
  2. [root@localhost ext]# pwd
  3. /software/ezhttp-master/soft/php-7.1.0/ext
  4. [root@localhost ext]# cd sockets/
  5. [root@localhost sockets]# /usr/local/php/bin/phpize
  6. [root@localhost sockets]# ./configure --with-php-config=/usr/local/php/bin/php-config
  7. [root@localhost sockets]# cd ..
  8. [root@localhost ext]# cd bcmath/
  9. [root@localhost bcmath]# /usr/local/php/bin/phpize
  10. [root@localhost bcmath]# ./configure --with-php-config=/usr/local/php/bin/php-config
  11. [root@localhost bcmath]# cd ..
  12. [root@localhost ext]# cd gettext/
  13. [root@localhost gettext]# /usr/local/php/bin/phpize
  14. [root@localhost gettext]# ./configure --with-php-config=/usr/local/php/bin/php-config

使用下面命令可以看到有一个扩展存放的目录,我们需要的扩展模块在其中即安装成功

</>复制代码

  1. [root@localhost gettext]# make && make install

修改php-fpm运行的用户和组

</>复制代码

  1. [root@localhost software]# vi /usr/local/php/etc/php-fpm.d/www.conf
  2. user = www
  3. group = www
方法一:使用 apache 服务器

apache配置zabbix-web站点文件

</>复制代码

  1. [root@localhost etc]# cd /etc/httpd/

vi conf/httpd.conf
修改下面内容:

</>复制代码

  1. Listen 80
  2. User www
  3. Group wwww
  4. DirectoryIndex index.html index.php

vi conf.d/zabbix.conf
修改内容如下:

</>复制代码

  1. php_value max_execution_time 300
  2. php_value memory_limit 128M
  3. php_value post_max_size 32M
  4. php_value upload_max_filesize 8M
  5. php_value max_input_time 300
  6. php_value always_populate_raw_post_data -1
  7. php_value date.timezone Asia/Shanghai

然后重启apache、mysql、php、zabbix-server
浏览器输入ip/setup.php 即可进入zabbix初次web安装界面

方法二:使用 Nginx 服务器

配置zabbix-web站点文件

把zabbix程序文件拷贝到我们指定的目录,并修改属主和属组

</>复制代码

  1. [root@localhost software]# cp -r /usr/share/zabbix /var/www/
  2. [root@localhost software]# chown -R www:www /var/www/zabbix
  3. [root@localhost software]# chown -R www:www /etc/zabbix
  4. [root@localhost software]# chown -R www:www /usr/share/zabbix
  5. [root@localhost software]# chown -R www:www /usr/lib/zabbix
  6. [root@localhost software]# chmod -R 755 /etc/zabbix/web

创建存放web站点配置文件的目录

</>复制代码

  1. [root@localhost ~]# cd /usr/local/nginx/conf/
  2. [root@localhost conf]# mkdir conf.d/

配置nginx.conf,把新建的目录包含进去

</>复制代码

  1. [root@localhost conf]# vi nginx.conf
  2. listen 80 default_server; ===> 改为 listen 90 default_server;
  3. root /home/wwwroot/; ===> 改为 # root /home/wwwroot/;
  4. include vhost/*.conf; ===> 改为 include /usr/local/nginx/conf/conf.d/*.conf;

配置zabbix.conf(zabiix站点的配置文件)

</>复制代码

  1. [root@localhost conf]# cd conf.d/
  2. [root@localhost conf.d]# vi zabbix.conf

zabbix.conf 内容如下:

</>复制代码

  1. server {
  2. listen 80;
  3. server_name localhost;
  4. root /var/www/zabbix;
  5. index index.php index.html index.htm;
  6. access_log logs/zabbix.access.log;
  7. error_log logs/zabbix.error.log;
  8. location / {
  9. try_files $uri $uri/ /index.php?$args;
  10. }
  11. location ~ .*.(php)?$ {
  12. expires -1s;
  13. try_files $uri =404;
  14. fastcgi_split_path_info ^(.+.php)(/.+)$;
  15. include fastcgi_params;
  16. fastcgi_pass 127.0.0.1:9000;
  17. fastcgi_param PATH_INFO $fastcgi_path_info;
  18. fastcgi_index index.php;
  19. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  20. fastcgi_param PHP_VALUE open_basedir=$document_root:/tmp/:/proc/:/usr/share/zabbix/:/etc/zabbix/web/:/etc/zabbix/;
  21. }
  22. }
启动zabbix 和 各服务

启动zabbix-server 和zabbix-agent。并设置zabbix-server和zabbix-agent开机自动启动

</>复制代码

  1. systemctl start zabbix-server
  2. systemctl start zabbix-agent
  3. /etc/init.d/nginx restart
  4. chkconfig nginx on
  5. /etc/init.d/mysqld restart
  6. chkconfig mysqld on
  7. /etc/init.d/php-fpm restart
  8. chkconfig php-fpm on
  9. systemctl enable zabbix-server
  10. systemctl enable zabbix-agent
修改Firewall 和SELinux 设置

开放zabbix端口10050 and 10051

</>复制代码

  1. firewall-cmd --permanent --add-port=10050/tcp
  2. firewall-cmd --permanent --add-port=10051/tcp

重启firewall

</>复制代码

  1. systemctl restart firewalld

如果使用 SELinux, 运行以下命令使 Apache 可以和 Zabbix通信

</>复制代码

  1. setsebool -P httpd_can_connect_zabbix=1

如果是测试环境可以直接关闭防火墙和selinux

</>复制代码

  1. [root@localhost software]# systemctl stop firewalld
  2. [root@localhost local]# chkconfig firewalld off

修改配置文件,禁用selinux

</>复制代码

  1. [root@localhost software]# setenforce 0
  2. [root@localhost software]# vi /etc/selinux/config
  3. SELINUX=disabled
输入ip/setup.php进入zabbix-web界面进行后续安装操作

确认状态都是ok

配置数据库信息(填写上面我们设置的数据库账户和密码:zabbix,zabbix,测试环境可以直接用root)

进入下一步,默认即可

如果出现下面错误

使用php7.0版本初始化完成后页面有如下的报错:

这个是因为PHP 7.1.0类型强化,处理方法也很简单找到Zabbix WEB目录下include/func.inc.php文件,执行下面命令,并重启php服务:

</>复制代码

  1. sed -i "/$last = strtolower(substr($val, -1));/a$val = substr($val,0,-1);" /var/www/zabbix/include/func.inc.php
  2. /etc/init.d/php-fpm reload

然后刷新页面可以看到已经正常。

ok,初始化完毕。。。


解决图形中文乱码

2.把它拷贝到zabbix的web端的fonts目录下例如:/var/www/html/zabbix/fonts,确认后缀为ttf

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/8029.html

相关文章

  • Centos安装Ansible

    摘要:是新出现的自动化运维工具,基于开发,集合了众多运维工具的优点,实现了批量系统配置批量程序部署批量运行命令等功能。是基于模块工作的,本身没有批量部署的能力。 ansible ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具(puppet、cfengine、chef、func、fabric)的优点,实现了批量系统配置、批量程序部署、批量运行命令等功能。ans...

    Profeel 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<