设为首页 收藏本站
查看: 1132|回复: 0

[经验分享] LAMP 搭建zabbix监控Oracle 数据库 for Linux

[复制链接]

尚未签到

发表于 2019-1-25 07:11:40 | 显示全部楼层 |阅读模式
  准备环境介绍
  文档简介想要实现的功能为在zabbix服务器端再增加orabbix插件以此访问oracle数据库进行监控操作。
  环境介绍CentOS 7 zabbix 2.4.2 。
  yum介绍因公司电脑无法访问外网则进行了本地yum源的配置。
  可自行根据php-common下载相应的rpm包或者去我的网盘瞅瞅有木有大家需要的地址如下
链接http://pan.baidu.com/s/1skGbrat 密码n9p3
  实施过程介绍
1.首先是LAMP的搭建其中Linux环境搭建此处不多介绍MySQL数据库的搭建可参考上篇文档
  搭建 Apache 和 PHP前面也提到因没有外网只能使用CentOS 7提供的包然后mount到我本地
yum 源的配置
vi /etc/yum.repo.d/CentOS-Local.repo
  name=This is a local repo source for lamp
baseurl=file:///mnt/Package
gpgcheck=0
enabled=1


  :x  -- 保存退出
  ps将yum.repo.d下使用不到的repo文件注释使其失效
  vim /etc/fstab
  /dev/sr0  /mnt/Package iso9660 default 0 0
  :x  -- 保存退出
  mount -a  重新挂载
  =======================至此本地yum源配置完成================
  修改主机名配置hostnamectl set-hostname 确认修改的名字
  修改防火墙配置vi /etc/selinux/config 修改为disabled
  # systemctl disable firewalld.service
  # systemctl stop firewalld.service
  修改时区配置timedatectl set-timezone Asia/Shanghai
  timedatectl set-local-rtc 1 -- 时间将与本地电脑时间同步

  timedatectl set-time YYYY-MM-DD -- 设置日期

  timedatectl set-time HH:MM:SS  -- 设置时间

  修改网卡配置CentOS 7的网卡名称
第一步修改eth0文件信息
mv ifcfg-eno16777736 ifcfg-eth0
vi /etc/udev/rules.d/70-persistent-ipoib.rules
添加一行关于eth0的信息进行注册。
ACTION=="add", SUBSYSTEM=="net", DRIVERS=="?*", ATTR{type}=="1", ATTR{address}=="00:0C:29:97:E4:F2", NAME="eth0"
第二步修改grub配置信息
输入如下命令进入对应目录编辑文件
vim /etc/sysconfig/grub
然后往这个文件中添加“net.ifnames=0 biosdevname=0”内容如下图所示
grub2-mkconfig -o /boot/grub2/grub.cfg
效果如下
  然后重启系统后查看网卡名称
  ========================至此为LAMP准备的基础环境已完成建议重启服务器===================
  Apache配置
  yum -y install httpd  //安装
  systemctl start httpd.service //开启apache服务
  systemctl enable httpd.service //设置开机启动
  在浏览器中输入ip地址ifconfig如果能够看到test 123...的字样则表示成功

  PHP配置
  yum -y install php //安装
  systemctl restart httpd.service //重启Apache服务
  vi /var/www/html/info.php //编辑一个文件做测试顺便看一下自己安装的PHP版本
  

  

  保存退出后再次登陆浏览器输入ip/info.php若是可以看到PHP版本信息则表示成功
  将PHP和MySQL链接起来不然会在安装的界面中显示链接数据库类型为 SQLit3因为自己犯过这方面的报错记录一下 yum -y install php-mysql
  yum -y groupinstall "Development Tools" "Development Libraries"

  安装常用的PHP关联模块
yum -y install php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel
  重启Apache服务和PHP服务LAMP环境已完成
  

  zabbix 搭建
  zabbix 服务器是在MySQL服务器上进行的
  tar -zxvf zabbix-2.4.2.tar.gz
cd zabbix-2.4.2
./configure --with-mysql=/home/mysql/mysql/bin/mysql_config --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix

  

  过程中遇到的报错
  第一种过程中如出现configure: error: MySQL library not found错误是因为缺少mariadb-devel该软件包使用yum install mariadb-devel进行安装后再重新执行
  第二种过程中若出现configure: error: Invalid Net-SNMP directory - unable to find net-snmp-config使用 yum -y install net-snmp-devel 然后重新运行
  第三种error while loading shared libraries:libmysqlclient.so.20错误,查找libmysqlclient.so.20的位置可以使用find命令查找后
  ln -s /home/mysql/mysql/lib/libmysqlclient.so.20 /usr/lib64
  

  重新执行
  ./configure --with-mysql=/home/mysql/mysql/bin/mysql_config --with-net-snmp --with-libcurl --enable-server --enable-agent --enable-proxy --prefix=/usr/local/zabbix
  没有警告后执行接下来的命令
  # make
  # make install
  

  拷贝相关的配置文件到/etc下并进行相关配置修改
  # mkdir -p /etc/zabbix
  # cp -r /soft/zabbix-2.4.2/conf/* /etc/zabbix/
  # chown -R zabbix:zabbix /etc/zabbix
  # ln -s /usr/local/zabbix/etc /etc/zabbix/
  # ln -s /usr/local/zabbix/bin/* /usr/bin/
  # ln -s /usr/local/zabbix/sbin/* /usr/sbin/
  

  修改zabbix_server.conf  服务端
  
  vi /etc/zabbix/zabbix_server.conf
  LogFile=/tmp/zabbix_server.log   // 日志文件地址
  DBHost=localhost            // 数据库主机
  DBName=zabbix              // 数据库名
  DBUser=zabbix              // 数据库用户名
  DBPassword=zabbix           // 数据库密码
  ListenIP=xxx              //数据库IP地址
  AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts //zabbix运行脚本存放目录
  

  修改zabbix_agentd.conf  客户端
  vi /etc/zabbix/zabbix_agentd.conf
  PidFile=/tmp/zabbix_agentd.pid     // 进程PID
  LogFile=/tmp/zabbix_agentd.log     // 日志保存位置
  EnableRemoteCommands=1          // 允许执行远程命令
  Server=xxx                  // agent端的ip本机ip
  ServerActive=xxx
  Hostname=Zabbix server          // 必须与zabbix创建的hostname相同
  Include=/usr/local/etc/zabbix_agentd.conf.d/
  UnsafeUserParameters=1          // 启动自定义key
  

  修改PHP相关参数
  vi /etc/php.ini
  max_execution_time = 300
  max_input_time = 300
  memory_limit = 128M
  upload_max_filesize = 2M
  date.timezone = Asia/Shanghai
  post_max_size = 28M


  配置web站点
  # cd zabbix-2.4.2/
  # cp -r frontends/php /var/www/html/zabbix
  修改httpd.conf的参数
  vi /etc/httpd/conf/httpd.conf
  
  DirectoryIndex index.html index.php
  
  

  创建与zabbix相关的组及库和用户
  groupadd zabbix   // 创建组
  useradd -r -g zabbix zabbix // 创建用户
  

  mysql -uroot -p
  mysql> create database zabbix character set utf8;
  Mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
  Mysql> flush privileges;
  mysql> use zabbix; // 导入数据库资源
  mysql> source /soft/zabbix-2.4.2/database/mysql/schema.sql;
  mysql> source /soft/zabbix-2.4.2/database/mysql/data.sql;
  mysql> source /soft/zabbix-2.4.2/database/mysql/images.sql;
  mysql> quit
  

  安装web界面

  #systemctl restart httpd.service
  在浏览器中输入http://ip地址/zabbix进入zabbix的web配置页面一路next有可能会遇上PHP依赖包缺少的现象找到rpm包下载安装即可。
  Zabbix的默认账号为Admin密码为zabbix
  遇到的问题可查看zabbix server日志
  


  orabbix 搭建
  orabbix 插件是在zabbix server上进行的
  下载orabbix插件版本是orabbix-1.2.3.zip
  安装好Java环境
  在opt目录下新建orabbix文件夹后将文件解压好的文件或者未解压的zip文件mv到/opt/orabbix下
  chmod +x orabbix/ -R
  chmod +x run.sh
将orabbix中的执行文件Copy到系统服务目录中
cp /opt/orabbix/init.d/orabbix/etc/init.d/orabbix
  cp/opt/orabbix/conf/config.props.sample /opt/orabbix/conf/config.props
编辑刚刚生成的config.props文件

vi config.props

ZabbixServerList=ZabbixServer1

ZabbixServer1.Address=zabbix 服务器端的ip地址

ZabbixServer1.Port=10051   // 端口号为与Zabbix Server connection Port。

#ZabbixServer2.Address=IP_ADDRESS_OF_ZABBIX_SERVER

#ZabbixServer2.Port=PORT_OF_ZABBIX_SERVER

将不需要存在的行用 # 将它注销了。

#pidFile

OrabbixDaemon.PidFile=./logs/orabbix.pid

#frequency of item's refresh

OrabbixDaemon.Sleep=300

#MaxThreadNumber should be >= than the number of your databases

OrabbixDaemon.MaxThreadNumber=100

#put here your databases in a comma separated list

DatabaseList=Monitor



#Configuration of Connection pool

#if not specified Orabbis is going to use default values (hardcoded)

#Maximum number of active connection inside pool

DatabaseList.MaxActive=10

#The maximum number of milliseconds that the pool will wait

#(when there are no available connections) for a connection to be returned

#before throwing an exception, or  'resolve.xml',description =>'resolve acl', principal =>'ZABBIX', is_grant => true, privilege =>'resolve');

exec dbms_network_acl_admin.assign_acl(acl=> 'resolve.xml', host =>'*');

commit;



将Orabbix服务加入随系统启动
chkconfig --add orabbix
chkconfig --level 345orabbix on
  

还有一个很头疼的报错

[root@zabbix orabbix]# /etc/init.d/orabbix start

cat: /opt/orabbix/conf/config.props: No such file ordirectory

Starting Orabbix service:

[root@zabbix orabbix]# Stopping

java.lang.Exception: ERROR on main - Connections is empty

     atcom.smartmarmot.orabbix.Orabbixmon.run(Orabbixmon.java:101)

     atcom.smartmarmot.orabbix.bootstrap.main(bootstrap.java:50)


[root@zabbix orabbix]# ./run.sh

[root@zabbix orabbix]# Stopping

java.lang.Exception: ERROR on main - Connections is empty

     atcom.smartmarmot.orabbix.Orabbixmon.run(Orabbixmon.java:101)

     at com.smartmarmot.orabbix.bootstrap.main(bootstrap.java:50)。



web界面的orabbix的配置

导入ORACLE的监测模板在orabbix目录的template内使用上传下载工具放到本地然后选择导入即可。然后剩下的界面比如说发短信或发微信或发邮件警告的打通方式写了好久任督二脉都要堵了。休息一会。。。

  =====

  扩展LAMP=Linux+Apache+MysQL+PHP
      每次搭建都会遇到is not running的问题
  
    在Zabbix中添加Oracle 主机时必须用在此设定的名字Monitor否则无法监测。                 文档中 xxx 处和被粉红色覆盖处均是指实例命令
    标红处是认为需要执行的部分
    搭建 zabbix 2.4多多少少都会遇到一些问题正在挖掘新版本CentOS 6.7 + zabbix 3.0已成功实施有时间后期更新博客。。。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-667171-1-1.html 上篇帖子: zabbix服务器监控交换机添加图像Graphs 下篇帖子: 安装zabbix web配置无法跳到第三步Configure DB connection的解决方法
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表