首页 > 数据库 > 国内数据库 > 达梦DEM部署主备守护集群
说明:为节省系统资源,快速部署测试环境,使用Centos+docker进行部署。
系统环境:CentOS_7 + Docker
数据库版本:dm8_20210712_x86_rh6_64_ent_8.1.2.38_pack1
网络规划:
172.18.0.10 CRM1
172.18.0.11 CRM2
172.18.0.40 DEM
制作Docker镜像dem为DEM节点(Centos+JDK+dm8+web)
制作Docker镜像crm1为CRM1节点(Centos+JDK)
制作Docker镜像crm2为CRM2节点(Centos+JDK)
系统路径规划
|
|
Linux系统目录 |
映射Docker内路径 |
说明 |
|
1 |
/dem/data |
dem:/dm8/data |
数据库文件目录 |
|
2 |
/dem/archlog |
dem:/dm8/archlog |
归档目录 |
|
3 |
/dem/backup |
dem:/dm8/backup |
数据库备份目录 |
|
4 |
/home/config/dem |
dem:/dm8/config |
准备的参数文件目录 |
|
5 |
/crm1 |
crm1:/dm8 |
crm1节点数据库主目录 |
|
6 |
/crm2 |
crm2:/dm8 |
crm2节点数据库主目录 |
/home/config 目录下包含以下文件:
|
|
../dem |
dem容器使用 |
|
|
1 |
|
dem_dm.ini |
dem库初始化.ini |
|
2 |
|
dem_dmarch.ini |
dem库arch.ini |
|
3 |
|
dem_init.sql |
dem库初始化sql |
|
4 |
|
agent.ini |
客户端ini |
|
5 |
|
../mkdocker |
dem镜像制作目录 |
|
6 |
|
../tomcat |
包含dem.war的web服务 |
|
|
../client |
crm1/crm2容器使用 |
|
|
7 |
|
../dmagent |
挂载客户端软件目录 |
|
8 |
|
../mkdocker |
crm1/crm2镜像制作目录 |
1、制作镜像
|
#在docker hub下载JDK镜像作为基础镜像 docker load -i openjdk-8u265.tar cd /home/config/dem/mkdocker docker build -t dem_dm8:v01 .
|
2、启动DEM容器
|
#创建内网网段 docker network ls docker network create --subnet=172.18.0.0/16 mynetwork #启动镜像 docker run -it -p 5236:5236 -p 8080:8080 --name dem --hostname DEM --net mynetwork --ip 172.18.0.40 -v /home/config/dem:/dm8/config -v /dem/data:/dm8/data -v /dem/archlog:/dm8/archlog -v /dem/backup:/dm8/backup -v /dem/tomcat:/usr/local/tomcat -d dem_dm8:v01 /bin/bash
|
3、数据库初始化
|
#进入容器 docker exec -it dem bash chown dmdba:dinstall -R /dm8/data /dm8/archlog /dm8/backup /dm8/config
#初始化数据库 su - dmdba cd /dm8/bin ./dminit CONTROL=/dm8/config/dem_dm.ini cp -if /dm8/config/dem_dmarch.ini /dm8/data/dem/dmarch.ini
#root用户注册服务并启动 cd /dm8/script/root ./dm_service_installer.sh -t dmserver -p DEM -dm_ini /dm8/data/dem/dm.ini /etc/init.d/DmServiceDEM start /dm8/bin/DmAPService start
#DEM初始化脚本 su - dmdba /dm8/bin/disql SYSDBA/SYSDBA set CHAR_CODE UTF8; start /dm8/config/dem_init.sql
|
4、启动tomcat,启动dmagent
|
#启动tomcat(配置WEB-INF/db.xml中数据库IP和密码) sh /usr/local/tomcat/bin/startup.sh
#启动dmagent cp /dm8/config/agent.ini /dm8/tool/dmagent/ sh /dm8/tool/dmagent/start.sh -d /dm8/tool/dmagent/agent.ini
|
5、登录DEM平台
1、创建普通节点镜像(OS+JDK)
|
#创建节点镜像 cd /home/config/client/mkdocker docker build -t os_jdk:v01 .
#启动节点crm1容器 docker run -it -p 5237:7236 --name crm1 --hostname CRM1 --net mynetwork --ip 172.18.0.10 -v /home/config/client/dmagent:/dm8/config/dmagent -v /crm1:/dm8 -d os_jdk:v01 /bin/bash
#启动节点crm2容器 docker run -it -p 5238:7236 --name crm2 --hostname CRM2 --net mynetwork --ip 172.18.0.11 -v /home/config/client/dmagent:/dm8/config/dmagent -v /crm2:/dm8 -d os_jdk:v01 /bin/bash
|
2、启动dmagent客户端
|
#进入节点容器 docker exec -it crm1/crm2 bash chown dmdba:dinstall -R /dm8
#启动/管理dmagent客户端 sh /dm8/config/dmagent/start.sh -d /dm8/config/dmagent/agent.ini sh /dm8/config/dmagent/start.sh --list sh /dm8/config/dmagent/start.sh isql /dm8/config/dmagent/agent.ini
|
登录达梦数据库企业管理系统,右侧客户端管理工具-->右键点击[集群部署] -->新建部署

选择实时主备集群,点击下一步

准备集群环境,修改实例参数,包括修改服务名配置,工作目录路径,实例名等等。



配置数据库相关参数,修改dm.ini,dmmal.ini,dmarch.ini,dmwatch.ini等配置文件。


配置监视器,使用dem节点部署主备集群的监视器。

上传dm8数据库安装软件包

生成部署情况,详情总览

开始进行安装

安装完成后可以点击[添加到监控]将集群自动添加到监控列表。

附件
Dockerfile
FROM openjdk:8u265-jdk
ADD ./DMInstall.bin /opt/
ADD ./dminstall.xml /opt/
ADD ./99-dmdba-limits.conf /etc/security/limits.d/
RUN rm -rf /etc/localtime \
&& ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime \
&& groupadd dinstall \
&& useradd -g dinstall -ms /bin/bash dmdba \
&& mkdir /dm8 \
&& chown dmdba:dinstall /dm8
USER dmdba
ENV DM_HOME=/dm8
ENV LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$DM_HOME/bin
RUN /opt/DMInstall.bin -q /opt/dminstall.xml
USER root
RUN rm -rf /opt/*
WORKDIR /
dminstall.xml
<?xml version="1.0"?>
<DATABASE>
<!-- 安装数据库的语言配置,安装中文版配置ZH,英文版配置EN,不区分大小写。不允许为空 -->
<LANGUAGE>EN</LANGUAGE>
<!-- 安装程序的时区配置,默认值为+08:00,范围:-12:59 ~ +14:00 -->
<TIME_ZONE>+08:00</TIME_ZONE>
<!-- key 文件路径 -->
<KEY></KEY>
<!-- 安装程序组件类型,取值0、1、2,0 表示安装全部,1 表示安装服务器,2 表示安装客户端 。默认为0 -->
<INSTALL_TYPE>0</INSTALL_TYPE>
<!-- 安装路径,不允许为空 -->
<INSTALL_PATH>/dm8</INSTALL_PATH>
<!-- 是否初始化库,取值Y/N、y/n,不允许为空 -->
<INIT_DB>N</INIT_DB>
</DATABASE>
99-dmdba-limits.conf
dmdba soft nproc 10240
dmdba hard nproc 10240
dmdba soft nofile 65536
dmdba hard nofile 65536
dmdba hard data unlimited
dmdba soft data unlimited
dmdba hard fsize unlimited
dmdba soft fsize unlimited
dmdba soft core unlimited
dmdba hard core unlimited
dmdba soft stack 65536
dmdba hard stack 65536
社区地址:https://eco.dameng.com
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70015510/viewspace-2886387/ ,如需转载,请注明出处,否则将追究法律责任。