1. 程式人生 > >centos無網路環境原始碼安裝zabbix3.4

centos無網路環境原始碼安裝zabbix3.4

Centos6版本搭建zabbix (lnmp環境linux nginx mysql php)

一,關閉防火牆setup與selinux(修改)/etc/selinux/cofng/ 為disabled
二, NGINX的安裝

1,Nginx需要的依賴包
yum -y install make gcc gcc-c++ flex bison file libtool libtool-libs autoconf kernel-devel libjpeg
libjpeg-devel libpng libpng-devel gd freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel
glib2 glib2-devel bzip2 bzip2-devel libevent ncurses ncurses-devel curl curl-devel e2fsprogs
e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel gettext gettext-devel
ncurses-devel gmp-devel unzip libcap lsof pcre pcre-devel libXpm-devel

2,編譯安裝nginx

建立使用者組新增nginx組 再把nginx使用者新增到nginx組裡

groupadd nginx

useradd -g nginx nginx -s /sbin/nologin
解壓nginx
tar -xf nginx
編譯一個 https 安全模組
./configure --with-http_ssl_module
make && make install

3,配置nginx
Vi /usr/local/nginx/conf/nginx.conf(注意 新增下面類容是在原始檔在新增的時候找到#fastcgi關鍵字後面新增)
fastcgi_buffers 8 16k; //快取 php 生成的頁面內容,8個16
fastcgi_buffer_size 32k; //快取 php 生產的頭部資訊
fastcgi_connect_timeout 300; //連線 PHP 的超時時間
fastcgi_send_timeout 300; //傳送請求的超時時間
fastcgi_read_timeout 300; //讀取請求的超時時間
location ~ .php$ { //開啟 9000埠 讓 nginx 支援
root html;(可以修改為 root 然後php的絕對路徑)
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
include fastcgi.conf;
}

複製為:
fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
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.conf;
}

4,啟動nginx
Nginx 停止命令 nginx –s stop

軟連線
ln -s /usr/local/nginx/sbin/nginx /sbin/nginx
啟動Nginx
Nginx

三 安裝PHP

1, yum安裝包
yum install -y epel-release gcc bison bison-devel libmcrypt-devel mcrypt mhash-devel openssl-devel libcurl-devel bzip2-devel readline-devel libedit-devel sqlite-devel jemalloc jemalloc-devel libjpeg-devel libpng-devel libicu-devel openldap-devel zlib libxml libjpeg freetype libpng gd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel openssl openssl-devel libxslt-devel libXpm-devel libXpm-devel

其中 安裝libxml服務的時候要升級rpm -Uhi glibic* 在/上傳的rpm包裡!然後再rpm -hvi libxml

然後執性 rpm –hvi 安裝提前下載好的rpm包

2.編譯安裝php包

./configure --prefix=/usr/local/php --with-bz2 --with-curl --enable-ftp --enable-sockets --disable-ipv6 --with-gd --with-jpeg-dir=/usr/local/jpeg/ --with-png-dir --with-freetype-dir --enable-gd-native-ttf --with-iconv-dir --enable-mbstring --enable-calendar --with-gettext --with-ldap --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

3配置php檔案

cp 安裝包目錄/php.ini-production /usr/local/php/lib/php.ini 主配檔案
cp安裝包目錄/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm 啟動檔案
chmod a+x /etc/init.d/php-fpm 執行許可權
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf 配置檔案
/etc/init.d/php-fpm start 啟動php了

4驗證php
vim /usr/local/nginx/html/test.php

<?php phpinfo(); ?>

網頁開啟 192.168.182.129/test.PHP

如果出現內容已經安裝成功#################

四,安裝zabbix

1, yum依賴包

yum install wget libmicrohttpd-devel httpd-devel httpd-tools libmicrohttpd.x86_64 lrzsz net-snmp-devel java-devel openldap openldap-devel libssh2-devel.x86_64 unixODBC-devel.x86_64 OpenIPMI-devel OpenIPMI-libs.x86_64 net-snmp-devel libxml2 curl-devel libxml2-devel fping gcc gcc-c++ compat-libstdc+±33 libevent libevent-devel OpenIPMI

2編譯安裝
./configure -prefix=/usr/local/zabbix --enable-server --enable-agent --with-net-snmp --with-libcurl --with-libxml2 --with-unixodbc --enable-java --with-openipmi --with-mysql=/usr/bin/mysql_config

啟動檔案配置
Group zabbix
useradd -g zabbix -s /sbin/nologin zabbix
cd 安裝原始碼包目錄
/zabbix/zabbix-3.4.14/misc/init.d/fedora/core

cp zabbix_server /etc/init.d/ 把啟動檔案拷貝到 /etc/ini.d/*
cp zabbix_agentd /etc/init.d/
chmod a+x /etc/init.d/zabbix_*
vim /etc/init.d/zabbix_server

調整配置檔案

vim /usr/local/zabbix/etc/zabbix_server.conf(編輯這裡的時候問問龍哥)有個filelog的日誌問題
用vi查詢修改
DBHost=localhost #去掉前面#
DBName=zabbix #不需要修改
DBUser=zabbix #不需要修改
DBPassword=zabbix #去掉前面#修改資料庫密碼=zabbix
:wq #儲存退出

最後一步 把zabbix的php檔案匯入到nginx的html檔案下啟動

#######################################################################################################################################################################
五,安裝mysql
1,yum install -y mysql mysql-server

2,service mysqld start 啟動mysql

3,建立zabbix資料庫例項和資料庫使用utf8的編碼集(在mysql>下面執行)
[email protected]> create database zabbix character set utf8 collate utf8_bin;

grant all on zabbix.* to [email protected]ost identified by ‘zabbix’;
#建立資料庫及 utf8 編碼

4,建立資料庫使用者zabbix 密碼為zabbix
[email protected]>grant all privileges on zabbix.* to [email protected] identified by ‘zabbix’; #密碼 zabbix

5,重新整理mysql並且退出
[email protected]>flush privileges;
[email protected]>exit

6;測試登入資料庫是否有zabbix使用者

[email protected]# mysql -u zabbix -pzabbix(注意 這裡-p後不要空格輸入密碼 或者-p後不加密碼 然後再輸入密碼)

7,檢視使用者下的庫
Mysql –u zabbix –pzabbix

use zabbix;檢視使用者
show tables;檢視是否有表
這裡檢視沒有表 需要把zabbix裡面自帶的表匯入到mysql的zabbix 使用者下的zabbix表裡
所以下一步是第8步要說的

8,匯入表到mysql的zabbix 使用者下的zabbix表裡

注意:

① Find查詢schema.sql find / -name schema.sql
② 然後 mysql –uzabbix –pzabbix zabbix </zabbix/zabbix-3.4.14/database/mysql/schema.sql #意思是將
③ /zabbix/zabbix-3.4.14/database/mysql/下面的schema.sql語句匯入到zabbix使用者下的資料庫裡的名為zabbix表裡面!
④ 輸入“show databases;”檢視當前資料庫
⑤ .輸入“use zabbix;”連線名為zabbix的資料庫
⑥ 輸入“show tables;”查看錶。

六,我們再回來配置zabbix的配置檔案
1,
.配置啟動服務,修改zabbix伺服器端的配置檔案。
Cp zabbix原始碼安裝包/misc/init.d/fedora/core/zabbix_server /etc/init.d/
chmod a+x /etc/init.d/zabbix_server
2,vim /etc/init.d/zabbix_server
BASEDIR=/usr/local/ 替換成 BASEDIR=/usr/local/zabbix

3,
先cat取反沒有#的行數cat /usr/local/zabbix/etc/zabbix_server.conf | grep [#]

vim /usr/local/zabbix/etc/zabbix_server.conf(編輯這裡的時候問問龍哥)有個filelog的日誌問題
用vi查詢修改
DBHost=localhost #去掉前面#
DBName=zabbix #不需要修改
DBUser=zabbix #不需要修改
DBPassword=zabbix #去掉前面#修改資料庫密碼=zabbix
:wq #儲存退出

把zabbix的php啟動檔案拷貝到nginx裡面使用

Cd /zabbix/原始碼包目錄/
/zabbix/zabbix-3.4.14/frontends/

把這個路徑下的php資料夾拷貝過去並且改名字為zabbix

cp –r /zabbix/zabbix-3.4.14/frontends/php /usr/local/nginx/html/zabbix
七,最後我們配置一下PHP.ini檔案
我們在安裝php的時候從原始碼包目錄拷貝了一個檔案過來為:
安裝包目錄/php.ini-production /usr/local/php/lib/php.ini (主配檔案)

① 重啟所有應用 mysql php nginx zabbix-server
② 開啟zabbix的應用介面 http://192.168.182.129/zabbix.php
③ Vi /usr/local/php/lib/php.ini

八,新增主機識別名字 vi/etc/hosts
新增 主機IP 主機名字如:

開啟網頁為 192.168.182,129/ZABBIX/setup.php

九 客戶端安裝
1安裝依賴包 yum –y pcre*

安裝原始碼包 ./configure --prefix=/usr/local/zabbix --enable-agent

2,拷貝啟動檔案
Cp /zabbix-3.4.14/misc/init.d/tru64/zabbix_agentd /etc/init.d/zabbix_agentd

然後授權這個檔案 chmod a+x /etc/init.d/zabbix_agentd

然後vi這個/etc/init.d/zabbix_agentd 修改路徑因為啟動的檔案是/usr/local/zabbix/sbin/zabbix_agentd
所以vi /etc/init.d/zabbix_agentd找到DAEMON=/usr/local/sbin/zabbix_agentd修改為

DAEMON=/usr/local/zabbix/sbin/ zabbix_agentd
2, 然後再配置安裝目錄下的zabbix_agentd.conf檔案了

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

全部刪完也可以 vi一條一條查也可以

LogFile=日誌自定義路徑
Server= server端的ip
ServerActive= server端的ip
Hostname=自定義的主機名

然後就可以啟動了

192.168.182.135/zabbix/setup.php配置zabbix頁面

192.168.182.135/zabbix/hosts.php開啟zabbix