暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

使用基础架构监视云监控Oracle和MySQL

凛冬未至 2017-07-05
688

混合云环境中,对各种基础设施的统一监控,是运维人员必须面对的挑战。对此,Oracle公司适时的推出了基础架构监视云服务(IMCS),它通过统一、全景式的可视化方式,对整个IT基础架构(无论运行在本地还是云端)的状态和健康状况进行监控。本公众号将推出一系列文章,向大家介绍如何使用基础架构监视云服务(IMCS),监控各种基础设施。

 

本文将演示如何使用基础架构监视云服务(IMCS),来监控位于云上的Oracle数据和MySQL数据库。

 

先概略的介绍一下IMCS的部署架构,IMCS中有一个“实体”的概念,每一个需要监控的对象都是一个实体,比如:主机、数据库、应用服务器、容器、网络设备等,一台主机、一个数据库就是一个实体。第二个概念是“Cloud Agent”,也叫“云代理”,在部署IMCS监控时,需要在被监控实体所在的主机上,先部署一个Cloud Agent,通过Cloud Agent来实时采集所在主机上被监控实体的运行数据。

 

本文将监控的Oracle数据库和MySQL数据库均运行在Linux主机上,在监控这两个实体前,需要先在Linux主机上部署Cloud Agent,并将主机纳入IMCS的监控中。关于使用IMCS监控云上的Linux主机的步骤,在本公众号的其他文章中已有详细介绍,详情参见公众号其他文章《使用基础架构监视云(IMCS)监控云上的Linux主机》

 

注意事项:

  1. 本系列中,所有的监控目标都运行在Oracle Cloud上,在做这些实验之前,需要一个Oracle Cloud账号,用户可以申请一个1个月的测试账号,用于学习和测试的目的。申请链接: https://cloud.oracle.com/en_US/tryit

  2. 本系列实验需要一个IMCS账号,需要找Oracle的销售人员帮忙申请。

  3. 本文中IMCS监控模式是通过REST api直接监控目标,没有经过网关

 

第一部分:使用IMCS监控Oracle数据库

 

监控目标环境

数据库服务器:Oracle云上创建的Linux实例

操作系统版本:Oracle Linux Server release 7.3

数据库版本:Oracle Database 11.2.0.1.0

监控用户: Oracle

 

如图所示,数据库所在主机上已经部署了Cloud Agent,该主机已经被纳入IMCS监控。

 

 

监控Oracle数据库主要步骤

  1. 下载JSON脚本模板

  2. 配置数据库监控账号

  3. 编写用于登录凭证的json脚本

  4. 编写用于添加实体的json脚本

  5. 利用omcli添加目标

 

1. 下载JSON脚本模板

通过下载链接,下载最新的JSON脚本模板。

http://www.oracle.com/webfolder/technetwork/tutorials/sample_JSONs/omc_monsrv_entity_json_samples.zip

 

解压zip文件,选择登录凭证的json脚本模板和Oracle数据库实体的json脚本模板。

 

2.配置数据库监控账号

OMC可以通过数据库用户dbsnmp来监控数据库,使用sys用户解锁用户dbsnmp,并修改用户密码。

alter user dbsnmp account unlock;

alter user dbsnmp identified by welcome1;

注:在登录凭证文件中,需要填写该登录用户和口令

 

3.编写用于登录凭证的json脚本

编辑登录凭证的json脚本:omc_oracle_db_sample_creds.json

{

    "credentials" : [

        {

            "id" : "SQLCreds",

            "name" : "SQLCreds",

            "credType" : "DBCreds",

            "properties" : [

                {

                    "name" : "DBUserName",

                    "value" : "CLEAR[dbsnmp]"

                },

                {

                    "name" : "DBPassword",

                    "value" : "CLEAR[welcome1]"

                },

                {

                    "name" : "DBRole",

                    "value" : "CLEAR[Normal]"

                }

            ]

        }

    ]

}

注:在登录凭证json文件中,输入数据库监控用户名和口令。

 

 

4.编写用于添加实体的json脚本

编辑监控实体的json脚本:omc_oracle_db_sample.json

{

        "entities": [{

                "name": "cheneydb11g",

                "type": "omc_oracle_db",

                "displayName": "Oracle ora11 Cheney Yu",

                "timezoneRegion": "SGT",

                "credentialRefs": ["SQLCreds"],

                "properties": {

                        "host_name": {

                                "displayName": "host_name",

                                "value": "f807e9"

                        },

                        "port": {

                                "displayName": "port",

                                "value": "1521"

                        },

                        "sid": {

                                "displayName": "sid",

                                "value": "ora11"

                        },

                        "capability": {

                                "displayName": "capability",

                                "value": "monitoring"

                        }

                }

        }]

}

注:在实体json文件中,填入该实体的相关信息:

"name": "cheneydb11g",##实体名称,(自定义)

"type": "omc_oracle_db",##实体类型,(表明该实体为Oracle数据库)

"displayName": "Oracle ora11 Cheney Yu",##实体的描述信息(自定义)

"host_name" ##主机名称

"port"##数据库端口号

"sid"##数据库实例名

 

 

5.利用omcli添加目标

用oracle用户,进入目标主机的Cloud Agent的bin目录,同时将两个json文件拷贝到该目录中

$ cd /home/oracle/omcagent/cloudagent/agent_inst/bin

$ ./omcli add_entity agent omc_oracle_db_sample.json -credential_file omc_oracle_db_sample_creds.json

Oracle Management Cloud Agent

Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.

Operation Succeeded: Accepted 1 of 1 entities for processing.

 

[oracle@f807e9 bin]$ ./omcli status_entity agent omc_oracle_db_sample.json

Oracle Management Cloud Agent

Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.

omc_oracle_db.cheneydb11g : AGENT:entity fully monitored

 

登录基础架构监视云主界面,进入“实体”,在“实体类型”中选中“Oracle Database”,就能看到刚刚加入监控的Oracle数据库的实体,

点击实体“Oracle ora11 Cheney Yu”,进入数据库实体的监控界面,就能看到这个数据库的相关运行数据:

 

至此,云上的Oracle数据库已经纳入到IMCS的监视列表中,运维人员就能通过IMCS随时监控Oracle数据库的运行状态。

 

第二部分:使用IMCS监控MySQL数据库

 

监控目标环境

数据库服务器:Oracle云上创建的Linux实例

操作系统版本:Oracle Linux Server release 7.3

数据库版本:MySQL Database 5.7.18

监控用户: Oracle

 

 

前置条件:数据库所在主机上已经部署了Cloud Agent,该主机已经被纳入IMCS监控。

 

监控MySQL主要步骤

  1. 下载JSON脚本模板

  2. 编写用于登录凭证的json脚本

  3. 编写用于添加实体的json脚本

  4. 利用omcli添加目标

 

1.下载JSON脚本模板

通过下载链接,下载最新的JSON脚本模板。

http://www.oracle.com/webfolder/technetwork/tutorials/sample_JSONs/omc_monsrv_entity_json_samples.zip

 

解压zip文件,选择登录凭证的json脚本模板和MySQL数据库实体的json脚本模板。

 

2.编写用于登录凭证的json脚本

编辑登录凭证的json脚本:omc_mysql_creds.json

{

    "credentials" : [

        {

            "id" : "SQLCreds",

            "name" : "SQLCreds",

            "credType" : "DBCreds",

            "properties" : [

                {

                    "name" : "DBUserName",

                    "value" : "CLEAR[root]"

                },

                {

                    "name" : "DBPassword",

                    "value" : "CLEAR[Welcome1!]"

                }

            ]

        }

    ]

}

注:在登录凭证json文件中,输入数据库监控用户名和口令。

 

3.编写用于添加实体的json脚本

编辑监控实体的json脚本:omc_mysql_db_sample.json

{

    "entities" : [

        {

            "name" : "ycmysql57",

            "type" : "omc_mysql_db",

            "displayName" : "cheney mysql 5.7.18",

            "timezoneRegion" : "America/New_York",

            "credentialRefs" : ["SQLCreds"],

            "properties" : {

                "url" : {

                    "displayName" : "url",

                    "value" : "jdbc:mysql://localhost:3306/mysql"

                },

                "jdbcdriver" : {

                    "displayName" : "jdbcdriver",

                    "value" : "com.mysql.jdbc.Driver"

                },

                "host_name" : {

                    "displayName" : "MachineName",

                    "value" : "localhost"

                },

                "capability" : {

                    "displayName" : "capability",

                    "value" : "monitoring"

                }

            }

        }

    ]

}

注:在实体json文件中,填入该实体的相关信息:

 "name" : "ycmysql57",##实体名称,(自定义)

"type" : "omc_mysql_db",##实体类型,(表明该实体为MySQL数据库)

 "displayName" : "cheney mysql 5.7.18",##实体的描述信息(自定义)

"host_name" ##主机名称

"URL"##主机名和端口号

 

 

4.利用omcli添加目标

用oracle用户,进入目标主机的Cloud Agent的bin目录,同时将两个json文件拷贝到该目录中

$ cd /home/oracle/omcagent/cloudagent/agent_inst/bin

$ ./omcli add_entity agent omc_mysql_db_sample.json -credential_file omc_mysql_creds.json

 

Oracle Management Cloud Agent

Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.

Operation Succeeded: Accepted 1 of 1 entities for processing.

 

[oracle@f807e9 bin]$ ./omcli status_entity agent omc_mysql_db_sample.json

Oracle Management Cloud Agent

Copyright (c) 1996, 2016 Oracle Corporation.  All rights reserved.

omc_mysql_db.ycmysql57 : AGENT:entity fully monitored

 

登录基础架构监视云主界面,进入“实体”,在“实体类型”中选中“MySQL Database”,就能看到刚刚加入监控的MySQL数据库的实体,

点击实体“cheney mysql 5.7.18”,进入数据库实体的监控界面,就能看到这个数据库的相关运行数据:

 

至此,云上的MySQL数据库已经纳入到IMCS的监视列表中,运维人员就能通过IMCS随时监控MySQL数据库的运行状态。

 

后续,本公众号还将陆续推出系列文章,介绍如何使用IMCS服务来监控运行在云上的各种对象,敬请期待:

  • 主机系列:WindowsSolaris

  • 数据库系列:Oracle Database,     MySQL, Microsoft SQL Server, MongoDB

  • 应用服务器系列:Oracle WebLogic     Server, Tomcat, Apache HTTP Server

  • 容器系列:Docker Engine, Docker     Container。

  • 网络设备系列:Oracle Traffic     Director。

  • 云服务系列:Oracle Cloud Compute,     Oracle Database Cloud Service, Oracle Java Cloud Sevrice, Amazon EC2。

文章转载自凛冬未至,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论