设为首页 收藏本站
查看: 1586|回复: 1

[经验分享] CENTOS7+LNMP+zabbix3.2.6安装配置

[复制链接]

尚未签到

发表于 2019-1-22 08:28:48 | 显示全部楼层 |阅读模式
  1、安装MySQL

  1.1、安装MySQL
  rpm -ivh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
  yum -y install mysql-server
  1.2、修改MySQL的配置文件
  vim /etc/my.cnf
  [mysqld]
  default-storage-engine = innodb
  innodb_file_per_table
  collation-server = utf8_general_ci
  init-connect = 'SET NAMES utf8'
  character-set-server = utf8
  1.3、设置MySQL自动启动并启动MySQL(CENTOS 7):
  # systemctl start mysqld
  # systemctl enable mysqld
  1.4、设置MySQL安全选项
  mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MySQL
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!
In order to log into MySQL to secure it, we'll need the current
password for the root user.  If you've just installed MySQL, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MySQL
root user without the proper authorisation.
Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them.  This is intended only for testing, and to make the installation
go a bit smoother.  You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'.  This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] n
... Success!
By default, MySQL comes with a database named 'test' that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
ERROR 1008 (HY000) at line 1: Can't drop database 'test'; database doesn't exist
... Failed!  Not critical, keep moving...
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
All done!  If you've completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!
Cleaning up...  
  1.5、创建Zabbix数据库
  mysql -uroot -pkingdee
  mysql> create database zabbix character set utf8 collate utf8_bin;
  Query OK, 1 row affected (0.04 sec)
  mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
  Query OK, 0 rows affected (0.01 sec)
  mysql> FLUSH PRIVILEGES;
  Query OK, 0 rows affected (0.00 sec)
  mysql> quit
  Bye
  2、安装PHP
  2.1、安装PHP
  先安装第三方组件:
  yum  -y groupinstall  "Development Tools"
  yum install libxml2* -y  
  yum install curl curl-devel
  yum install libjpeg.x86_64 libpng.x86_64 freetype.x86_64 libjpeg-devel.x86_64 libpng-devel.x86_64 freetype-devel.x86_64
  yum install libjpeg-devel
  wget http://www.bzip.org/1.0.6/bzip2-1.0.6.tar.gz
  tar zxvf bzip2-1.0.6.tar.gz
  cd bzip2-1.0.6
  make install
  再下载安装PHP 5.5.38:
   wget http://php.net/distributions/php-5.5.38.tar.gz
  tar zxvf php-5.5.38.tar.gz
  ./configure --prefix=/usr/local/php-5.5.38 --with-config-file-path=/usr/local/php-5.5.38/etc --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-freetype-dir=/usr/local --enable-gd-native-ttf --with-iconv-dir=/usr/local --enable-mbstring --enable-calendar --with-gettext --with-libxml-dir=/usr/local --with-zlib --with-pdo-mysql=mysqlnd --with-mysqli=mysqlnd --with-mysql=mysqlnd --enable-dom --enable-xml --enable-fpm --with-libdir=lib64 --enable-bcmath
  make
  make install
Installing shared extensions:     /usr/local/php-5.5.38/lib/php/extensions/no-debug-non-zts-20121212/
Installing PHP CLI binary:        /usr/local/php-5.5.38/bin/
Installing PHP CLI man page:      /usr/local/php-5.5.38/php/man/man1/
Installing PHP FPM binary:        /usr/local/php-5.5.38/sbin/
Installing PHP FPM config:        /usr/local/php-5.5.38/etc/
Installing PHP FPM man page:      /usr/local/php-5.5.38/php/man/man8/
Installing PHP FPM status page:      /usr/local/php-5.5.38/php/php/fpm/
Installing PHP CGI binary:        /usr/local/php-5.5.38/bin/
Installing PHP CGI man page:      /usr/local/php-5.5.38/php/man/man1/
Installing build environment:     /usr/local/php-5.5.38/lib/php/build/
Installing header files:          /usr/local/php-5.5.38/include/php/
Installing helper programs:       /usr/local/php-5.5.38/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php-5.5.38/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/php-5.5.38/lib/php/
[PEAR] Archive_Tar    - installed: 1.4.0
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util       - installed: 1.3.0
[PEAR] PEAR           - installed: 1.10.1
Wrote PEAR system config file at: /usr/local/php-5.5.38/etc/pear.conf
You may want to add: /usr/local/php-5.5.38/lib/php to your php.ini include_path
/root/php-5.5.38/build/shtool install -c ext/phar/phar.phar /usr/local/php-5.5.38/bin
ln -s -f phar.phar /usr/local/php-5.5.38/bin/phar
Installing PDO headers:          /usr/local/php-5.5.38/include/php/ext/pdo/  

  cp php.ini-production /usr/local/php-5.5.38/etc/php.ini
  cp /usr/local/php-5.5.38/etc/php-fpm.conf.default /usr/local/php-5.5.38/etc/php-fpm.conf
  vim /usr/local/php-5.5.38/etc/php.ini
  post_max_size=16M
  max_execution_time=300
  max_input_time=300
  date.timezone=Asia/Shanghai
  always_populate_raw_post_data=1
  启动PHP
  /usr/local/php-5.5.38/sbin/php-fpm
  3、安装NGINX
  yum install pcre*
  yum install openssl*
  mkdir -p /data/logs/nginx/
  mkdir -p /data/site/centos7/
  编译安装:
  wget http://nginx.org/download/nginx-1.13.3.tar.gz
  tar zxvf nginx-1.13.3.tar.gz
  ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre
  make
  make install
  其它安装方法:(可选)
  rpm安装:
  rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
  yum install nginx
  启动,停止
  /usr/local/nginx/sbin/nginx  
  /usr/local/nginx/sbin/nginx  -s stop
  重置:当你有修改配置文件的时候,只需要reload一下即可
  /usr/local/nginx/sbin/nginx -s reload
  4、配置nginx php互通
  在nginx.conf的http断中加上如下内容:(注意把原值注释掉)
  vim  /usr/local/nginx/conf/nginx.conf
  server {
  listen 80;
  server_name centos7;
  access_log /data/logs/nginx/centos7.access.log;
  index index.php index.html index.html;
  root /data/site/centos7;
  location /
  {
  try_files $uri $uri/ /index.php?$args;
  }
  location ~ .*\.(php)?$
  {
  expires -1s;
  try_files $uri =404;
  fastcgi_split_path_info ^(.+\.php)(/.+)$;
  include fastcgi_params;
  fastcgi_param PATH_INFO $fastcgi_path_info;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  fastcgi_pass 127.0.0.1:9000;
  }
  }
  建立测试文件
  vim /data/site/centos7/info.php
  
  3. 访问测试
  curl http://centos7/info.php  test php
  注:nginx将会连接回环地址9000端口执行PHP文件,需要使用tcp/ip协议,速度比较慢.建议大家换成使用socket方式连接。将fastcgi_pass 127.0.0.1:9000;改成fastcgi_pass unix:/var/run/php5fpm.sock;
  1、首行,在配置文件/usr/local/php-5.5.38/etc/php-fpm.conf文件中找到
  listen = 127.0.0.1:9000
  修改为:
  listen = /var/run/php5fpm.sock
  listen.mode=0666
  然后,重启php-fpm
  2、接着,配置nginx
  在/usr/local/nginx/conf/nginx.conf中找到
  fastcgi_pass 127.0.0.1:9000;
  修改为:
  fastcgi_pass unix: /var/run/php5fpm.sock;
  授权然后重启PHP:
  chmod 777 /var/run/php5fpm.sock
  重启nginx:
  注意,不关闭SELINUX可能导致无法启动HTTP服务,参考下面方案关闭:
  1、临时关闭(不用重启机器):
  setenforce 0                  ##设置SELinux 成为permissive模式
  ##setenforce 1 设置SELinux 成为enforcing模式
  2、修改配置文件需要重启机器:
  修改/etc/selinux/config 文件
  将SELINUX=enforcing改为SELINUX=disabled
  重启机器即可
  5、安装zabbix server
  wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/3.2.6/zabbix-3.2.6.tar.gz
  tar -zxvf zabbix-3.2.0.tar.gz
  groupadd zabbix
  useradd -g zabbix zabbix
  yum install mysql-devel
  yum install net-snmp-devel
  ./configure --prefix=/usr/local/zabbix-3.2/ --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2
  结果如下:
Configuration:
  Detected OS:           linux-gnu
  Install path:          /usr/local
  Compilation arch:      linux
  Compiler:              gcc
  Compiler flags:         -g -O2
  Library-specific flags:
    database:               -I/usr/include/mysql -g  -m64 -fPIC  -g -fabi-version=2 -fno-omit-frame-pointer -fno-strict-aliasing   
    libXML2:               -I/usr/include/libxml2
    Net-SNMP:               -I/usr/local/include -I/usr/lib64/perl5/CORE -I. -I/usr/include
  Enable server:         yes
  Server details:
    With database:         MySQL
    WEB Monitoring:        cURL
    Native Jabber:         no
    SNMP:                  yes
    IPMI:                  no
    SSH:                   no
    TLS:                   no
    ODBC:                  no
    Linker flags:             -L/usr/lib64/mysql        -L/usr/lib64      -rdynamic  
    Libraries:               -lmysqlclient      -lxml2    -lnetsnmp      -lcurl -lm -ldl  -lresolv
  Enable proxy:          no
  Enable agent:          yes
  Agent details:
    TLS:                   no
    Linker flags:              -rdynamic  
    Libraries:                 -lcurl -lm -ldl  -lresolv
  Enable Java gateway:   no
  LDAP support:          no
  IPv6 support:          no
***********************************************************
*            Now run 'make install'                       *
*                                                         *
*            Thank you for using Zabbix!                  *
*                                  *
***********************************************************  

  make
  make install
  导入表:
  mysql -uzabbix -pzabbix zabbix < database/mysql/schema.sql
  mysql -uzabbix -pzabbix zabbix < database/mysql/images.sql
  mysql -uzabbix -pzabbix zabbix < database/mysql/data.sql
  上述导库请务必注意顺序,否则会出现错误:
  ERROR 1146 (42S02) at line 2: Table 'zabbix.hosts' doesn't exist  
  配置 zabbix_server 配置文件:vim  /usr/local/zabbix-3.2/etc/zabbix_server.conf
  DBHost=localhost
  DBName=zabbix
  DBUser=zabbix
  DBPassword=zabbix
  5.1 拷贝前端文件
  mkdir /data/site/centos7/zabbix
  cp -rp frontends/php/* /data/site/centos7/zabbix
  启动 zabbix server
  /usr/local/zabbix-3.2/sbin/zabbix_server
  启动 nginx
  /usr/local/nginx/sbin/nginx
  启动 PHP
  /usr/local/php-5.5.38/sbin/php-fpm
  6、其它相关设置及错误解决
  做本机HOTS解析
  vim /etc/hosts
  systemctl stop firewalld.service #停止firewall
  systemctl disable firewalld.service #禁止firewall开机启动
  写zabbix_server服务文件:
  vim /lib/systemd/system/zabbix_server.service
  
  [Unit]  
  Description= zabbix_server
  After=network.target  
  [Service]  
  Type=forking  
  ExecStart= /usr/local/zabbix-3.2/sbin/zabbix_server
  ExecReload=
  ExecStop=
  PrivateTmp=true  
  [Install]  
  WantedBy=multi-user.target
  写Nginx服务文件:
  vim /lib/systemd/system/nginx.service  
  
  [Unit]  
  Description=nginx  
  After=network.target  
  [Service]  
  Type=forking  
  ExecStart=/usr/local/nginx/sbin/nginx
  ExecReload=/usr/local/nginx/sbin/nginx -r reload
  ExecStop=/usr/local/nginx/sbin/nginx -s stop
  PrivateTmp=true  
  [Install]  
  WantedBy=multi-user.target
  写PHP服务文件:
  先启用PHP的PID文件
  vim /usr/local/php-5.5.38/etc/php-fpm.conf
  pid =/run/php-fpm.pid
  再写PHP服务文件
  vim /lib/systemd/system/php.service  
  
  [Unit]  
  Description=php
  After=network.target  
  [Service]  
  Type=forking  
  ExecStart=/usr/local/php-5.5.38/sbin/php-fpm
  ExecReload=/usr/local/php-5.5.38/sbin/php-fpm -USR2 `cat ‘run/php-fpm.pid’
  ExecStop=/usr/local/php-5.5.38/sbin/php-fpm -INT `cat ‘run/php-fpm.pid’
  PrivateTmp=true  
  [Install]  
  WantedBy=multi-user.target
  完成后,授权、启动服务、设置服务自动启动:
  chmod 754 /lib/systemd/system/zabbix_server.service
  chmod 754 /lib/systemd/system/nginx.service
  chmod 754 /lib/systemd/system/php.service
  systemctl start zabbix_server
  systemctl start php
  systemctl start nginx
  systemctl start zabbix_server
  systemctl enable php
  systemctl enable nginx
  systemctl enable zabbix_server
  以后如何修改了服务文件,需要使用systemctl daemon-reload  重新加载下服务。
  如果少安装了PHP的扩展,以bcmath为例:
  先安装
  yum install php-bcmath
  再参考下面方案添加扩展:
  http://blog.csdn.net/u014642915/article/details/60868280
  PHP连接MySQL报错"No such file or directory"的解决办法
  http://www.linuxidc.com/Linux/2012-12/76150.htm
  zabbix_server日志(默认位置)
  cat /tmp/zabbix_server.log
  很多时间权限会导致一些问题(比如NGINX安装向导要向网站中写入配置文件 /data/site/centos7/zabbix/conf/zabbix.conf.php),需要对CONF目录授权:
  chmod -R 777 /data/site/centos7/zabbix/conf
  安装后设置服务器:






  7、安装Zabbix Agent
  7.1、下载相关的软件包
  wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.6-1.el7.x86_64.rpm
  7.2、安装Zabbix Agent
  yum localinstall zabbix-agent-3.2.6-1.el7.x86_64.rpm
  7.3、修改Zabbix Agent配置
  vim /etc/zabbix/zabbix_agentd.conf
  Server=192.168.90.127
  7.4、设置Zabbix Agent自动启动并启动Zabbix Agent
  systemctl start zabbix-agent
  systemctl enable zabbix-agent
  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-666185-1-1.html 上篇帖子: zabbix 监控日志关键字 下篇帖子: Centos zabbix 编译安装
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表