达梦运维工具-DEM搭建

运维监控工具-DEM

前言

根据达梦官网文档整理

一、工具介绍

DM企业管理器(DM Enterprise Manager,简称为DEM)提供一个通过Web 界面来监控、管理并维护DM数据库的集中式管理平台。数据库管理员可通过任意Web应用登录DEM,从而对DM数据库进行管理和监控。DEM主要有集群部署、自动巡检、监控和告警等功能。

1、DEM架构

DEM由以下几个部分组成:

  • DEM 服务器:指 DEM 应用服务器,负责处理客户端工具功能逻辑并存储 dmagent 收集到的数据到 DEM 存储数据库,同时向客户端展示监控数据。
  • DEM 存储数据库:存储 DEM 的元数据和 dmagent 收集到的监控数据。
  • 数据库实例:需要被管理监控的数据库实例。
  • 数据库代理服务(dmagent):部署在远程机器上的代理,DEM 通过 dmagent 访问远程主机,同时 dmagent 收集监控信息发送给 DEM。

DEM系统架构图如下:

在这里插入图片描述

2、DEM功能

  • 客户端工具。用户能够通过 DEM 工具来进行 DM 数据库的对象管理、状态监控、SQL 查询与调试。
  • 监控与告警。本功能是 DEM 工具的核心功能。通过远程主机部署代理,能够实现对远程主机状态和远程主机上 DM 数据库实例状态的监控。DEM 监控功能不仅仅局限于单个数据库实例,还能够对数据库集群(MPP、RAC、数据守护等)进行监控和管理。
  • 系统管理。DEM 工具提供了工具本身的系统配置与权限管理,方便不同用户同时使用工具,也可限制非 admin 用户的权限。

二、环境准备

DEM 部署需要准备:

1、DEM WAR包

自己下载

2、Tomcat

自备,要求与部署的系统环境相匹配

3、JAVA1.8

DEM和dmagent所在机器需要配置 JAVA环境,JAVA版本必须为JAVA 1.8。若系统中不带 jdk 环境可以在环境变量中指定数据库中的 jdk 目录即可,如下所示:

[root@localhost ~]# cat /etc/profile
export JAVA_HOME=/home/dmdba/dmdbms/jdk
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

4、达梦数据库

为DEM的后台数据库,需保证DEM 所在机器能访问达梦数据库。

在部署dmagent之前,需设置DEM和dmagent所在服务器主机的时间同步。如果没有,则不设置,正式环境建议要配置时间同步

如下以 10.10.10.10 为 ntp 服务器为例,设置定时任务:

[root@localhost ~]# crontab -l
# Time sync
0,10,20,30,40,50 * * * * /root/sync_time.sh
[root@localhost ~]# cat /root/sync_time.sh 
#!/bin/bash
. /etc/profile
. /root/.bash_profile
ntpdate 10.10.10.10 ; hwclock –w

5、网络规划

主机IP
DEM(DEM服务器)192.168.100.40
DW01(达梦数据守护集群主库)192.168.100.30
DW02(达梦数据守护集群备库)192.168.100.31
DWM(达梦数据守护集群监视器)192.168.100.32

三、DEM部署步骤

1、初始化数据库

1.1 创建后台数据库

创建一个 DM 数据库作为 DEM 后台数据库,初始化参数不做要求,默认即可,并对数据库的 dm.ini 参数配置进行优化,推荐配置如下:

MEMORY_POOL         	=  200
BUFFER                =  1000
KEEP                  =  64
SORT_BUF_SIZE         =  50
1.2 执行初始化脚本

在创建的后台数据库中用 SYSDBA(或管理员用户)执行 SQL 脚本 dem_init.sql,脚本在DEM安装包中(此 SQL 脚本编码为 UTF-8,若使用 disql 执行 SQL 脚本,请先设置 set CHAR_CODE UTF8)。执行完脚本后,在后台数据库中会生成一个 DEM 的模式,存放 DEM 运行所需要的表和视图。

SQL> SET CHAR_CODE UTF8;
SQL> START /home/dmdba/dem_init.sql

2、配置Tomcat

2.1 解压Tomcat

解压tomcat包,解压tomcat之后,会生成以下目录:

[dmdba@DEM tomcat]$ ll
总用量 136
drwxr-xr-x  9 dmdba dinstall   220 214 08:15 .
drwx------. 7 dmdba dinstall   184 33 23:39 ..
drwxr-xr-x  2 dmdba dinstall  4096 33 23:39 bin
-rw-r--r--  1 dmdba dinstall 21516 214 08:15 BUILDING.txt
drwxr-xr-x  3 dmdba dinstall   254 33 23:39 conf
-rw-r--r--  1 dmdba dinstall  6375 214 08:15 CONTRIBUTING.md
drwxr-xr-x  2 dmdba dinstall  4096 214 08:15 lib
-rw-r--r--  1 dmdba dinstall 58153 214 08:15 LICENSE
drwxr-xr-x  2 dmdba dinstall   197 33 23:39 logs
-rw-r--r--  1 dmdba dinstall  2401 214 08:15 NOTICE
-rw-r--r--  1 dmdba dinstall  3422 214 08:15 README.md
-rw-r--r--  1 dmdba dinstall  7075 214 08:15 RELEASE-NOTES
-rw-r--r--  1 dmdba dinstall 16982 214 08:15 RUNNING.txt
drwxr-xr-x  2 dmdba dinstall    30 214 08:15 temp
drwxr-xr-x  8 dmdba dinstall   107 33 23:39 webapps
drwxr-xr-x  3 dmdba dinstall    22 33 23:39 work
2.2 修改Tomcat配置
2.2.1 修改conf/server.xml

在conf/server.xml配置文件中<Connector port=“8080” protocol=“HTTP/1.1”… 位置处添加属性字段 maxPostSize=“-1”:

<Connector port="8080" protocol="HTTP/1.1" maxPostSize="-1"
               connectionTimeout="20000"
              redirectPort="8443" />
2.2.2 bin/*.sh赋予执行权限
$ chmod u+x bin/*.sh
2.2.3 修改bin/catalina.sh

在内容cygwin=false前面添加这行

[dmdba@dem bin]$ vi catalina.sh 
# Linux:bin/catalina.sh
JAVA_OPTS="-server -Xms256m -Xmx1024m -Djava.library.path=/home/dmdba/dmdbms/bin"
# Windows:bin/catalina.bat
set java_opts= -server -Xms40m -Xmx1024m -Djava.library.path=c:\dmdbms\bin

注意:

/home/dmdba/dmdbms/bin根据自己实际路径填写


3、配置dem.war包

3.1 解压dem.war包
$ unzip -oq dem.war -d ~/dem	
$ ls -lF ~/dem
总用量 60
-rw-r--r-- 1 dmdba dinstall  1369 1214 14:46 auto_login_error.jsp
drwxr-xr-x 8 dmdba dinstall  8192 1214 14:56 dem/
-rw-r--r-- 1 dmdba dinstall  5100 1214 14:46 Dem.html
drwxr-xr-x 9 dmdba dinstall   225 1214 14:56 dmagent/
-rw-r--r-- 1 dmdba dinstall  1064 1214 14:46 error.html
-rw-r--r-- 1 dmdba dinstall  1482 1214 14:46 error.jsp
-rw-r--r-- 1 dmdba dinstall  1560 1214 14:46 favicon.png
drwxr-xr-x 2 dmdba dinstall    27 1214 14:56 font/
drwxr-xr-x 4 dmdba dinstall    34 1214 14:56 help/
drwxr-xr-x 6 dmdba dinstall 16384 1214 14:56 images/
drwxr-xr-x 2 dmdba dinstall  4096 1214 14:56 jdbcdriver/
drwxr-xr-x 5 dmdba dinstall    87 1214 14:56 js/
drwxr-xr-x 2 dmdba dinstall     6 1214 14:46 log/
drwxr-xr-x 2 dmdba dinstall    25 34 00:12 META-INF/
drwxr-xr-x 8 dmdba dinstall    89 1214 14:56 resources/
drwxr-xr-x 2 dmdba dinstall    55 1214 14:56 theme/
drwxr-xr-x 6 dmdba dinstall   128 34 00:17 WEB-INF/		
3.2 修改WEB-INF/db.xml配置

修改WEB-INF/db.xml文件,配置后台数据库连接信息

<?xml version="1.0" encoding="UTF-8"?>
<ConnectPool>
        <Server>127.0.0.1</Server>   <!--DEM后台数据库IP-->
        <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>
3.3 重新打包dem.war
$ cd ~/dem && ~/dmdbms/jdk/bin/jar -cvf dem.war * && mv dem.war ~/ && rm -rf ~/dem
3.4 移动dem.war包

将dem.war包放置在Tomcat的webapps目录下,启动Tomcat,会自动解压war包生成dem目录。

$ mv ~/dem.war ~/tomcat/webapps
3.5 配置DEM日志级别(可选)

在tomcat的webapps/dem/WEB-INF目录下,log4j.xml文件控制着日志级别。LOG_LEVEL参数控制日志的显示信息,LOG_MAX_SIZE,LOG_MAX_COUNT,LOG_PRESERVE_DURATION这3个参数动态组合控制日志量和日志保存的最大大小,超过这个最大大小的日志会被删除。
日志最大大小 = L O G _ M A X _ S I Z E × L O G _ M A X _ C O U N T × L O G _ P R E S E R V E _ D U R A T I O N 日志最大大小= LOG\_MAX\_SIZE × LOG\_MAX\_COUNT × LOG\_PRESERVE\_DURATION 日志最大大小=LOG_MAX_SIZE×LOG_MAX_COUNT×LOG_PRESERVE_DURATION

注意:

tomcat启动后会自动解压webapps/dem.war包,生成dem文件夹

在DEM调试和查找问题时,LOG_LEVEL可以使用DEBUG或者ALL参数,生产环境平时建议使用ERROR级别。根据项目的实际需要和磁盘的可用大小,调整LOG_MAX_SIZE,LOG_MAX_COUNT,LOG_PRESERVE_DURATION这3个参数的大小,避免出现磁盘爆盘的现象。此配置文件重启Tomcat之后才能生效


<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="OFF">
        <Properties>
                <!-- 项目名称,同时也是日志文件的前缀 -->
                <Property name="PROJECT_NAME" value="dem" />
                <!-- 日志级别(ALL,TRACE,DEBUG,INFO,WARN,ERROR,FATAL,OFF) -->
                <Property name="LOG_LEVEL" value="ERROR" />
                <!-- 每份日志文件的最大体积,需要提供单位(B | KB | MB | GB 等) -->
                <Property name="LOG_MAX_SIZE" value="100 MB" />
                <!-- 每天日志最大份数,如果达到最大份数,当天较早的日志会被移除 -->
                <Property name="LOG_MAX_COUNT" value="10" />
                <!-- 备份日志最长保存时间(天) -->
                <Property name="LOG_PRESERVE_DURATION" value="30" />
                <!-- 日志保存目录 -->
                <Property name="LOG_FILE_PATH" value="${sys:DEMLogDir:-log}" />
                <!-- 日志前缀 -->
                <Property name="LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss} %n[%p] %m%n" />
        </Properties>

        <Appenders>

                <Console name="CONSOLE" target="SYSTEM_OUT">
                        <ThresholdFilter level="ALL" />
                        <PatternLayout pattern="${LOG_PATTERN}" />
                </Console>

                <RollingRandomAccessFile name="FILE"
                        append="true" immediateFlush="false" bufferSize="512"
                        fileName="${LOG_FILE_PATH}/${PROJECT_NAME}.log"
                        filePattern="${LOG_FILE_PATH}/${PROJECT_NAME}-%d{yyyy-MM-dd}-%i.log.gz"
                        filePermissions="rw-rw-rw-">
                        <ThresholdFilter level="ALL" />
                        <PatternLayout pattern="${LOG_PATTERN}" charset="UTF-8" />
                        <Policies>
                                <TimeBasedTriggeringPolicy modulate="true" interval="1" />
                                <SizeBasedTriggeringPolicy size="${LOG_MAX_SIZE}" />
                        </Policies>
                        <DefaultRolloverStrategy max="${LOG_MAX_COUNT}">
                                <Delete basePath="${LOG_FILE_PATH}" maxDepth="1">
                                        <IfFileName glob="${PROJECT_NAME}*.log.gz" />
                                        <IfLastModified age="${LOG_PRESERVE_DURATION}d" />
                                </Delete>
                        </DefaultRolloverStrategy>
                </RollingRandomAccessFile>

        </Appenders>

        <Loggers>
                <AsyncRoot level="${LOG_LEVEL}">
                        <AppenderRef ref="CONSOLE" />
                        <AppenderRef ref="FILE" />
                </AsyncRoot>
        </Loggers>
</Configuration>

4、启动tomcat

在bin目录下执行脚本启动tomcat

[dmdba@DEM bin]$ ./startup.sh
Using CATALINA_BASE:   /home/dmdba/tomcat
Using CATALINA_HOME:   /home/dmdba/tomcat
Using CATALINA_TMPDIR: /home/dmdba/tomcat/temp
Using JRE_HOME:        /
Using CLASSPATH:       /home/dmdba/tomcat/bin/bootstrap.jar:/home/dmdba/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Tomcat started.

5、访问DEM

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

在这里插入图片描述


四、部署dmagent

1、获取dmagent

获取dmagent,有两种方式:

  • 被监控的机子,达梦数据库安装目录的 tool 下存有 dmagent
  • 登录部署好的 DEM,资源包模块下载dmagent

在这里插入图片描述

2、修改dmagent配置

配置 dmagent 目录下的 agent.ini

center_url  =  http://192.168.100.40:8080/dem    #dem所在机器的地址     

3、配置dmagent日志级别

同样是修改dmagent 目录下的 log4j.xml文件,修改方法和配置与dem端一样

4、注册dmagent服务(使用root用户)

$ cd /home/dmdba/dmdbms/dmagent
$ ./service.sh install
input agent home [/home/dmdba/dmdbms/dmagent] :
input agent.ini path [/home/dmdba/dmdbms/dmagent/agent.ini] :
Installation the service DmAgentService completed.

5、启动dmagent服务

$ systemctl start DmAgentService

6、DEM查看

dmagent配置正确的话,就能在DEM资源监控模块就能看到你启动了agent的机器了

在这里插入图片描述

达梦社区:https://eco.dameng.com

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CPFD(Continuum Particle Fluid Dynamics)和CFD-DEM(Computational Fluid Dynamics-Discrete Element Method)是两种流体颗粒动力学模拟方法,在模拟颗粒流动时有一些区别。 首先,CPFD是一种基于连续体假设的方法,将颗粒流动视为连续介质的流体动力学过程。它将颗粒流体作为一个整体来处理,采用连续介质流体力学方程(如Navier-Stokes方程)来描述流体的运动行为。CPFD适用于颗粒浓度较高、流动较稳定的情况,适用于流体和颗粒之间的相互作用力相对较小的情况。 而CFD-DEM是一种将离散元法(DEM)和计算流体动力学(CFD)相结合的方法。CFD-DEM通过离散化表示每个颗粒,并同时模拟流体和颗粒的运动行为。它将颗粒和流体作为相互作用的两个独立部分进行建模,并通过引入颗粒之间的相互作用力来模拟颗粒之间的碰撞和运动。CFD-DEM适用于颗粒浓度较低、流动较不稳定的情况,适用于模拟颗粒与流体之间的相互作用较强的情况。 在模拟粒子流动过程时,CPFD更适用于粒子浓度较高、流动较稳定的情况,而CFD-DEM更适用于粒子浓度较低、流动较不稳定的情况。同时,由于CFD-DEM同时考虑了流体和颗粒之间的相互作用,它能够提供更全面、更准确的流体-颗粒系统的信息。但是CFD-DEM的计算复杂度较高,对计算资源要求较大,因此在实际应用中需要权衡模拟精度和计算成本。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值