標籤:
一、安裝環境
ubuntu 14.04LTS Postgresql-9.4.3 zabbix-2.4.5 httpd-2.4.12 php-5.6.10
二、選擇原因
選擇postgresql資料庫的原因,除了是因為 zabbix 的資料業務相對複雜,比使用 mysql 更加優勢,而且mysql的資料表容易壞,時常需要修複。現在雖然nginx比較流行,但對於高穩定,且不需要高並發的應用,推薦還是用apache,且使用 prefork 模式。
三、安裝準備
建立zbx系統使用者用於管理與zabbix運行相關的軟體
$ useradd -M -r -d /zbx zbx$ apt-get install build-essential # 安裝編譯環境
接下來為系統添加語系,只有這樣zabbix的多語言選項才會生效:
$ vim /var/lib/locales/supported.d/zabbix #建立一個新檔案,內容如下:en_US.UTF-8 UTF-8zh_CN.UTF-8 UTF-8zh_TW.UTF-8 UTF-8bg_BG.UTF-8 UTF-8fr_FR.UTF-8 UTF-8de_DE.UTF-8 UTF-8id_ID.UTF-8 UTF-8it_IT.UTF-8 UTF-8ja_JP.UTF-8 UTF-8pt_BR.UTF-8 UTF-8pt_PT.UTF-8 UTF-8ru_RU.UTF-8 UTF-8sk_SK.UTF-8 UTF-8uk_UA.UTF-8 UTF-8$ locale-gen #立即更新系統的語系
四、安裝Postgresql
下載並安裝
$ apt-get install libreadline-dev zlib1g-dev libssl-dev libxml2-dev libxslt-dev python-dev # 安裝依賴$ wget http://ftp.postgresql.org/pub/source/v9.4.3/postgresql-9.4.3.tar.bz2$ tar –jxvf postgresql -C /usr/local/src $ cd postgresql-9.4.3$ ./configure--prefix=/usr/local/postgresql --with-segsize=8 --with-wal-segsize=64 --with-wal-blocksize=64 --with-python --with-openssl --with-libxml --with-libxslt --enable-thread-safety$ make$ make install
設定環境變數
$ vim /etc/profile.d/pgsql.shexport PGHOME=/usr/local/postgresqlexport PGDATA=$PGHOME/dataexport PATH=$PATH:$PGHOME/binexport LD_LIBRARY_PATH=$PGHOME/lib/ alias pg_stop=‘su - fmc -c "pg_ctl -D $PGDATA stop"‘alias pg_start=‘su - fmc -c "pg_ctl -D $PGDATA -l $PGHOME/pgsql.log start"‘
$ source /etc/profile.d/pgsql.sh
初始化資料庫
$ su - zbxNo directory, logging in with HOME=/$ initdb -D /usr/local/postgresql/data -E UTF8 --locale=C -U zbx -W
將postgresql的動態連結程式庫為系統共用,編譯zabbix時需要:
$ vim /etc/ld.so.conf.d/pgsql.conf/zabbix/postgresql/lib$ ldconfig # 讓其立即生效
啟動 postgresql,並為 zabbix 建立資料庫及使用者:
$ pg_start$ psql -U zbx --dbname=postgrescreate database zabbix;create user zbx;grant all on database zabbix to zbx;\q
五、安裝apache
安裝依賴
$ apt-get install libpcre3-dev$ wgethttp://mirror.bit.edu.cn/apache/apr/apr-1.5.2.tar.gz$ tar -zxvf apr/apr-1.5.2.tar.gz$ cd apr-1.5.2/$ ./configure && make$ make install$ wget http://mirror.bit.edu.cn/apache/apr/apr-util-1.5.4.tar.gz$ tar -zxvf apr-util-1.5.4.tar.gz$ cd apr-util-1.5.4/$ ./configure --with-apr=/usr/local/apr && make$ make install
編譯安裝 apache:
$ wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.12.tar.gz$ tar -zxvf /httpd-2.4.12.tar.gz$ cd httpd*$ ./configure --prefix=/usr/local/httpd --enable-so --enable-mods-shared=most --with-mpm=prefork $ make && make install
配置vim /usr/local/httpd/conf/httpd.conf,請根據預設配置添加替換或注釋以下關鍵字段:
#ServerAdmin [email protected]ServerName 192.168.45.127:80User zbxGroup zbxInclude conf/extra/httpd-mpm.conf<IfModule mime_module> AddHandler application/x-httpd-php .php</IfModule>DocumentRoot "/usr/share/html/zabbix"<Directory "/usr/share/html/zabbix"></Directory><IfModule dir_module> DirectoryIndex index.php</IfModule>
配置/usr/local/httpd/conf/extra/httpd-mpm.conf,請根據預設配置添加替換或注釋以下關鍵字段:
<IfModule mpm_prefork_module>StartServers 1MinSpareServers 2MaxSpareServers 5MaxRequestWorkers 30MaxConnectionsPerChild 100</IfModule>
啟動apache:
$ cd /usr/local/httpd/ $ ./bin/apachectl start
六、安裝PHP
安裝依賴
$ apt-get install libbison-dev re2c libxml2-dev libjpeg-dev libpng-dev libfreetype6-dev
安裝php,將其作為apache的模組運行:
$ wget http://tw1.php.net/distributions/php-5.6.10.tar.bz2$ tar -jxvf php-5.6.10.tar.bz2$ cd php*$ ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-apxs2=/usr/local/httpd/bin/apxs --with-pdo-pgsql=/usr/local/postgresql --with-pgsql=/usr/local/postgresql --with-gd --with-png-dir --with-jpeg-dir --with-freetype-dir --enable-bcmath --enable-ctype --enable-sockets --enable-mbstring --with-gettext --disable-debug$ make$ make install$ cp php.ini-production /fmc/php/etc/php.ini #複製標準設定檔
配置php.ini,請根據預設配置添加替換以下關鍵字段:
$ vim /usr/local/php/etc/php.ini...post_max_size = 16Mmax_execution_time = 300max_input_time = 300date.timezone = Asia/Shanghai...
七、安裝zabbix
安裝依賴
$ apt-get install gettext libopenipmi-dev ipmitool libssh-dev fping libcurl4-openssl-dev libiksemel-dev libsnmp-dev
安裝zabbix
$ wget http://repo.zabbix.com/zabbix/2.4/ubuntu/pool/main/z/zabbix/zabbix_2.4.5.orig.tar.gz$ tar -zxvf zabbix* && cd zabbix*$ ./configure --prefix=/usr/local/zabbix --enable-server --enable-agent --with-postgresql=/usr/local/postgresql/bin/pg_config --with-net-snmp --with-jabber --with-libxml2 --with-libcurl --with-openipmi --enable-ipv6$ make install
初始化zabbix資料庫:
$ cd database/postgresql # 來源目錄下$ psql --username=fmc --dbname=zabbix --file=schema.sql #注意資料匯入的順序$ psql --username=fmc --dbname=zabbix --file=images.sql$ psql --username=fmc --dbname=zabbix --file=data.sql
配置zabbix的檔案:
$ vim /usr/local/zabbix/etc/zabbix_server.confDBHost=localhostDBName=zabbixDBUser=zbxDBPassword=zbx
啟動zabbix-server、zabbix-agentd:
$ cd /usr/local/zabbix $./sbin/zabbix_agentd start #啟動代理,用於監視伺服器自身$./sbin/zabbix_server start #啟動服務守護進程
如果啟動server時報錯:error while loading shared libraries: libpq.so.5: cannot open shared object file: No such file or directory,是在設定postgreSQL環境變數時乜有配置LD_LIBRARY_PATH。
配置zabbix的前端WEB檔案:
$ cd zabbix-2.4.5/frontends/ # 來源目錄下$ mkdir -p /usr/share/html/zabbix/$ cp -ar php/* /usr/share/html/zabbix/ $ chown -R zbx:zbx /usr/share/html/zabbix/
用瀏覽器訪問 zabbix 吧:http://192.168.45.127t, 前端的安裝都是圖形化操作的。
安裝完成後,你就可以使用了。預設的超級使用者是(注意大小寫) Admin,密碼是 zabbix。
八、設定開機啟動
$ vim /etc/rc.localsu - zbx -c "pg_ctl -D $PGDATA -l $PGHOME/pgsql.log start"cd /usr/local/zabbix && ./sbin/zabbix_agentd startcd /usr/local/zabbix && ./sbin/zabbix_server startcd /usr/local/httpd && ./bin/apachectl startexit 0 #這句在ubuntu中不能刪除,否則不會生效。
ubuntu基於apache+postgresql編譯安裝zabbix