注册
DM8 DEM 9.1.1 单机部署实战
技术分享/ 文章详情 /

DM8 DEM 9.1.1 单机部署实战

wwhhdd 2026/09/18 243 0 0

DM8 DEM 9.1.1 单机部署实战

本次将 DEM 单机部署在本地 CentOS 7 虚拟机,DEM 服务、DEM 存储库、dmagent 和被监控数据库均在同一台机器上。

1. 环境

项目 环境配置
操作系统 CentOS Linux 7.9.2009 x86_64
主机地址 192.168.248.130
内存 约 3 GB,另有 3 GB Swap
DM 数据库 DAMENG
DM 端口 5236
DM 安装目录 /home/dmdba/dmdbms
数据库配置文件 /dmdata/DAMENG/dm.ini
DEM 版本 V9.1.1,2026-08-25
DEM 安装目录 /home/dmdba/dmdem
DEM 访问地址 http://192.168.248.130:8080/dem/
dmagent 端口 6363、6364

部署关系:

浏览器
  │
  ▼
DEM(Tomcat + dem.war)
  │
  ├── 连接本机 DM8,保存 DEM 自身数据
  │
  └── 接收本机 dmagent 上报的数据
                    │
                    └── 监控本机 DAMENG 数据库

2. 部署前检查

检查系统、资源和端口:

cat /etc/centos-release uname -m free -h df -h / ps -ef | grep '[d]mserver' ss -lntp | grep 5236 ss -lntp | grep -E ':(8080|8005|6363|6364)[[:space:]]'

3. 解压安装包

上传安装包:

/home/dmdba/software/dem911/dem_setup_20260825_x86_linux_64_9.1.1.zip

解压:

su - dmdba cd /home/dmdba/software/dem911 unzip dem_setup_20260825_x86_linux_64_9.1.1.zip -d setup

安装包中包含 DEM、Tomcat 9.0.113、OpenJDK 11.0.22、dem_init.sql 和 dmagent,以下使用包内组件进行 WAR 部署。

4. 初始化 DEM 存储库

连接本机数据库:

/home/dmdba/dmdbms/bin/disql SYSDBA/<数据库密码>@127.0.0.1:5236

执行初始化脚本:

SET DEFINE OFF; SET CHAR_CODE UTF8; START /home/dmdba/software/dem911/setup/source/resources/dem_init.sql

注意:这里的 START 后面不加分号。加上分号后,当前版本的 disql 会把分号当成文件名的一部分,报“无效的文件路径”。

初始化完成后验证:

SELECT COUNT(*) FROM DEM.ADMIN_USER;

5. 部署 DEM 服务

5.1 准备目录

将安装包中的 source 复制到 DEM 运行目录:

cp -a /home/dmdba/software/dem911/setup/source /home/dmdba/dmdem chown -R dmdba:dinstall /home/dmdba/dmdem

解压内置 Tomcat:

cd /home/dmdba/dmdem/server unzip apache-tomcat-9.0.113.zip cp -a apache-tomcat-9.0.113/. ./

部署并解压 dem.war:

cp /home/dmdba/dmdem/webapp/dem.war \ /home/dmdba/dmdem/server/webapps/dem.war mkdir -p /home/dmdba/dmdem/server/webapps/dem cd /home/dmdba/dmdem/server/webapps/dem unzip -q ../dem.war

5.2 配置 DEM 存储库连接

先备份配置文件:

cp -p /home/dmdba/dmdem/server/webapps/dem/WEB-INF/db.xml \ /home/dmdba/dmdem/server/webapps/dem/WEB-INF/db.xml.bak

修改 WEB-INF/db.xml:

<ConnectPool> <Url>jdbc:dm://127.0.0.1:5236?lobFetchOptimize=true</Url> <User>SYSDBA</User> <Password>数据库密码</Password> </ConnectPool>

db.xml 中保存了数据库密码,限制文件权限:

chmod 600 /home/dmdba/dmdem/server/webapps/dem/WEB-INF/db.xml chown dmdba:dinstall /home/dmdba/dmdem/server/webapps/dem/WEB-INF/db.xml

5.3 调整 Tomcat 上传限制

备份并修改 server.xml:

cp -p /home/dmdba/dmdem/server/conf/server.xml \ /home/dmdba/dmdem/server/conf/server.xml.bak

在 8080 的 Connector 中增加 maxPostSize="-1":

<Connector port="8080" protocol="HTTP/1.1" maxPostSize="-1" connectionTimeout="20000" redirectPort="8443" />

5.4 启动并验证

su - dmdba -c '/home/dmdba/dmdem/bin/start.sh' ss -lntp | grep 8080 curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8080/dem/ tail -100 /home/dmdba/dmdem/server/logs/catalina.out

浏览器访问:

http://192.168.248.130:8080/dem/

初始化后的登录账号为 admin/888888,登录后修改默认密码。

6. 部署 dmagent

6.1 解压 dmagent

mkdir -p /home/dmdba/dmdem/agent unzip -q /home/dmdba/dmdem/resources/agent/dmagent-9.1.1.zip \ -d /home/dmdba/dmdem/agent chown -R dmdba:dinstall /home/dmdba/dmdem/agent chmod +x /home/dmdba/dmdem/agent/*.sh

6.2 修改 agent.ini

cp -p /home/dmdba/dmdem/agent/agent.ini \ /home/dmdba/dmdem/agent/agent.ini.bak

修改以下参数:

center_url = http://192.168.248.130:8080/dem ip_list = [192.168.248.130] dm_bin_path = /home/dmdba/dmdbms/bin service_enable = true gather_enable = true

几个参数的作用:

参数 作用
center_url dmagent 向哪个 DEM 上报数据
ip_list 本机需要登记到 DEM 的 IP
dm_bin_path DM 命令和动态库所在目录
gather_enable 开启主机、数据库等信息采集
service_enable 开启远程服务插件

6.3 调整 Agent 内存

本版本 start.sh 中默认值为:

JAVA_MEM_OPTS="-Xms6g -Xmx6g"

虚拟机只有约 3 GB 内存,不能使用该默认值,改为:

JAVA_MEM_OPTS="-Xms256m -Xmx512m"

6.4 配置 service_key

DEM 存储库和 dmagent 的 service_key 必须一致。下面统一使用自定义值表示,不在文档中记录实际密钥。

DEM 库中设置:

UPDATE DEM.ADMIN_CONFIG SET VAL = '<自定义 service_key>' WHERE NAME = 'service_key'; COMMIT;

Agent 端生成密钥文件:

cd /home/dmdba/dmdem/agent ./start.sh INSTALL_SERVICE_KEY '<自定义 service_key>'

生成文件:

/home/dmdba/dmdem/agent/service.key

两端配置完成后,重启 DEM 和 dmagent。

6.5 注册系统服务

先用进程方式启动,确认配置没有问题:

su - dmdba -c \ 'cd /home/dmdba/dmdem/agent && ./start.sh -d /home/dmdba/dmdem/agent/agent.ini'

确认 6363、6364 正常监听。停止刚才的测试进程,再由 root 注册服务:

cd /home/dmdba/dmdem/agent ./service.sh install

按提示填写:

agent home:/home/dmdba/dmdem/agent
agent.ini:/home/dmdba/dmdem/agent/agent.ini
service user:dmdba

启动和检查:

./service.sh start ./service.sh status ss -lntp | grep -E ':(6363|6364)[[:space:]]'

7. 添加本机数据库监控

dmagent 启动后,DEM 首页出现主机 192.168.248.130。

进入:

监控 → 数据库 → 添加

集群类型选择 DB(单实例),再手动添加实例:

04添加单实例数据库监控.png

填写内容:

项目 值
类型 DB
主机 192.168.248.130
端口 5236
用户 SYSDBA
名称 DAMENG

填写完成后先点“测试”,再保存实例和外层单实例配置。刚保存时状态显示“未知”,大约一分钟后刷新,状态恢复正常。

监控结果:

数据库数量:1
连接状态:正常
实例状态:OPEN
模式:NORMAL
主机数量:1

8. 启停和检查

DEM 启动:

su - dmdba -c '/home/dmdba/dmdem/bin/start.sh'

DEM 停止:

su - dmdba -c '/home/dmdba/dmdem/bin/stop.sh'

dmagent:

cd /home/dmdba/dmdem/agent ./service.sh start ./service.sh stop ./service.sh restart ./service.sh status

常用检查:

ps -ef | grep '[j]ava' ss -lntp | grep -E ':(8080|6363|6364)[[:space:]]' curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8080/dem/ tail -100 /home/dmdba/dmdem/server/logs/catalina.out

启动顺序:

DM8 存储库 → DEM → dmagent

停止时顺序相反。

9. 参考资料

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服