(10)达梦DMMPP分析型大规模数据处理集群 环境部署实践

本文详述了在Linux环境下部署达梦DMMPP大规模并行集群的步骤,包括集群规划、环境配置、数据库初始化、MPP集群配置、服务注册以及客户端验证。通过6个阶段实现DMMPP集群的搭建,并提供了集群启停和客户端连接的操作指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在上一篇博客里面我们对达梦数据库的达梦DMMPP大规模并行集群进行了理论学习。本篇技术分享文章是基于Linux下达梦DMMPP大规模并行集群集群的动手实践部署过程。

 

一、集群规划

1.1基础环境介绍

硬件:两台相同配置虚拟机,2G 内存,5G本地磁盘,2块网卡。

操作系统:CentOS 8 Linux 64位。

DM 各种工具位于目录:/dm8/dmdbms/bin。

已经部署DM8企业版数据库软件。数据库软件部署及环境配置操作可以参考之前的单机部署博客。

1.2本地目录规划

用途

目录路径

备注

数据库软件安装目录

/dm8/dmdbms

建议可用空间>5 GB

实例安装目录

/dmdata

建议单独挂载磁盘

本地归档日志存放目录

/dmarch

建议单独挂载磁盘

备份文件存放目录

/dmbak

建议单独挂载磁盘

1.3网络和端口规划

搭建 2 节点MPP集群,端口规划如下:(实际中可以按需要修改端口号)

主机名

public ip

private ip

实例名

端口

用途

dsc1

192.168.1.9

192.168.10.9

mpp1

5236

数据库实例 mpp1监听端口

7236

MAL 系统监听 TCP 连接的端口

dsc2

192.168.1.10

192.168.10.10

mpp2

5236

数据库实例mpp2监听端口

7236

MAL 系统监听 TCP 连接的端口

二、集群环境部署操作实践

达梦大规模并行处理MPP(DM Massively Parallel Processing,缩写DM MPP)是基于达梦数据库管理系统研发的完全对等无共享式集群组件,支持将多个DM数据库实例组织为一个并行计算网络,对外提供统一的数据库服务。本次实践以2节点mpp为示例。整个安装部署过程大致分为 6个大的步骤:

步骤1、数据库安装与初始化

数据库软件安装详见之前分享博客内容。

软件安装目录为 /dm8/dmdbms,实例初始化目录/dmdata/dmmpp,初始化脚本如下:

./dminit path=/dmdata unicode_flag=1 sysdba_pwd=1234567890 db_name=dmmpp page_size=32

dsc 1

dsc 2

步骤2、MPP集群配置文件修改与新建

2.1配置实例的配置文件 dm.ini

修改实例的 dm.ini 文件参数,执行以下命令:vi /dmdata/dmmpp/dm.ini

dsc1节点的dmmpp1 实例修改以下参数值:

INSTANCE_NAME = dmmpp1

MAL_INI = 1

MPP_INI = 1

dsc2 节点 的dmmpp2 实例修改以下参数值:

INSTANCE_NAME = dmmpp2

MAL_INI = 1

MPP_INI = 1

2.2配置MAL系统配置文件dmmal.ini

执行以下命令,在实例目录下新建文件 dmmal.ini:

vi /dmdata/dmmpp/dmmal.ini  ###所有节点文件内容要相同。

MAL_CHECK_INTERVAL   = 5  #MAL 链路检测时间间隔
MAL_CONN_FAIL_INTERVAL  = 5  #判定 MAL 链路断开的时间
[MAL_INST1]
  MAL_INST_NAME = dmmpp1 #与 dm.ini 中的 INSTANCE_NAME 一致
  MAL_HOST     = 192.168.10.9  #MAL 系统监听 TCP 内部网络 IP
  MAL_PORT     = 7236 #MAL 系统监听 TCP 连接的端口
  MAL_INST_HOST   = 192.168.1.9  #实例的对外服务 IP 地址
  MAL_INST_PORT   = 5236 #与 dm.ini 中的 PORT_NUM 一致
[MAL_INST2]
  MAL_INST_NAME = dmmpp2 #与 dm.ini 中的 INSTANCE_NAME 一致
  MAL_HOST      = 192.168.10.10  # MAL 系统监听 TCP 内部网络 IP
  MAL_PORT          = 7236 #MAL 系统监听 TCP 连接的端口
  MAL_INST_HOST         = 192.168.1.10  #实例的对外服务 IP 地址
  MAL_INST_PORT         = 5236 #与 dm.ini 中的 PORT_NUM 一致

2.3配置 MPP 控制文件 dmmpp.ctl

在其中一个节点新建 dmmpp.ini 配置文件,此次部署是在dsc1节点执行以下命令:

vi /dmdata/dmmpp/dmmpp.ini   #添加以下内容:

[SERVICE_NAME1]
 MPP_SEQ_NO = 0
 MPP_INST_NAME = dmmpp1
[SERVICE_NAME2]
 MPP_SEQ_NO = 1
 MPP_INST_NAME = dmmpp2

使用 dmctlcvt 工具将 dmmpp.ini 文件转化为 dmmpp.ctl,在数据库安装的 bin 目录下执行以下命令:

./dmctlcvt TYPE=2 SRC=/dmdata/dmmpp/dmmpp.ini DEST=/dmdata/dmmpp/dmmpp.ctl

将生成的 dmmpp.ctl 控制文件复制到另一个节点的实例目录下。

scp -r /dmdata/dmmpp/dmmpp.ctl dmdba@192.168.1.10:/dmdata/dmmpp/

dsc1

dsc2

步骤4、MPP集群数据启动

正常启动实例即可,在数据库安装的 bin 目录下执行以下命令:

./dmserver /dmdata/dmmpp/dm.ini

dsc1

dsc2

需要所有节点都启动后,集群才能访问。

成功拉起后,初步完成DMMPP集群搭建。

最后,可登录disql,查询验证集群和各节点信息。

步骤5、注册DMMPP服务

在确认配置正常后需要注册为系统服务,方便启动和关闭集群以及实现开机自动启动。

root 用户下切换到 /dm8/dmdbms/script/root/,执行以下命令:

cd /dm8/dmdbms/script/root/ 

脚本注册服务,执行以下命令:

./dm_service_installer.sh -t dmserver -p dmmpp -dm_ini /dmdata/dmmpp/dm.ini

dsc1

dsc2

以服务方式启动实例,执行以下命令:

systemctl start DmServicedmmpp

步骤6、客户端验证

任意节点配置 dm_svc.conf 文件,执行以下命令:

vi /etc/dm_svc.conf,添加以下内容:

dmmpp=(192.168.1.9:5236,192.168.1.10:5236)

使用 disql 工具登录任意节点。(数据库安装目录的 bin 下):

./disql SYSDBA/1234567890@dmmpp

查询可以看到所有节点实例信息。

select instance_name from v$instance;

此外,对于生产环境来说,开归档、配置服务名(DM_SVC.CONF)以及做好数据的备份规划配置是非常有必要的。

三、部署小结

本文首先介绍了达梦数据库DSC集群安装前的部署规划相关工作;然后,进行了DMMPP集群的安装部署操作实践,整个安装部署大体上分为 数据库安装与初始化、MPP集群配置文件修改与新建、MPP集群启动验证、集群启动注册服务及客户端登录验证这6个大的阶段步骤。本文的最后,简要介绍了集群管理相关内容和客户端连接MPP集群相关内容供大家学习过程中的练习参考。

以上是这次技术分享的相关内容,欢迎给我留言进行交流指导。

附:

1、集群启停管理操作

重启集群

所有节点重启实例,执行以下命令:

systemctl restart DmServicedmmpp

dsc1

dsc2

关闭集群

systemctl stop DmServicedmmpp

dsc1

dsc2

2、客户端连接集群

客户端主机上需要配置 dm_svc.conf 文件(未安装 DM 数据库的机器新建即可),文件路径:

32 位的 DM 安装在 Win32 操作平台下,此文件位于 %SystemRoot%\system32 目录;

64 位的 DM 安装在 Win64 操作平台下,此文件位于 %SystemRoot%\system32 目录;

32 位的 DM 安装在 Win64 操作平台下,此文件位于 %SystemRoot%\SysWOW64 目录;

在 Linux 平台下,此文件位于/etc 目录。

文件内容:

# 以#开头的行表示是注释

# 全局配置区

DMMPP=(192.168.1.9:5236,192.168.1.10:5236)

TIME_ZONE=(+480) #表示+8:00 时区

LOGIN_ENCRYPT=(0)

DIRECT=(Y)

# 服务配置区

[DMMPP]

TIME_ZONE=(+540) #表示+9:00 时区

LOGIN_MODE=(2)

SWITCH_TIME=(3) #在服务器之间切换的次数

SWITCH_INTERVAL=(10) #在服务器之间切换的时间间隔,单位为毫秒

客户端程序连接数据库时,需要指定 IP 端口处替换为服务名即可,例如:

disql SYSDBA/1234567890@DMMPP

DM 武汉达梦数据库股份有限公司 24小时免费服务热线:400 991 6599

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值