达梦数据库DEM搭建及使用(使用DEM搭建达梦数据守护集群)

DEM简介

DM企业管理器的英文全称DM Enterprise Manager,简称DEM。 DEM提供一个通过Web界面来监控、管理并维护DM数据库的集中式管理平台,可以从任何可以访问Web应用的位置通过DEM来对DM数据库进行各种管理和监控。 DEM不仅包含了传统桌面工具、管理工具Manager和数据迁移工具DTS等的功能,还提供了集群部署、监控和告警的功能。

DEM以Web应用的方式提供数据库管理、监控和维护的功能,实现远程管理和监控数据库实例,并且不仅局限于单个数据库实例的管理和监控,也能够对数据库集(MPP、DSC以及数据守护)进行管理和监控。 

DEM由以下几个部分组成: 

  •     DEM服务器 
  •     DEM存储数据库
  •     要管理和监控的数据库实例 
  •     数据库代理服务(dmagent)

其中DEM服务器为DEM应用服务器,负责处理客户端工具功能逻辑并存储dmagent收集到的数据到DEM存储数据库,同时展示数据给客户端。 

DEM存储数据库存储DEM的元数据和dmagent收集到的监控数据。 

数据库代理服务dmagent为部署在远程机器上的代理,DEM通过dmagent访问远程主机,同时dmagent收集监控信息发送给DEM。 

系统架构图如下: 

DEM搭建

DEM搭建前提:需要提前安装好达梦数据库软件。(DEM搭建集群在DEM配置及使用的3.2章节)

网络规划:

主机内网外网
DEM(DEM服务器)10.10.10.200192.168.10.200
DWC1(达梦数据守护集群主库)10.10.10.201192.168.10.201
DWC2(达梦数据守护集群备库)10.10.10.202192.168.10.202
DMM(达梦数据守护集群监视器)10.10.10.203192.168.10.203

建议替换操作系统JDK为sun JDK,替换后jdk版本如下

[root@dem ~]# java -version
java version "1.8.0_211"
Java(TM) SE Runtime Environment (build 1.8.0_211-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.211-b12, mixed mode)

1. 创建一个数据库作为DEM后台数据库, 数据库dm.ini参数配置进行优化, 推荐配置:

	MEMORY_POOL          =  200
	BUFFER               =  1000
	KEEP                 =  64
	SORT_BUF_SIZE        =  50

1.1 初始化数据库(使用dmdba用户初始化,这里使用默认初始化参数)

[dmdba@dem bin]$ ./dminit path=/opt/dmdbms/data LOG_SIZE=2048 DB_NAME=DEMDB INSTANCE_NAME=DEM
initdb V8
db version: 0x7000c
License will expire on 2021-12-25
Normal of FAST
Normal of DEFAULT
Normal of RECYCLE
Normal of KEEP
Normal of ROLL

 log file path: /opt/dmdbms/data/DEMDB/DEMDB01.log


 log file path: /opt/dmdbms/data/DEMDB/DEMDB02.log

write to dir [/opt/dmdbms/data/DEMDB].
create dm database success. 2021-05-06 13:51:29

1.2 数据库初始化后,调整四个dm.ini参数(dmdba用户)

[dmdba@dem bin]$ cat /opt/dmdbms/data/DEMDB/dm.ini|grep MEMORY_POOL
		MEMORY_POOL                     = 200                   #Memory Pool Size In Megabyte
[dmdba@dem bin]$ cat /opt/dmdbms/data/DEMDB/dm.ini|grep BUFFER
		BUFFER                          = 1000                  #Initial System Buffer Size In Megabytes
[dmdba@dem bin]$ cat /opt/dmdbms/data/DEMDB/dm.ini|grep KEEP
		KEEP                            = 64                    #system KEEP buffer size in Megabytes
[dmdba@dem bin]$ cat /opt/dmdbms/data/DEMDB/dm.ini|grep SORT_BUF_SIZE
		SORT_BUF_SIZE                   = 64                    #maximum sort buffer size in Megabytes

1.3 注册数据库服务(root用户)

[root@dem ~]# cd /opt/dmdbms/script/root/
[root@dem root]# ./dm_service_installer.sh -t dmserver -dm_ini /opt/dmdbms/data/DEMDB/dm.ini -p DEM
Created symlink from /etc/systemd/system/multi-user.target.wants/DmServiceDEM.service to /usr/lib/systemd/system/DmServiceDEM.service.
创建服务(DmServiceDEM)完成

1.4 启动数据库(dmdba用户)

[dmdba@dem ~]$ cd /opt/dmdbms/bin
[dmdba@dem bin]$ ./DmServiceDEM start
Starting DmServiceDEM:                                     [ OK ]

2. 执行搭建DEM所需的SQL脚本

2.1 脚本位置:该脚本在数据库安装目录web下,文件名为dem_init.sql

[dmdba@dem tool]$ cd /opt/dmdbms/web/
[dmdba@dem web]$ ll
总用量 221768
-rwxr-xr-x 1 dmdba dinstall    122802 3月  19 15:50 dem_init.sql
-rwxr-xr-x 1 dmdba dinstall   3444399 3月  19 15:50 DEM.pdf
-rwxr-xr-x 1 dmdba dinstall      4238 3月  19 15:50 demsdk.jar
-rwxr-xr-x 1 dmdba dinstall 223510453 3月  19 15:50 dem.war
-rwxr-xr-x 1 dmdba dinstall      3261 3月  19 15:50 readme.txt

2.2 在该数据库中执行SQL脚本dem_init.sql,此SQL脚本编码为UTF-8,如果使用disql执行SQL脚本,需要设置set CHAR_CODE UTF8;脚本中第一行注释取消即可

2.3 执行脚本:

[dmdba@dem bin]$ ./disql SYSDBA/SYSDBA@LOCALHOST:5236

服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间 : 2.850(ms)
disql V8
SQL> start /opt/dmdbms/web/dem._init.sql

2.4 执行结果:

4. 配置后台数据库的连接信息

4.1 解压dem.war文件

该文件在数据库软件安装目录的web目录下

使用命令解压:

[dmdba@dem web]$ unzip dem.war -d dem

解压后如下

4.2 修改解压后的war包文件

[dmdba@dem web]$ cd dem/WEB-INF/
[dmdba@dem WEB-INF]$ ll
总用量 48
drwxr-xr-x 2 dmdba dinstall     6 3月  15 11:30 classes
-rw-r--r-- 1 dmdba dinstall   460 3月  15 11:29 db.xml
-rw-r--r-- 1 dmdba dinstall    36 3月  15 11:29 dem.properties
drwxr-xr-x 3 dmdba dinstall    17 3月  15 11:41 deploy
drwxr-xr-x 2 dmdba dinstall  4096 3月  15 11:41 lib
-rw-r--r-- 1 dmdba dinstall  1981 3月  15 11:29 log4j.xml
drwxr-xr-x 4 dmdba dinstall    42 3月  15 11:41 sslDir
-rw-r--r-- 1 dmdba dinstall 31669 3月  15 11:29 web.xml
[dmdba@dem WEB-INF]$ vi db.xml 
<?xml version="1.0" encoding="UTF-8"?>
<ConnectPool>
        <Server>192.168.10.200</Server>
        <Port>5236</Port>
        <User>SYSDBA</User>
        <Password>SYSDBA</Password>
        <InitPoolSize>5</InitPoolSize>
        <CorePoolSize>10</CorePoolSize>
        <MaxPoolSize>50</MaxPoolSize>
        <KeepAliveTime>60</KeepAliveTime>
        <DbDriver></DbDriver>
        <DbTestStatement>select 1</DbTestStatement>
        <SSLDir>../sslDir/client_ssl/SYSDBA</SSLDir>
        <SSLPassword></SSLPassword>
</ConnectPool>


:wq

注意:

 如果需要SSL安全方式连接后台数据库, 要求 配置SSLDir和SSLPassword:
   默认在WEB-INF/sslDir目录存有密钥对,WEB-INF/db.xml配置客户端连接使用的密钥文件(SSLDir)为WEB-INF/sslDir/client_ssl/SYSDBA,密码(SSLPassword)为空,对应WEB-INF/db.xml配置的登录用户SYSDBA,此时,只需拷贝WEB-INF/sslDir/server_ssl到后台数据库执行码目录。

   密码字段加密:
   db.xml中Password和SSLPassword支持设置自定义加解密引擎对密码进行加解密处理,通过属性engine指定加解密引擎类路径。自定义加解密引擎需要实现demsdk.jar中提供的com.dameng.dem.server.util.IEncryptEngine接口。将自定义加解密引擎打包成jar文件放入WEB-INF\lib目录下。
   demsdk.jar提供了一个默认的加解密引擎:com.dameng.dem.server.util.DefaultEncryptEngine,使用默认加解密引擎配置如下:
   <Password engine="com.dameng.dem.server.util.DefaultEncryptEngine">通过DefaultEncryptEngine加密后的密码</Password>
   
   详细描述可参见DEM.pdf中db.xml和demsdk的相关章节(点我下载

4.3 压缩为war包

[dmdba@dem dem]$ jar -cvf dem.war *
[dmdba@dem dem]$ ll dem.war
-rw-r--r-- 1 dmdba dinstall 223603801 5月   6 14:57 dem.war
[dmdba@dem dem]$ mv dem.war ../
[dmdba@dem web]$ chmod 755 dem.war 
[dmdba@dem web]$ ll
总用量 221860
drwxr-xr-x 12 dmdba dinstall       256 5月   6 14:58 dem
-rwxr-xr-x  1 dmdba dinstall    122800 5月   6 14:10 dem_init.sql
-rwxr-xr-x  1 dmdba dinstall   3444399 3月  19 15:50 DEM.pdf
-rwxr-xr-x  1 dmdba dinstall      4238 3月  19 15:50 demsdk.jar
-rwxr-xr-x  1 dmdba dinstall 223603801 5月   6 14:57 dem.war
-rwxr-xr-x  1 dmdba dinstall      3261 3月  19 15:50 readme.txt

5 配置tomcat

先到网址Apache Tomcat® - Welcome!下载好tomcat

5.1 将tomcat压缩包传到服务器并解压

[dmdba@dem ~]$ cd /usr/local/src/
[dmdba@dem src]$ tar -zxvf apache-tomcat-7.0.108.tar.gz 
[dmdba@dem src]$ ll
总用量 9832
drwxr-xr-x 9 dmdba dinstall     220 3月  29 11:34 apache-tomcat-7.0.108
-rw-r--r-- 1 dmdba dinstall 9655294 5月   6 14:43 apache-tomcat-7.0.108.tar.gz
drwxr-xr-x 7 dmdba dinstall     245 4月   2 2019 jdk1.8.0_211
-rwxr-xr-x 1 dmdba dinstall  406334 4月  20 2017 nmon

5.2 在conf/server.xml中  <Connector port="8080" protocol="HTTP/1.1"... 追加属性字段  maxPostSize="-1";

[dmdba@dem src]$ cd apache-tomcat-7.0.108/conf/
[dmdba@dem conf]$ vi server.xml 

5.3 修改jvm启动参数

示例:

      Linux:bin/catalina.sh ->     JAVA_OPTS="-server -Xms256m -Xmx1024m -Djava.library.path=/opt/dmdbms/bin"
      Windows:bin/catalina.bat -> set java_opts= -server -Xms40m -Xmx1024m -Djava.library.path=c:\dmdbms\bin

[dmdba@dem apache-tomcat-7.0.108]$ cd /usr/local/src/apache-tomcat-7.0.108/bin/
[dmdba@dem bin]$ vi catalina.sh 

 在文件中添加一行  JAVA_OPTS="-server -Xms256m -Xmx1024m -Djava.library.path=/opt/dmdbms/bin"

注意:/opt/dmdbms/bin目录根据自己实际安装的数据库软件路径填写,需要配置JAVA 1.8及以上版本的运行时环境

6 发布war包

[dmdba@dem ~]$ cd /opt/dmdbms/web/
[dmdba@dem web]$ ll
总用量 221860
drwxr-xr-x 12 dmdba dinstall       256 5月   6 14:58 dem
-rwxr-xr-x  1 dmdba dinstall    122800 5月   6 14:10 dem_init.sql
-rwxr-xr-x  1 dmdba dinstall   3444399 3月  19 15:50 DEM.pdf
-rwxr-xr-x  1 dmdba dinstall      4238 3月  19 15:50 demsdk.jar
-rwxr-xr-x  1 dmdba dinstall 223603801 5月   6 14:57 dem.war
-rwxr-xr-x  1 dmdba dinstall      3261 3月  19 15:50 readme.txt
[dmdba@dem web]$ cp dem.war /usr/local/src/apache-tomcat-7.0.108/webapps/
[dmdba@dem bin]$ cd /usr/local/src/apache-tomcat-7.0.108/bin/
[dmdba@dem bin]$ ./startup.sh 
Using CATALINA_BASE:   /usr/local/src/apache-tomcat-7.0.108
Using CATALINA_HOME:   /usr/local/src/apache-tomcat-7.0.108
Using CATALINA_TMPDIR: /usr/local/src/apache-tomcat-7.0.108/temp
Using JRE_HOME:        /usr/local/src/jdk1.8.0_211
Using CLASSPATH:       /usr/local/src/apache-tomcat-7.0.108/bin/bootstrap.jar:/usr/local/src/apache-tomcat-7.0.108/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.

7 访问

本机ip为192.168.10.200,开启浏览器访问url(http://192.168.10.200:8080/dem),登录(admin/888888)

此时点主机按钮,是没有信息显示的

8 启动agent

在需要进行监控的主机上启动dmagent,要求dmagent和dem所运行主机时间一致;

8.1 配置agent.ini: center_url=http://192.168.10.200:8080/dem  #DEM访问地址

[dmdba@dem bin]$ cd /opt/dmdbms/tool/dmagent/
[dmdba@dem dmagent]$ ll
总用量 816
-rwxr-xr-x 1 dmdba dinstall  11132 3月  29 13:17 agent.ini
drwxr-xr-x 2 dmdba dinstall   4096 3月  19 15:50 lib
drwxr-xr-x 2 dmdba dinstall     23 3月  29 13:16 log
-rwxr-xr-x 1 dmdba dinstall   1967 3月  19 15:50 log4j.xml
-rwxr-xr-x 1 dmdba dinstall 794817 3月  19 15:50 readme.pdf
drwxr-xr-x 6 dmdba dinstall     56 3月  19 15:50 resources
drwxr-xr-x 2 dmdba dinstall     54 5月   6 09:24 service
-rwxr-xr-x 1 dmdba dinstall   3550 3月  19 15:50 service.bat
-rwxr-xr-x 1 dmdba dinstall   3408 3月  19 15:50 service.sh
-rwxr-xr-x 1 dmdba dinstall   1412 3月  19 15:50 start.bat
-rwxr-xr-x 1 dmdba dinstall   2491 3月  19 15:50 start.sh
[dmdba@dem dmagent]$ vi agent.ini 

8.2 注册dmagent服务(使用root用户)

[root@dem ~]# cd /opt/dmdbms/tool/dmagent/
[root@dem dmagent]# ./service.sh install
input agent home [/opt/dmdbms/tool/dmagent] :
input agent.ini path [/opt/dmdbms/tool/dmagent/agent.ini] :
Installation the service DmAgentService completed.

服务注册后,服务名会在/opt/dmdbms/tool/dmagent/service目录生成

[root@dem dmagent]# cd service/
[root@dem service]# pwd
/opt/dmdbms/tool/dmagent/service
[root@dem service]# ll
总用量 4
-rwxr-xr-x 1 dmdba dinstall 4056 5月   6 15:13 DmAgentService

8.3 启动dmagent服务(root用户)

[root@dem service]# ./DmAgentService start
Starting dmagent SUCCESS!

8.4 查看DEM主机监控

在相应机器上启动agent服务后,即可在DEM中看到对该主机的监控。

DEM配置及使用

1 基本功能使用

1.1 数据库监控

当被监控的主机agent启动后,可在主机监控界面看到具体的主机监控情况,此时如果该主机上有达梦数据库,可以添加对数据库的监控,具体步骤如下

(1)点击“监控及告警”菜单栏下的数据库按钮,在新弹出的窗口中,点击添加选项。

 (2)根据数据库的实际情况添加单实例或者集群,此处我对DEM后台单实例库进行监控。

 (3)填写数据库的登录信息,其中主机项不需要输入IP,自动根据对主机的监控情况列出相应IP

(4)查看数据库监控信息

注意:数据库刚添加完是失败的状态,稍等片刻刷新后即显示正常

正常监控如下所示:

(5)数据库监控提供了丰富的功能,可根据实际需求查看和监控

1.2 主机监控

主机监控同样提供了很实用的功能,例如线程监控,磁盘分析等

1.3 告警配置

DEM可以根据用户需求,自定义告警配置,例如配置对数据库使用内存情况的告警如下:

(1)选择监控及告警-->告警配置,选择添加,在弹出窗口中填写配置选项,选择对数据库资源的监控告警,点击确定,并点击下一步

(2)在告警配置添加窗口中,添加选择“内存使用率”,比较远算符选择大于等于 ‘>=’,阈值1填写“80”,单位默认百分比,告警级别选择“严重”,然后点击下一步

(3)此时可以勾选告警通知方式和用户,这里选择默认,邮件通知和手机通知需要额外配置,如果未配置是不生效的,具体配置见后面章节

(4)完成后可以看到配置的告警规则,该告警配置可以设为启用或关闭,或者重新编辑配置,此处我还配置了对主机内存使用情况的监控

(5)告警查看

当满足配置的告警规则时,会触发告警,根据配置的告警通知方式会进行通知,DEM页面上也会有提示。下图中我的主机内存使用情况已经告警,用户可根据告警情况去处理

2 系统配置

2.1 DEM用管理员登陆系统后,可以在"系统管理"->"系统配置"页面中对系统的其他属性进行配置,包括dmagent的监控频率、前端刷新频率、邮件手机通知告警等

2.2 若要启用邮件通知,需用管理员用户登录系统, 在系统配置中完成系统邮箱的相关配置

2.3 若需要启用短信通知,需要借助达梦提供的WEB-INF/lib/demsdk.jar,实现 com.dameng.dem.server.util.IPhoneNotify接口,将依赖包及实现类打包放入到WEB-INF/lib下,重启web容器,然后在系统配置中完成短信通知的相关配置即可

3 集成工具使用

3.1 DEM集成了诸多客户端工具,如manager,DTS等,使用方式和客户端无异,具体如何使用这里不再做介绍。

3.2 使用DEM搭建达梦数据守护集群

注意:如果部署集群并需要创建系统服务,在Linux(Unix)下应以root用户运行dmagent,在Windows下应以administrator用户运行dmagent。

3.2.1 将其他三台机器上配置好agent并启动,参照DEM搭建的第八章节。

3.2.2 agent正常启动后,可在主机监控页面查看

3.2.3 在DEM左侧工具栏右键选择客户端工具下的部署工具,并选择新建部署选项

3.2.4 集群名称自定义,这里我命名为“达梦数据守护集群”

3.2.5 新弹出的窗口中选择对应的“主备集群”

3.2.6 勾选要部署集群的主机,我这里选择三台。由于DEM比agent版本低一些,会提示代理版本与工具支持版本不一致,这里忽略该问题,实际部署时尽量要求一致即可。

3.2.7 根据集群的部署需求,配置实例名,工作目录,端口等信息。同时可以勾选注册服务,在部署时,工具会自动注册服务。

3.2.8 配置集群的主备关系,设置192.168.10.201上的实例为主库,192.168.10.202上的实例为备库

3.2.9 选择完配置后,选择初始化新数据库,初始化参数自定义,根据需求更改,初始化参数一旦确定,后期是无法修改的。

3.2.10 接下来调整dm.ini参数文件,调整的配置同时应用到其他示例

3.2.11 接下来是dmmal.ini参数文件的修改,这里选择性调整即可。注意mal_host和mal_inst_host 内外网IP的配置是否正确对应。

 3.2.12 之后调整dmarch.ini。这里是归档相关的配置,其中建议给归档设置空间使用上限,我这里测试环境上限设置1024,单位为M,修改后同步应用到其他实例

3.2.13 下一步设置dmwatcher.ini守护进程依赖的配置文件,其中守护进程切换主备的模式为manual,即故障手动切换模式,我这里修改为auto自动切换,稍后会配置确认监视器。

3.2.14 最后配置dmmonitor.ini,我这里选择配置确认监视器。监视器放在192.168.10.203机器上

3.2.15 接下来上传服务器文件,可以上传数据库软件光盘镜像文件,或者光盘中的DMInstall.bin文件,或者将数据库软件安装后的bin目录压缩为的.zip文件。我这里上传DMInstall.bin文件

3.2.16 点击下一步后,会出现集群整体的配置总览,并且可以导出留存

3.2.17 最后就会自动开始安装部署集群,整个进度可以在页面上查看到

3.2.18 部署完成,页面会提示任务结束,整个过程没有报错,点击完成退出即可。

3.2.19 DEM中数据库监控页面添加主备集群

3.2.20 监视器服务器前台启动非确认监视器,查看集群状态正常

至此,DEM的搭建及简单使用就结束了,更多功能,可以去自己去详细探索。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DB实践

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值