baiyunjn 发表于 2019-1-21 06:10:53

源码安装zabbix3.0.4

1. 环境准备
1.1 系统环境及软件:
Red Hat Enterprise Linux Server release 6.4 (Santiago)mysql-5.6.34
php-5.6.15.tar.gz
mysql-5.0.41.tar.gz
zabbix-3.0.4.tar.gz
libmcrypt-2.5.8.tar.gz
1.2 关闭iptables和SELINUX
# service iptables stop
# chkconfig iptables off
# setenforce 0
# vi /etc/sysconfig/selinux
SELINUX=disabled
zabbix3.0.4对环境的要求 :
MySQL 5.1以上最好是 5.6或者更高的版本
PHP 5.4或者更高的版本
1.3 修改主机名及hosts
hostname zabbix-server.com
vi /etc/hosts#增加如下
192.168.70.161 zabbix-server.com

1.4 LAMP安装
安装Apahce, PHP, MySQL以及php连接mysql库组件。
1.4.1 yum安装httpd
  #yum -y install httpd httpd-devel
  chkconfig--level 2345 httpd on
  servicehttpd start
1.4.2 源码安装mysql-5.0.41.tar.gz
  安装编译源码所需的工具和库
  yuminstall \
  make \
  gcc \
  gcc-c++ \
  ncurses-devel\
  cmake
  新增mysql用户组:
  groupadd mysql
  新增mysql用户:
  useradd-g mysql mysql-s/sbin/nologin
  chmod 755 /home/mysql/
  新建MySQL所需要的目录
  新建mysql安装目录:
  mkdir -p /usr/local/mysql
  新建mysql数据库数据文件目录:
  mkdir -p /data/mysqldb
  编译安装:
  tar -zxvf mysql-5.0.41.tar.gz
  cd mysql-5.0.41
  ./configure--prefix=/usr/local/mysql
  注:重新运行配置,需要删除CMakeCache.txt文件
  rm -f CMakeCache.txt
  make
  makeinstall
  修改mysql安装目录
  chown-R mysql:mysql /usr/local/mysql
修改mysql数据库文件目录
chown -R mysql:mysql/data/mysqldb
  初始化配置
  进入安装路径
  # cd /usr/local/mysql
  进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表
  # ./bin/mysql_install_db --basedir=/usr/local/mysql --datadir=/data/mysqldb--user=mysql
  注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf"
  注意:若在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。
  在使用"yumupdate"更新系统后,需要检查下/etc目录下是否会多出一个my.cnf,如果多出,将它重命名成别的。否则,MySQL将使用这个配置文件启动,可能造成无法正常启动等问题。
  复制mysql服务启动配置文件
  # mv/etc/my.cnf /etc/my.cnf.bak
  # cp /root/mysql-5.0.41/support-files/my-huge.cnf/etc/my.cnf
  vi /etc/my.cnf#在和下加上如下行(登录mysql中文不乱吗):
  default-character-set=utf8
  启动MySQL
  添加服务,拷贝服务脚本到init.d目录,并设置开机启动
  # cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld
  vi/etc/init.d/mysqld#修改如下内容
  basedir=/usr/local/mysql
  datadir=/data/mysqldb
  设置开机启动
  chkconfigmysqld on
  servicemysqld start
  配置用户
  MySQL启动成功后,root默认没有密码,我们需要设置root密码。
  设置之前,我们需要先设置PATH,否则不能直接调用mysql
  修改/etc/profile文件,在文件末尾添加
  PATH=/usr/local/mysql/bin:$PATH
  exportPATH
  让配置立即生效
  source/etc/profile
  修改数据库的root密码:
  mysql -uroot
  
  mysql> SET PASSWORD = PASSWORD('123abc');
  或是
                             http://blog.运维网.com/e/u261/themes/default/images/spacer.gif
  # mysqladmin -uroot -p password 123abc
  Enter password:      这里直接回车
  Warning: Using a password on the commandline interface can be insecure.
  
  若要设置root用户可以远程访问,执行
  
  mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.%' IDENTIFIEDBY 'password' WITH GRANT OPTION;
  
  root用户的密码,可以和本地不同。
  http://blog.运维网.com/e/u261/themes/default/images/spacer.gif
  
  配置防火墙
  防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口
  打开/etc/sysconfig/iptables文件,在“-A INPUT –m state --state NEW –m tcp–p –dport 22 –j ACCEPT”,下添加:
  -A INPUT -m state --state NEW -m tcp -p-dport 3306 -j ACCEPT
  然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:
   serviceiptables restart
1.4.3编译安装php-5.6.15.tar.gz
  Yum安装依赖:
  yuminstall -y gcc \
  gcc-c++\
  autoconf\
  libjpeg\
  libjpeg-devel\
  libpng\
  libpng-devel\
  freetype\
  freetype-devel\
  libpng\
  libpng-devel\
  libxml2\
  libxml2-devel\
  zlib \
  zlib-devel\
  glibc \
  glibc-devel\
  glib2 \
  glib2-devel\
  bzip2 \
  bzip2-devel\
  ncurses\
  curl \
  openssl-devel\
  db4-devel\
  libXpm-devel\
  libX11-devel\
  gmp-devel\
  readline-devel\
  libxslt-devel\
  expat-devel\
  xmlrpc-c\
  libcurl\
  libcurl-devel
  安装加密扩展库,先安装Libmcrypt
  http://blog.运维网.com/e/u261/themes/default/images/spacer.gif
  tar-zxvf libmcrypt-2.5.8.tar.gz
  cdlibmcrypt-2.5.8
  ./configure
   make
  makeinstall
  安装php-5.6.15.tar.gz
  # tar -zxvf php-5.6.15.tar.gz
  cd php-5.6.15
  ./configure\
  --prefix=/usr/local/php\
  --with-config-file-path=/etc\
  --with-apxs2=/usr/sbin/apxs\
  --with-mysql=/usr/local/mysql\
  --with-mysqli=/usr/local/mysql/bin/mysql_config\
  --enable-inline-optimization\
  --enable-fpm\
  --enable-soap\
  --with-libxml-dir\
  --with-xmlrpc\
  --with-openssl\
  --with-mcrypt\
  --with-mhash\
  --with-pcre-regex\
  --with-sqlite3\
  --with-zlib\
  --enable-bcmath\
  --with-iconv\
  --with-bz2\
  --enable-calendar\
  --with-curl\
  --with-cdb\
  --enable-dom\
  --enable-exif\
  --enable-fileinfo\
  --enable-filter\
  --with-pcre-dir\
  --enable-ftp\
  --with-gd\
  --with-openssl-dir\
  --with-jpeg-dir\
  --with-png-dir\
  --with-zlib-dir\
  --with-freetype-dir\
  --enable-gd-native-ttf\
  --with-gettext\
  --with-gmp\
  --with-mhash\
  --enable-json\
  --enable-mbstring\
  --disable-mbregex\
  --disable-mbregex-backtrack\
  --with-libmbfl\
  --with-onig\
  --enable-pdo\
  --with-pdo-mysql\
  --with-zlib-dir\
  --with-pdo-sqlite\
  --with-readline\
  --enable-session\
  --enable-shmop\
  --enable-simplexml\
  --enable-sockets\
  --enable-sysvmsg\
  --enable-sysvsem\
  --enable-sysvshm\
  --enable-wddx\
  --with-libxml-dir\
  --with-xsl\
  --enable-zip\
  --enable-mysqlnd-compression-support\
  --with-pear
  http://blog.运维网.com/e/u261/themes/default/images/spacer.gif
  其中--with-apxs2是用来生成Apache的PHP模块libphp5.so的,不需要可以去掉.

make
make install
  php配置
  php.ini是php运行核心配置文件
  php-fpm.conf是php-fpm进程服务的配置文件
  http://blog.运维网.com/e/u261/themes/default/images/spacer.gif
   # cd php-5.6.28
  # cp php.ini-production /etc/php.ini
  # cp /usr/local/php/etc/php-fpm.conf.default/usr/local/php/etc/php-fpm.conf
  # cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
  # chmod +x /etc/init.d/php-fpm
  fpm测试php配置
  #/usr/local/php/sbin/php-fpm -t
   NOTICE: configuration file /usr/local/php/etc/php-fpm.conf test issuccessful
  添加到server里管理启动:
  # chkconfig --add php-fpm
  # chkconfig php-fpm on
  # service php-fpm start
  Starting php-fpmdone
  netstat–anpt
  tcp       0      0 127.0.0.1:9000            0.0.0.0:*                   LISTEN      10847/php-fpm
  修改PHP默认端口:
  vi/usr/local/php/etc/php-fpm.conf
  listen = 127.0.0.1:8000
  #servicephp-fpm restart
  #netstat –anpt
  tcp       0      0 127.0.0.1:8000            0.0.0.0:*                   LISTEN      20527/php-fpm
1.4.4配置apache访问PHP
  配置 httpd.conf 让apache支持PHP
  # vi /etc/httpd/conf/httpd.conf
  找到 AddType application/x-gzip .gz.tgz 在其下添加如下内
  AddType application/x-httpd-php .php
  AddType application/x-httpd-php-source.phps
  DirectoryIndex index.php index.html   //设置首页默认顺序
  LoadModulephp5_module       /usr/lib64/httpd/modules/libphp5.so这个模块会在编译的自动生成加入进去
1.4.5测试页面:
  vi /var/www/html/test.php
  
   http://192.168.70.161/test.php
2. 安装zabbix
2.1 server: (192.168.70.161)服务端及客户端
2.1.1 安装zabbix所需的组件
yum -y install curllibcurl-devel net-snmp net-snmp-devel perl-DBI libdbi-dbd-mysql mysql-devel gccgcc++ make libxml2 libxml2-devel
2.1.2 创建zabbix用户组与用户:
# groupaddzabbix
# useradd -gzabbix -s /sbin/nologin zabbix
2.1.3 安装server 及agentd:
## tar -xzvf zabbix-3.0.4.tar.gz
# cdzabbix-3.0.4
# ./configure--prefix=/usr/local/zabbix-server --enable-server --with-mysql --with-net-snmp --with-libcurl--with-libxml2 --enable-agent --enable-ipv6
注:--enable-server表明安装server,--enable-agent表明安装agent
make && make install
2.1.4 创建数据库和授权用户
说明:数据文件导入的顺序不能变,也可以在命令行使用mysql命令导入数据文件
#service mysqld start
# mysql -uroot -p

mysql> createdatabase zabbix character set utf8;

mysql> grantall on zabbix.* to zabbix@'%' identified by '123456';

mysql> flushprivileges;
http://blog.运维网.com/e/u261/themes/default/images/spacer.gif


2.1.5导入数据库sql脚本:
# cd zabbix-3.0.4
在解压的zabbix目录下,将database/mysql目录下三个sql文件导入到zabbix数据库里。(下面用的是zabbix用户来导入文件,这个用户在数据库是默认存在的)
# mysql -uzabbix -p123456 zabbix
页: [1]
查看完整版本: 源码安装zabbix3.0.4