# 套件版安装
文档中基于MySQL数据库进行产品安装介绍。
# 安装介质说明和准备
主数据套件版安装介质中包括AFcenter、低开(Lowcode)、流程(BPS)、主数据(MDM)、数据质量(QUALITY)、数据标准(DAMP)、数据开发(DWS)组件,以及相关的调度、执行组件,包括:DolphinScheduler、Primeton DI、SeaTunnel、数据质量Executor。
组件兼容性说明:
数据标准(DAMP)未支持SQL Server数据库,因此主数据套件版不建议使用SQL Server数据库。
套件版安装介质目录如下:
Primeton_MDM_7.3.0_Standalone
├── clearLog.cmd
├── clearLog.sh
├── server
│ ├── mdm
│ │ ├── bin //启动脚本
│ │ ├── config
│ │ ├── data
│ │ ├── dataCheck
│ │ ├── db-scripts
│ │ ├── fdm
│ │ ├── lib
│ │ ├── logs
│ │ ├── mdm-standalone-7.3.0-exec.jar //主数据程序,已包括低开、流程、数据质量、数据标准、数据开发组件
│ │ ├── similarity
│ │ ├── template
│ │ ├── template-file
│ │ ├── thymeleaf
│ │ └── version.properties
│ └── pubresmng_ext_lib
├── service
│ ├── dolphin // DolphinScheduler安装目录
│ ├── executor // 执行器安装目录
│ ├── primeton-di // DI安装目录
│ └── seatunnel // SeaTunnel安装目录
├── shutdown.cmd
├── shutdown.sh
├── startup.cmd
├── startup.sh
└── web
├── afcenter
│ ├── assets
│ ├── bfp
│ ├── components
│ ├── config
│ ├── ext
│ ├── formDesigner
│ ├── ide
│ ├── index.html
│ ├── jobsch
│ ├── mdm //主数据前端资源
│ ├── portal
│ ├── prjdevide //数据开发前端资源
│ ├── prjdevui //数据开发前端资源
│ ├── pubresmng //公共资源前端资源
│ ├── quality //数据质量前端资源
│ ├── remoteEntry.js
│ ├── sqlclient
│ ├── standard //数据标准前端资源
│ ├── static
│ ├── taskcenter
│ ├── version.properties
│ └── widget
└── conf
├── mdm-macos.conf
└── mdm.conf
# 检查授权证书
检查Primeton_MDM_7.3.0_Standalone/server/mdm/config/MDM/license目录下primetonlicense.xml文件是否在有效期内。如果超过有效期,请通过售后申请。
注意:查看primetonlicense.xml的有效期,可以查看expiration标签对应的时间。
# 数据库初始化
如果执行的是mysql的脚本,请在执行脚本之前将数据库设置不区分表名大小写。
# 创建数据库
创建mdm、mdm_pub和dolphin_scheduler三个数据库。执行如下脚本:
CREATE DATABASE `mdm` DEFAULT CHARACTER SET utf8mb4;
CREATE DATABASE `mdm_pub` DEFAULT CHARACTER SET utf8mb4;
CREATE DATABASE `dolphin_scheduler` DEFAULT CHARACTER SET utf8mb4;
# 执行初始化脚本
套件版介质安装时需要按顺序执行EOS、AFCenter、lowcode、bfp、bps、damp、dws、message、public-resource、quality、taskcenter、MDM的数据库初始化脚本。
初始化脚本路径为:Primeton_MDM_7.3.0_Standalone/server/mdm/db-scripts。
- mdm数据库初始化,可以按如下两种方式执行脚本(两种方式选择其一即可):
# 一步执行:
all/mysql/mdm-all.sql
# --------------------------------
# 分步执行:
single/eos/Mysql/all.sql
single/afcenter/Mysql/all.sql
single/lowcode/Mysql/all.sql
single/bps/mysql/all.sql
single/bfp-framework/Mysql/all.sql
single/bfp-message/Mysql/all.sql
single/bfp-task/Mysql/all.sql
single/bfp-config/Mysql/all.sql
single/damp/Mysql/all.sql
single/dws/Mysql/all.sql
single/message/Mysql/all.sql
single/public-resource/Mysql/00-afc-table.sql
single/public-resource/Mysql/01-afc-data.sql
single/quality/Mysql/all.sql
single/mdm/mysql/00-mdm-afc-data.sql
single/mdm/mysql/10-mdm-ddl.sql
single/mdm/mysql/11-mdm-data.sql
single/mdm/mysql/40-mdm-dws-data.sql
single/mdm/mysql/00-mdm-standalone-data.sql
- mdm_pub数据库初始化,执行如下脚本:
all/mysql/mdmpub-all.sql
- dolphin_scheduler数据库初始化,执行如下脚本:
初始化脚本路径为:Primeton_MDM_7.3.0_Standalone/service/dolphin/sql-scripts/init
dolphinscheduler_mysql.sql
初始化脚本路径为:Primeton_MDM_7.3.0_Standalone/server/mdm/db-scripts
single/mdm/mysql/41-mdm-dws-ds-data.sql
# 检查驱动
检查server/mdm/lib目录下包含使用的数据库对应的驱动, 默认支持的数据库驱动及版本如下:
数据库厂商 | 驱动名 | 版本 |
---|---|---|
MySQL | mysql-connector-java | 8.0.17 |
Oracle | ojdbc8 | 19.3.0.0 |
Dameng | DmJdbcDriver18 | 8.1.1.193 |
openGauss | opengauss-jdbc | 3.0.0 |
SQL Server | sqljdbc4 | 4.0 |
KingbaseES | kingbase8 | 8.6.0 |
PostgreSQL | postgresql | 42.3.8 |
# 主数据后端修改配置文件
后端地址为:Primeton_MDM_7.3.0_Standalone/server/mdm
# 1.数据库配置文件:config/MDM/config/user-config.xml
修改default与MDM_PUB配置:驱动DriverClass、Url、UserName、Password,以MySQL为例配置如下:
<group name="default">
<configValue key="Database-Type">MySql</configValue># db类型
<configValue key="Jdbc-Type"/>
<configValue key="C3p0-DriverClass">com.mysql.cj.jdbc.Driver</configValue>#db驱动
<configValue key="C3p0-Url">jdbc:驱动类型://IP:端口Port/mdm?useSSL=false</configValue>
<configValue key="C3p0-UserName">用户名</configValue>
<configValue key="C3p0-Password">密码</configValue>
<configValue key="C3p0-PoolSize">5</configValue>
<configValue key="C3p0-MaxPoolSize">30</configValue>
<configValue key="C3p0-MinPoolSize">5</configValue>
</group>
<group name="MDM_PUB">
<configValue key="Database-Type">MySql</configValue># db类型
<configValue key="Jdbc-Type"/>
<configValue key="C3p0-DriverClass">com.mysql.cj.jdbc.Driver</configValue>#db驱动
<configValue key="C3p0-Url">jdbc:驱动类型://IP:端口Port/库db/mdm_pub?useSSL=false</configValue>
<configValue key="C3p0-UserName">用户名</configValue>
<configValue key="C3p0-Password">密码</configValue>
<configValue key="C3p0-PoolSize">5</configValue>
<configValue key="C3p0-MaxPoolSize">30</configValue>
<configValue key="C3p0-MinPoolSize">5</configValue>
</group>
其他数据的DriverClass、Url配置可以参考配置说明中的数据源配置示例。
# 2.主数据配置文件:config/application.properties
# --------------------------------------配置案例---------------------------------------------------
# 如果要更改端口,则修改
server.port=xxx
# 根据数据库具体类型,将对应的配置打开,同时关闭其余类型配置
## Database Dialect (@see user-config.xml[DataSource:default])
# 例如如果数据库类型为mysql,则打开如下配置,同时关闭其余类型配置
## MySQL
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL8Dialect
# 例如如果数据库类型为oracle,则打开如下配置,同时关闭其余类型配置
## Oracle
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
spring.jpa.hibernate.naming.physical-strategy=org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
# 3.配置文件:config/application-dqms.properties
## 根据使用的数据库类型填写对应的值
# OpenGuass,postgresql,kingbase dialect use postgresql
pagehelper.helperDialect=mysql
## 调度器地址,默认为afc地址
xxl.job.admin.addresses=http://127.0.0.1:28083
# 执行器后端修改配置文件
后端地址为:Primeton_MDM_7.3.0_Standalone/service/executor
# 1.执行器配置文件:config/application.properties
- 使用的数据库为主数据部署使用的数据库
# 执行器后端地址
server.port=28092
# 根据数据源配置类型,更换相对应的数据库类型
# mysql,oracle,dm,opengauss,PostgreSQL(KingbaseES,HighGo)
mybatis.configuration.database-id=mysql
# 数据源url配置(必须修改的配置)
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mdm?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2b8
# 数据源账号配置(必须修改的配置)
spring.datasource.username=root
# 数据源密码配置(必须修改的配置)
spring.datasource.password=root
# 数据源驱动类型配置(必须修改的配置)
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# For standalone version, use default port 28091. For microapp version, use default port of afcenter 28083.
# 执行器注册到afcenter中调度器的地址,也就是afcenter项目的url配置,套件版的主数据项目默认配置为主数据后端url(可以根据主数据库后端配置文件application.properties中server.port配置对照修改)
afc.server.url=http://127.0.0.1:28083
# 数据源类型分页配置,根据具体的数据库类型进行配置
pagehelper.helperDialect=mysql
# 执行器注册到afcenter调度器上的端口号
xxl.job.executor.port=28094
# dolphin后端修改配置文件
后端地址为:Primeton_MDM_7.3.0_Standalone/service/dolphin/bin/env
# 1.dolphin配置文件:dolphinscheduler_env.sh
#---------------------------------------可按需修改------------------------------------------
# 数据源类型(必须修改的配置)
# Database related configuration, set database type, username and password
export DATABASE=${DATABASE:-mysql}
# support database: DM,h2,mysql,gaussDB,Oracle,postgresql,SqlServer
export SPRING_PROFILES_ACTIVE=${DATABASE}
# 数据源url配置(必须修改的配置)
export SPRING_DATASOURCE_URL="jdbc:mysql://127.0.0.1:3306/dolphinscheduler?serverTimezone=Asia/Shanghai&useSSL=false&useUnicode=true&characterEncoding=UTF-8"
# 数据源账号配置(必须修改的配置)
export SPRING_DATASOURCE_USERNAME="root"
# 数据源密码配置(必须修改的配置)
export SPRING_DATASOURCE_PASSWORD="primeton"
# Primeton_MDM_7.3.0_Standalone/service/primeton-di/diclient地址配置(必须修改的配置,建议修改为绝对路径地址)
export PDI_HOME=${PDI_HOME:-/opt/soft/diserver}
# Primeton_MDM_7.3.0_Standalone/service/seatunnel地址配置(必须修改的配置,建议修改为绝对路径地址)
export SEATUNNEL_HOME=${SEATUNNEL_HOME:-/opt/soft/seatunnel}
# 前端配置
nginx网关配置server,前端静态资源、afc、mdm
worker_processes 1;
events {
worker_connections 1024;
}
http {
include /etc/nginx/mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
upstream eosapp {
server 127.0.0.1:28090; #主数据后端url地址
}
server {
listen 80; #主数据前端端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 600s;
proxy_send_timeout 600s;
proxy_read_timeout 600s;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_http_version 1.1;
client_max_body_size 200m;
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1";
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Permitted-Cross-Domain-Policies "master-only";
add_header X-Download-Options noopen;
add_header Content-Security-Policy "script-src * 'unsafe-inline' 'unsafe-eval'";
add_header Strict-Transport-Security "max-age=SECONDS";
add_header Referrer-Policy "no-referrer" always;
location ^~/api/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://eosapp;
}
location ~/(.*)/api/ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
rewrite ^/(.*)/api/(.*)$ /api/$2 break;
proxy_pass http://eosapp;
}
location ~ \.biz\.ext$ {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Real-Port $remote_port;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://eosapp;
}
location / {
root /opt/idc/apps/mdm/web/afcenter; #主数据前端资源地址
index index.html index.htm;
try_files $uri /index.html;
if ($request_filename ~* \.(?:htm|html)$) {
add_header Cache-Control "private, no-store, no-cache, must-revalidate, proxy-revalidate";
}
}
}
}
# 启动服务
- linux:
1.主数据后端执行脚本:Primeton_MDM_7.3.0_Standalone/server/mdm/bin/startup.sh,查看日志mdm/logs/eos-trace.log,检查启动过程是否有错误信息。
2.执行器后端执行脚本:Primeton_MDM_7.3.0_Standalone/service/executor/bin/startup.sh,查看日志executor/logs/executor.log,检查启动过程是否有错误信息。
3.dolphin执行脚本:Primeton_MDM_7.3.0_Standalone/service/dolphin/start-standalone.sh,查看日志dolphin/standalone-server/logs/dolphinscheduler-standalone.log,检查启动过程是否有错误信息。
4.primeton-di执行脚本:Primeton_MDM_7.3.0_Standalone/service/primeton-di/start-standalone.sh,查看日志primeton-di/diserver/logs/di_server.log,检查启动过程是否有错误信息。
5.seatunnel执行脚本:Primeton_MDM_7.3.0_Standalone/service/seatunnel/start-standalone.sh,查看日志seatunnel/logs/seatunnel-engine-server.log,检查启动过程是否有错误信息。
6.访问http://<ip>:<port>
,检查页面是否能够正常显示和登录。
# 环境登录和验证
1.进入[组织中心]->[机构管理]菜单,在“全部员工”中选择“admin”。
2.在弹出窗口中,选择“角色设置”,点击“添加角色”按钮,为admin用户添加“主数据管理员”角色。
3.刷新页面,导航栏增加菜单【主数据】,点击即可进入主数据首页
# AFCenter 8.3.3 补丁说明
AFCenter 8.3.3 发布以来已经发布了数个补丁,主数据套件版已安装的补丁可以在Primeton_MDM_7.3.0_Standalone/server/mdm/lib/eos_patch/eos_patch.txt中具体查看
注意:如果需要其他补丁,请从
cservice@primeton.com
申请。