zabbix-lnmp环境基础搭建

1、mysql5.5.49配置    (192.168.1.92)

    yum install cmake gcc* ncurses-devel -y

    groupadd  -g  1000  mysql

    mkdir -pv /data/mysql

    useradd   -u 1000  -g mysql  -d /data/mysql -s /sbin/nologin mysql

    chown -R mysql.mysql /data/mysql

    tar -zxvf mysql-5.5.49.tar.gz -C /usr/local/   

    cd /usr/local/mysql-5.5.49

编译安装

    cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.5.49 -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

    ln -s /usr/local/mysql5.5.49 /usr/local/mysql

初始化数据库

    chown -R mysql.mysql  /usr/local/mysql    

    cd /usr/local/mysql/support-files/

    cp my-medium.cnf /data/mysql/my.cnf

    cp mysql.server /etc/init.d/mysqld       

    chmod +x /etc/init.d/mysqld        

    cd /usr/local/mysql/scripts/

    ./mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

 

    vim /data/mysql/my.cnf 

    datadir=/data/mysql

启动并添加环境变量

    /etc/init.d/mysqld start

    chkconfig mysqld on

    echo 'export PATH="$PATH:/usr/local/bin:/usr/local/mysql/bin"' >> /root/.bashrc

    echo 'export PATH="$PATH:/usr/local/bin:/usr/local/mysql/bin"' >> /etc/profile

    source /etc/profile

    cp /usr/local/mysql5.5.49/lib/libmysqlclient.so.18.0.0  /usr/lib64

或者ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/

<----->创建zabbix数据库

mysql> CREATE DATABASE zabbix;

mysql> GRANT ALL ON zabbix.* TO 'zabbix'@'192.168.1.%' IDENTIFIED BY '123456' ;

mysql> GRANT ALL ON zabbix.* TO 'zabbix'@'localhost' IDENTIFIED BY '123456';

mysql> GRANT ALL ON zabbix.* TO 'zabbix'@'study.zabbix1.com' IDENTIFIED BY '123456';

mysql> FLUSH PRIVILEGES;

 

 

 

--------此步骤在解压zabbix包后操作------------

倒入数据             ---如果mysql与zabbix服务器不在同一主机,可将以下三个sql,                    传到mysql主机上,然后进行数据导入,实现mysql与zabbix分离

                     sql的位置/usr/local/zabbix-3.0.4/database/mysql

按此顺序导入sql,不可颠倒

[root@mysql]#  mysql -uzabbix -p123456 zabbix < /data/mysql/zabbix/schema.sql             

[root@mysql ]#  mysql -uzabbix -p123456 zabbix < /data/mysql/zabbix/images.sql    

[root@mysql ]#  mysql -uzabbix -p123456 zabbix < /data/mysql/zabbix/data.sql

2、安装Nginx  (192.168.1.90)

 

[root@client opt]# yum -y install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre* make  libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel

groupadd  -g 1001 nginx

 [root@client opt]# useradd  nginx  -u 1001 -g nginx

[root@client opt]# tar zxvf nginx-1.8.0.tar.gz  -C /usr/local/

[root@client opt]# cd /usr/local/nginx-1.8.0/

[root@client-nginx-1.8.0]#./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_mp4_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi    --with-pcre

make

make install

 

[root@zabbix1 ~]# vi /etc/nginx/nginx.conf 

  user  nginx;

        worker_processes  4;
        location / {
            root   html;
            index  index.html index.htm index.php;
       location ~ \.php$ {                             --- 取消注释
           root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME /scripts$fastcgi_script_name;
            include        fastcgi_params;
            include         fastcgi.conf;
        }

[root@zabbix1 ~]# /usr/local/nginx/sbin/nginx -c /etc/nginx/nginx.conf

nginx: [emerg] mkdir() "/var/tmp/nginx/client/" failed (2: No such file or directory)

[root@zabbix1 ~]# mkdir -p /var/tmp/nginx/client/

[root@zabbix1 ~]# /usr/local/nginx/sbin/nginx -c /etc/nginx/nginx.conf

 

3安装php

yum install freetype-devel  

 

安装libiconv(加强系统对字符编码转换的支持 --未安装)

[root@client ~]# yum install gcc make gd-devel libjpeg-devel libpng-devel libxml2-devel bzip2-devel libcurl-devel -y

yum install freetype-devel  

tar zxvf 51CTO下载-libiconv-1.14.tar.gz -C /usrocal/

[root@client libiconv-1.14]# ./configure --prefix=/usr/local/libiconv

[root@client libiconv-1.14]# make && make install

安装re2c-0.13.5.tar.gz

tar -zvxf re2c-0.13.5.tar.gz     

./configure && make && make  install

 

[root@client opt]# tar zxvf php-5.5.38.tar.gz -C /usr/local/

 

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

 

 

为php提供配置文件

 [root@zabbix1 php-5.5.38]#  cp php.ini-production  /usr/local/php/etc/php.ini

   vim  /usr/local/php/etc/php.ini

    max_execution_time = 300

    memory_limit = 128M

    post_max_size = 16M

    upload_max_filesize = 2M

    max_input_time = 300

    date.timezone = "Asia/Shanghai"

 

 

为php-fpm提供配置文件:

 

[root@zabbix1 php-5.5.38]#

cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

 

编辑php-fpm的配置文件:

vim /usr/local/php/etc/php-fpm.conf

配置fpm的相关选项为你所需要的值,并启用pid文件(如下最后一行):

pm.max_children = 150

pm.start_servers = 8

pm.min_spare_servers = 5

pm.max_spare_servers = 10

pid = /usr/local/php/var/run/php-fpm.pid  

 

为php-fpm提供Sysv init脚本,并将其添加至服务列表

[root@zabbix1 ~]# cp /usr/local/php-5.5.38/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm

 

chmod +x /etc/rc.d/init.d/php-fpm

chkconfig --add php-fpm

chkconfig php-fpm on

[root@client etc]# service php-fpm start

 

 

 [root@zabbix1 ~]# vi /etc/nginx/fastcgi_params      清空后添加如下内容

 

fastcgi_param  GATEWAY_INTERFACE  CGI/1.1;

fastcgi_param  SERVER_SOFTWARE    nginx;

fastcgi_param  QUERY_STRING       $query_string;

fastcgi_param  REQUEST_METHOD     $request_method;

fastcgi_param  CONTENT_TYPE       $content_type;

fastcgi_param  CONTENT_LENGTH     $content_length;

fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;

fastcgi_param  SCRIPT_NAME        $fastcgi_script_name;

fastcgi_param  REQUEST_URI        $request_uri;

fastcgi_param  DOCUMENT_URI       $document_uri;

fastcgi_param  DOCUMENT_ROOT      $document_root;

fastcgi_param  SERVER_PROTOCOL    $server_protocol;

fastcgi_param  REMOTE_ADDR        $remote_addr;

fastcgi_param  REMOTE_PORT        $remote_port;

fastcgi_param  SERVER_ADDR        $server_addr;

fastcgi_param  SERVER_PORT        $server_port;

fastcgi_param  SERVER_NAME        $server_name;

 

 [root@client etc]# service php-fpm restart

 

 

4、安装zabbix: zabbix-3.0.4

yum install net-snmp-devel mysql-devel curl-devel

groupadd -g 1002 zabbix

useradd  zabbix -u 1002 -g zabbix

[root@client opt]# xz -d zabbix-3.0.4.tar.xz

[root@zabbix1 opt]# tar  -xvf zabbix-3.0.4.tar  -C /usr/local/

[root@zabbix opt]# cd /usr/local/zabbix-3.0.4/

[root@client zabbix-3.0.4]# ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl --with-libxml2  --enable-java  ---选择监控Java需提前配置JDK

 

make

make install

添加端口
vi  /etc/services
    zabbix-agent    10050/tcp               # Zabbix Agent
    zabbix-agent    10050/udp               # Zabbix Agent
    zabbix-trapper  10051/tcp               # Zabbix Trapper
    zabbix-trapper  10051/udp               # Zabbix Trapper

[root@client zabbix-3.0.4]# cp -ra frontends/php/ /usr/local/nginx/html/zabbix
[root@client zabbix-3.0.4]# chown -R nginx.nginx /usr/local/nginx/html/zabbix

添加启动文件

[root@zabbix1 zabbix-3.0.4]# cp misc/init.d/fedora/core5/zabbix_server /etc/init.d/

[root@zabbix1 zabbix-3.0.4]# cp misc/init.d/fedora/core5/zabbix_agentd /etc/init.d/

 

[root@zabbix1 zabbix-3.0.4]# vim /etc/init.d/zabbix_server
修改
     ZABBIX_BIN="/usr/local/sbin/zabbix_server"

     ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_server"


[root@zabbix1 zabbix-3.0.4]# vim /etc/init.d/zabbix_agentd
修改
     ZABBIX_BIN="/usr/local/sbin/zabbix_agentd"

     ZABBIX_BIN="/usr/local/zabbix/sbin/zabbix_agentd"

 

[root@zabbix1 zabbix-3.0.4]# chmod 700 /etc/init.d/zabbix_*

[root@zabbix1 zabbix-3.0.4]# vi /usr/local/zabbix/etc/zabbix_server.conf

DBhost=192.168.1.92       ---如果数据库不在本地,要取消注释,将数据库IP写上

DBName=zabbix
DBUser=zabbix
DBPassword=123456

 

启动服务并设置开机启动

chkconfig zabbix_server on
chkconfig zabbix_agentd on


/etc/init.d/zabbix_server start
/etc/init.d/zabbix_agentd start
 

 

[root@zabbix1 ~]# /usr/local/nginx/sbin/nginx -s reload

 

5、访问本地ip/zabbix/setup.php

 

 

 

 

 

需要给此目录下conf的zabbix.conf.php w+x权限,否则install之前会报错没有权限,可以自行下载conf文件,放在相应位置并且赋权。或者在前面给此文件相应权限。

[root@zabbix1 Downloads]# chmod 755 zabbix.conf.php

[root@zabbix1 Downloads]# cp zabbix.conf.php  /usr/local/nginx/html/zabbix/conf/

 

 

 

6、zabbix-agent安装   (客户端IP为:192.168.1.91)

 

[root@agent1 ~]# yum -y install unixODBC

[root@agent1 ~]# rpm -ivh zabbix-agent-3.0.2-1.el6.x86_64.rpm

[root@agent1 etc]# vi /etc/zabbix/zabbix_agentd.conf

PidFile=/var/run/zabbix/zabbix_agentd.pid

LogFile=/var/log/zabbix/zabbix_agentd.log

LogFileSize=0

Server=192.168.1.90

ServerActive=192.168.1.90

Hostname=agent                          --客户端主机名

Include=/etc/zabbix/zabbix_agentd.d/

 

[root@agent opt]# /etc/init.d/zabbix-agent restart

在服务器端测试是否连通 (服务器端IP为:192.168.1.90)

/usr/local/zabbix/bin/zabbix_get -s 192.168.1.91 -p10050 -k"net.if.in[eth0,bytes]"

在服务器端添加主机:依次点击配置(Configure)-->主机(Hosts)-->创建主机(Create Host)

 

 

 

 

 

配置完成,第一个ZBX会变成绿色。

 

 

 

可以实现聚合监控

 

关于乱码问题:

在网上下载一个SIMKAI.ttl文件, 上传到

[root@zabbix ~]# cd  /usr/local/nginx/html/zabbix/fonts/  --zabbix网页目录

[root@zabbix ~]# vi /usr/local/nginx/html/zabbix/include/defines.inc.php

 

1.// define('ZBX_FONT_NAME', 'DejaVuSans');

  define('ZBX_FONT_NAME', 'simkai');

2.// define('ZBX_GRAPH_FONT_NAME',                'DejaVuSans'); // font file name

define('ZBX_GRAPH_FONT_NAME',           'simkai'); // font file name

 

 

五、Java性能监控

java用jmx

 

卸载后根据jdf新安装的路径定义变量(192.168.1.93)

    rpm -qa | grep jdk       --->确定JDK

       java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64

       java-1.6.0-openjdk-1.6.0.38-1.13.10.4.el6.x86_64

    rpm -qa | grep cgj

    yum -y remove java-1.7.0-openjdk-1.7.0.99-2.6.5.1.el6.x86_64

    mkdir   /usr/local/java

    解压JDK.tar包到/usr/local/java

[root@zabbix ~]# ln -s /usr/local/java/jdk1.7.0_80 /usr/local/jdk

[root@zabbix ~]# echo 'JAVA_HOME=/usr/local/jdk' >> /etc/profile

[root@zabbix ~]# echo 'PATH=$PATH:${JAVA_HOME}/bin/' >> /etc/profile

                        --如果版本不对,可将$PATH改写到bin后面

[root@zabbix ~]# echo 'export JAVA_HOME PATH' >> /etc/profile

[root@zabbix ~]# source /etc/profile

[root@zabbix ~]# java -version

    java version "1.7.0_80"

 

[root@zabbix zabbix-3.0.4]# ./configure  --enable-java  --prefix=/usr/local/zabbix_java_gateway-2.0.6

-----上面编译之后,此步骤不操作,下面操作的路径在/usr/local/zabbix/sbin/zabbix_java

[root@zabbix zabbix-3.0.4]# make && make install clean

[root@zabbix ~]#  ln -s /usr/local/zabbix_java_gateway-2.0.6 /usr/local/zabbix_java_gateway

 

[root@zabbix ~]# /usr/local/zabbix/etc/zabbix_server.conf JavaGateway=127.0.0.1          --JavaGateway服务器的地址,此次在                                   zabbix-server上

JavaGatewayPort=10052

StartJavaPollers=5              --从JavaGateway采集工具的进程数

 

[root@zabbix ~]# cd /usr/local/zabbix_java_gateway/sbin/zabbix_java

 

[root@zabbix zabbix_java]# vi settings.sh

LISTEN_IP="0.0.0.0"                --监听地址

LISTEN_PORT=10052                  --监听端口

START_POLLERS=5                    --开启的工作线程数(必须大于等于                            zabbix_server.conf中的StartJavaPollers)

[root@zabbix zabbix_java]#./startup.sh

[root@zabbix zabbix_java]# netstat -antp | grep 10052

tcp        0      0 :::10052                    :::*                        LISTEN      31492/java        

 

[root@zabbix bin]# pwd

/usr/local/zabbix_java_gateway/sbin/zabbix_java/bin

[root@zabbix bin]# ll

total 44

-rw-r--r-- 1 root root 13520 Aug 15 11:19 catalina-jmx-remote.jar

-rw-r--r-- 1 root root 26829 Aug 11 20:00 zabbix-java-gateway-3.0.4.jar

 

客户端配置:安装JDK

修改zabbix-agent配置文件,修改后重启生效
# vim /etc/zabbix/zabbix_agentd.conf
EnableRemoteCommands=1    开启agent端远程命令执行功能   

 

安装tomcat

[root@agent1 opt]#tar -zxvf apache-tomcat-7.0.70.tar.gz -C /usr/local/

[root@agent1 local]# ln -s /usr/local/apache-tomcat-7.0.70  /usr/local/tomcat

[root@agent1 opt]# cp catalina-jmx-remote.jar /usr/local/tomcat/bin/

 

[root@agent1 ~]# cd /usr/local/tomcat/bin

[root@agent1 bin]# vi catalina.sh

#!/bin/sh

CATALINA_OPTS="${CATALINA_OPTS} -Djava.rmi.server.hostname=192.168.1.94"

CATALINA_OPTS="${CATALINA_OPTS} -Djavax.management.builder.initial="

CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote=true"

CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.port=12345"

CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.ssl=false"

CATALINA_OPTS="${CATALINA_OPTS} -Dcom.sun.management.jmxremote.authenticate=fals

e"

[root@agent1 bin]# ./shutdown.sh

[root@agent1 bin]# pkill java

[root@agent1 bin]# ./startup.sh

------测试是否可以收集数据

[root@zabbix bin]#  java -jar /opt/cmdline-jmxclient-0.10.3.jar - 192.168.1.94:12345 java.lang:type=Memory NonHeapMemoryUsage              

 

08/18/2016 13:30:56 +0800 org.archive.jmx.Client NonHeapMemoryUsage:

committed: 24313856

init: 24313856

max: 136314880

used: 17460680

 

 

 

 

 

 

 

 

 

http://blog.sina.com.cn/s/blog_79ac6aa80101gggo.html

 

sed 's/CATALINA_HOME/CATALINA_HOME_1/g'  /usr/local/tomcat_18086/bin/catalina.sh     > catalina.sh_1

 

 

-Dcom.sun.management.jmxremote 

-Dcom.sun.management.jmxremote.port=3333 

-Dcom.sun.management.jmxremote.authenticate=false 

-Dcom.sun.management.jmxremote.ssl=false

 

 

 

tar -xvf zabbix-3.0.4.tar.xz -C /usr/local/

cd /usr/local/zabbix-3.0.4/

/configure --prefix=/usr/local/zabbix --enable-agent

make install

make clean

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

PidFile=/var/run/zabbix/zabbix_agentd.pid

LogFile=/var/log/zabbix/zabbix_agentd.log

LogFileSize=0

Server=192.168.1.90

ServerActive=192.168.1.90

Hostname=agent                          --客户端主机名

Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

 

cp misc/init.d/fedora/core/zabbix_agentd /etc/init.d/

chmod a+x /etc/init.d/zabbix_agentd

vi /etc/init.d/zabbix_agentd

        # Zabbix-Directory

        BASEDIR=/usr/local/zabbix

 

/etc/init.d/zabbix_agentd start

service zabbix_agentd start

转载于:https://my.oschina.net/xiaojiugea/blog/733825

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值