Quantcast
Channel: 容器云计算,Devops,DBA,网络安全。
Viewing all articles
Browse latest Browse all 780

Centos6.5 源码编译安装zabbix3.2,对接oralce11g数据库

$
0
0

Centos6 源码编译安装zabbix3.2,对接oralce11g数据库


Centos6 源码编译安装zabbix3.2,对接oralce11g数据库


由于mysql用时间长了,性能会下降,所以需要对接oracle数据库。

具体环境如下:

30台服务器主机:RHEL6+JDK1.7+java程序。
4台服务器主机: RHEL6+JDK1.7+weblogic10.3
2台主机安装数据库: RHEL6+oracle 11gr2.0.4+ISCSI存储。
1台监控主机环境:RHEL6+Zabbix3.2


之前安装好了oracle11gr2.0.4,不过使用的是GBK编码,但是zabbix是要求UTF-8的编码,这里我也不修改数据编码了。
生产环境中,oracle还是要用UTF8编码,不然会有乱码的。

添加好单独的表空间,再配置zabbix所需oracle账号信息:

-- Create the user
create user ZABBIX IDENTIFIED BY zabbix ACCOUNT UNLOCK;
  default tablespace ZABBIX
  temporary tablespace TEMP
  profile DEFAULT
  password expire;
-- Grant/Revoke role privileges
grant connect to ZABBIX;
grant resource to ZABBIX;
GRANT CREATE ANY DIRECTORY TO ZABBIX;
GRANT DROP ANY DIRECTORY TO ZABBIX;
-- Grant/Revoke system privileges
grant drop any directory to ZABBIX;
grant unlimited tablespace to ZABBIX;


修改需要导入oracle的sql内容:

修改images.sql 文件中的/home/zabbix/zabbix/create/output_png为/data/app/zabbix
因为我在Oracle的主机上面新建了个目录/data/app/zabbix,并分配oracle账号权限。

sed -i 's/2048/2000/g' schema.sql,将此sql中的2048长度更换成2000,因为oracle的nvarchar2长度不能超过2000.

最后登陆oracle,导入相关数据sql.
先要执行schema.sql

注意先把图片复制到对应目录:
cp -r zabbix-3.0.1/misc/images /data/app/zabbix
再执行二个脚本是images.sql

执行三个sql 脚本 data.sql

最后注意提交修改。


这里为了安装zabbix环境方便,RHEL就直接使用Centos的源,具体方法就不说了。

首先安装apache+php环境:
[root@zabbix_server ~]#:wget https://centos6.iuscommunity.org/ius-release.rpm
[root@zabbix_server ~]#:rpm -Uvh ius-release*.rpm
[root@zabbix_server ~]#:yum -y update

[root@zabbix_server ~]#:yum -y install php56u php56u-opcache php56u-xml php56u-mcrypt php56u-gd php56u-devel php56u-mysql php56u-intl php56u-mbstring php56u-bcmath php56u-ctype php56u-libxml php56u-gettext php56u-sockets php56u-session php56u-xmlreader php56u-xmlwriter OpenIPMI libssh2 mod_ssl openssl php56u-ldap OpenIPMI libssh2 fping libcurl libxml2


增加php支持oci8功能:

[root@zabbix_server ~]#:rpm -ivh oracle-instantclient11.2-basic-11.2.0.4.0-1.x86_64.rpm
[root@zabbix_server ~]#:rpm -ivh oracle-instantclient11.2-devel-11.2.0.4.0-1.x86_64.rpm

这里采用自动安装oci功能:
[root@zabbix_server ~]#:pecl install oci8-2.0.12

这样简单省事,由于oracle是11gr2.0.4,所以不能安装最新版oci8程序。
手动编译最新版的会报错。

编写 php.ini添加oci8文件信息:

extension=oci8.so

date.timezone = Asia/Shanghai

max_execution_time = 300

max_input_time = 300   

memory_limit = 128M

post_max_size = 32M

添加以上信息到php.ini,zabbix环境要求,如果还有别的要求,根据情况修改。
最后重启httpd服务。

添加测试oracle.php文件,内容如下:

<?php
  $conn = ocilogon('zabbix','zabbix','192.168.10.81:1521/hextrack');
  if (!$conn)
  {
    $Error = oci_error();
    print htmlentities($Error['message']);
    exit;
  }
  else
  {
    echo "Connected Oracle Successd!"."<br>";
    ocilogoff($conn);
  }
?>


打开测试,如果正常,提示连接成功,说明可以连接远端的oracle数据库。



安装zabbix3.2编译所需要环境:

[root@zabbix_server ~]#:yum install net-snmp net-snmp-develcurl-devel gcc gcc-c++ autoconf

[root@zabbix_server ~]#:yum install curl curl-devel
[root@zabbix_server ~]#:yum install net-snmp net-snmp-devel
[root@zabbix_server ~]#:yum install openssl-devel zlib-devel
[root@zabbix_server ~]#:yum install openldap-devel openldap
[root@zabbix_server ~]#:yum install OpenIPMI OpenIPMI-devel
[root@zabbix_server ~]#:yum install iksemel*
[root@zabbix_server ~]#:yum install -y libssh2-devel

添加账号信息:
[root@zabbix_server ~]#:groupadd zabbix
[root@zabbix_server ~]#:useradd -m -g zabbix zabbix -s /sbin/nologin


编译软件zabbix-3.2.4:

[root@zabbix_server ~]#:cd zabbix-3.2.4
[root@zabbix_server ~]#:./configure --prefix=/usr/local/zabbix --enable-server --enable-proxy --enable-agent --enable-java --enable-ipv6 --with-oracle-lib=/usr/lib/oracle/11.2/client64/lib  --with-oracle-include=/usr/include/oracle/11.2/client64 --with-openipmi --with-ssh2 --with-jabber  --with-net-snmp --with-libcurl

[root@zabbix_server ~]#:make
[root@zabbix_server ~]#:make install

如果有错误,根据提示配置,具体不再说了。

下面添加启动服务:
cp misc/init.d/fedora/core5/* /etc/init.d/
chkconfig zabbix_server on
chkconfig zabbix_agentd on

注意需要修改zabbix_server与zabbix_agentd的执行命令位置,具体不再说了。

最后修改zabbix_server.conf与zabbix_agentd.conf配置文件:

vi  zabbix_server.conf

主要是对接oracle的信息

ListenPort=10051
DBHost=192.168.10.81
DBName=hextrack
DBUser=zabbix
DBPassword=zabbix
DBPort=1521
ListenIP=0.0.0.0


完成后,保存。

将zabbix 的php文件拷贝到  httpd 的 根路径

/var/www/html/zabbix下

mv /opt/zabbix-3.2.4/frontends/php/ /var/www/html/zabbix

启动服务  service httpd restart

进入http://iP/zabbix, 账号默认:Admin ,密码:zabbix



中文支持,具体就不再说了,不要使用别的字体,会有问题。

楷体,放到/var/www/html/zabbix/fonts,
修改zabbix的web端/include/defines.inc.php

至于添加客户端与别的配置,这里不再说了,比较简单。



Viewing all articles
Browse latest Browse all 780