# 独立版安装

文档中以 MySQL 数据安装为示例进行安装。

# 第一步:安装介质准备

独立版本:

1.数据资产独立版:Primeton_DAMP_7.3_GA_Standaloen.tar.gz(包含DAMP前后端和服务引擎,必须)
2.Nginx:推荐使用1.20.1版本。(必须)
3.Redis:推荐使用6.2.6版本。(必须)
4.ElasticSearch:推荐使用7.17.9版本。支持6.8.11和8.1.2版本。(必须)
5.JDK:推荐使用Oracle JDK1.8.0_162。(必须)
6.filebeat:使用ElasticSearch配套的7.17.9版本。(服务日志采集组件,可选)
7.logstash:使用ElasticSearch配套的7.17.9版本。(服务日志采集组件,可选)
8.MetaCube:元数据7.5GA版本(必须)自行安装
    Primeton_MetaCube_7.5GA_Extractor.tar
    Primeton_MetaCube_7.5GA_Server.tar
    Primeton_MetaCube_7.5GA_UI.tar

# 第二步:数据库初始化

# 创建数据库用户/Schema

创建 damp 数据库。以Mysql为例,执行如下脚本:

CREATE DATABASE `damp` DEFAULT CHARACTER SET utf8mb4;

# 执行初始化脚本

对应数据库的数据库初始化脚本。初始化脚本路径为 Primeton_DAMP_7.3_GA_Standalone/server/damp/db-scripts。 根据不同数据库类型做了不同的目录。目前已经适配的数据库包括MySQL 5.7.25+,达梦8,人大金仓V8R6,高斯openGauss5.0.0

目前数据库脚本一共分成了6部分,分别是afcenter、bps、bfp、eos、damp和public-resouce。7.3版本去掉了低开模块,新增了公共资源模块。 其中afcenter、bps、bfp、eos、public-resource和damp都需要在damp库中做初始化,默认执行每个文件夹中的all.sql即可。 也可执行all文件夹中的all.sql全量脚本。

注:mysql脚本中附带了元数据平台脚本。其他数据库类型,请自行初始化元数据平台

以Mysql为例,按顺序执行如下脚本:

1)在damp数据库下执行:

1.all
db-scripts/all/Mysql/all.sql

# 修改配置文件

# 后端配置

数据资产后端配置文件如下:

1.server/damp/config/application.properties #公共配置
2.server/damp/config/application-afc.properties #afcenter集成配置
3.server/damp/config/application-bps.properties #bps集成配置
4.server/damp/config/application-damp.properties #damp自身配置
5.server/damp/config/application-nacos.properties #nacos注册中心配置
6.server/damp/config/bootstrap.properties #nacos配置中心配置
7.server/damp/config/DAMP/config/user-config.xml #damp数据源配置
8.server/damp/config/application-dm.properties #7.2版本新增,用于建模模块配置
9.server/dataengineprod/config/application.properties #服务引擎生产节点配置
10.server/dataenginedev/config/application.properties #服务引擎测试节点配置
11.server/damp/config/application-job.properties #7.3版本新增,用于afc-xxl集成

1)公共配置:damp/config/application.properties

server.port=28084               ###可根据实际情况修改,注意端口冲突(初始化脚本中为28084,如修改端口请一并修改初始化SQL)
spring.application.name=DAMP    ###原则上不允许修改
server.servlet.session.timeout=PT120M
spring.session.store-type=none

server.app-server.accept-count=1000
server.app-server.max-connections=10000
server.app-server.max-threads=500
server.app-server.min-space-threads=50

#file upload
spring.servlet.multipart.max-file-size=100MB      ###文件上传大小限制,与nginx配套修改
spring.servlet.multipart.max-request-size=100MB   ###同上

#spring.profiles.active=eureka
spring.profiles.active=nacos,afc,bps,damp,dm

spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.mongo.MongoAutoConfiguration
management.endpoints.web.exposure.include=hystrix.stream,health,info,loggers,eos,mappings

out.config.folder=config

eos.application.sys-code=EOS-DEMO-SYS   ###EOS默认配置,可以不修改。如果在Governor中配置需要根据配置情况修改
eos.application.sys-key=dc6baaed30e541d78bb91274803d9432    ###同上
# eos environment: dev prod test
eos.profiles.active=dev

# eos-cache
eos.cache.mode=redis

spring.redis.host=127.0.0.1     ###修改redis对应ip,本机则不需要修改
spring.redis.port=6379          ###修改redis对应端口,默认端口不需要修改
spring.redis.password=          ###如果redis开启认证则需要配置密码
spring.redis.lettuce.pool.max-active=100
spring.redis.lettuce.pool.max-idle=100
spring.redis.lettuce.pool.max-wait=5000

注:如修改application.properties 中应用端口请依次修改下面配置文件为同一端口 (application-afc.properties、、application-afc.properties、application-damp.properties、application-dm.properties)

2)afcenter集成配置:damp/config/application-afc.properties

3)bps集成配置:damp/config/application-bps.properties

4)damp自身配置:damp/config/application-damp.properties

5)注册中心配置:damp/config/application-nacos.properties

spring.cloud.nacos.discovery.enabled=true
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 ###根据实际情况修改
#spring.cloud.nacos.discovery.username=nacos
#spring.cloud.nacos.discovery.password=nacos

eureka.client.enabled=false

6)配置中心配置:damp/config/bootstrap.properties

spring.cloud.nacos.config.enabled=true
spring.cloud.nacos.config.server-addr=127.0.0.1:8848 ###根据实际情况修改
#spring.cloud.nacos.config.username=nacos
#spring.cloud.nacos.config.password=nacos

7)数据源配置:damp/config/DAMP/config/user-config.xml

    ...
    <group name="default">  ### 根据实际情况修改
        <configValue key="Database-Type">MySql</configValue>
        <configValue key="Jdbc-Type"/>
        <configValue key="C3p0-DriverClass">com.mysql.jdbc.Driver</configValue>
        <configValue key="C3p0-Url">jdbc:mysql://127.0.0.1:3306/damp?useUnicode=true&amp;characterEncoding=UTF-8&amp;serverTimezone=GMT%2B8&amp;useSSL=false</configValue>
        <configValue key="C3p0-UserName">username</configValue>
        <configValue key="C3p0-Password">password</configValue>### 明文密码,启动后会自动加密
        <configValue key="C3p0-PoolSize">10</configValue>
        <configValue key="C3p0-MaxPoolSize">50</configValue>
        <configValue key="C3p0-MinPoolSize">10</configValue>
        <configValue key="C3p0-MaxIdleTime">600</configValue>
        <configValue key="C3p0-IdleConnectionTestPeriod">900</configValue>
        <configValue key="C3p0-MaxStatements">0</configValue>
        <configValue key="C3p0-NumHelperThreads">1</configValue>
        <configValue key="Transaction-Isolation">ISOLATION_DEFAULT</configValue>
        <configValue key="Test-Connect-Sql">SELECT count(*) from EOS_UNIQUE_TABLE</configValue>
        <configValue key="Retry-Connect-Count">1</configValue>
    </group>
    ...

8)建模模块配置:damp/config/application-dm.properties

#jackson
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
spring.jackson.default-property-inclusion=non-null
spring.jackson.deserialization.fail-on-unknown-properties=false

#jpa
spring.jpa.open-in-view=false
spring.jpa.properties.javax.persistence.validation.mode=none
spring.jpa.hibernate.ddl-auto=none
spring.jpa.properties.hibernate.show_sql=true
spring.jpa.properties.hibernate.format_sql=true
spring.jpa.show-sql=false

## Database Dialect
## MySQL
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
## Oracle
# spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
## SQLServer
# spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.SQLServer2012Dialect
## Dameng
#spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.DmDialect
### GaussDB
#spring.jpa.database=postgresql
#spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQL9Dialect
#spring.jpa.properties.hibernate.temp.use_jdbc_metadata_defaults = false

#task
spring.task.scheduling.pool.size=5
spring.task.execution.pool.core-size=50
spring.task.execution.pool.max-size=100
spring.task.execution.pool.queue-capacity=100000

#file upload
spring.servlet.multipart.max-file-size=100MB
spring.servlet.multipart.max-request-size=100MB
spring.servlet.multipart.enabled=true
spring.servlet.multipart.location=${user.dir}/data/upload-tmp
spring.servlet.multipart.file-size-threshold=100KB

management.endpoints.web.exposure.include=*
management.health.redis.enable=false

# damp
damp.application.name=127.0.0.1:28084 ###根据实际情况修改

9)服务引擎生产节点配置 server/dataengineprod/config/application.properties:

根据实际情况修改端口、redis及数据库连接信息

spring.application.name=DataEnginePROD
server.port=10010
server.tomcat.max-connections=10000
server.tomcat.max-threads=1000
server.tomcat.min-spare-threads=100
spring.servlet.multipart.enabled=true
spring.servlet.multipart.max-request-size=100MB
spring.servlet.multipart.max-file-size=20MB
spring.servlet.multipart.location=${user.dir}/data/upload-tmp
spring.servlet.multipart.file-size-threshold=100KB
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
spring.jackson.default-property-inclusion=NON_ABSENT
spring.jackson.deserialization.fail-on-unknown-properties=false
spring.task.scheduling.pool.size=5
spring.task.execution.pool.core-size=50
spring.task.execution.pool.max-size=100
spring.task.execution.pool.queue-capacity=100000
management.endpoints.web.exposure.include=*
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/damp?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2b8
spring.datasource.username=root
spring.datasource.password=primeton
spring.datasource.pool-name=default
spring.datasource.minimum-idle=1
spring.datasource.maximum-pool-size=5
spring.redis.host=127.0.0.1
engine.runtime.group=DEFAULT
engine.runtime.env=PROD
engine.schedule.spec-cache-sync.cron=-

10)服务引擎测试节点配置:server/dataenginedev/config/application.properties

根据实际情况修改端口、redis及数据库连接信息

engine.runtime.env=DEV
spring.application.name=DataEngineDEV
server.port=10011
server.tomcat.max-connections=10000
server.tomcat.max-threads=1000
server.tomcat.min-spare-threads=100
spring.servlet.multipart.enabled=true
spring.servlet.multipart.max-request-size=100MB
spring.servlet.multipart.max-file-size=20MB
spring.servlet.multipart.location=${user.dir}/data/upload-tmp
spring.servlet.multipart.file-size-threshold=100KB
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
spring.jackson.time-zone=GMT+8
spring.jackson.default-property-inclusion=ALWAYS
spring.jackson.deserialization.fail-on-unknown-properties=false
spring.task.scheduling.pool.size=5
spring.task.execution.pool.core-size=50
spring.task.execution.pool.max-size=100
spring.task.execution.pool.queue-capacity=100000
management.endpoints.web.exposure.include=*
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/damp?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=GMT%2b8
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.pool-name=default
spring.datasource.minimum-idle=1
spring.datasource.maximum-pool-size=5
spring.redis.host=127.0.0.1
engine.runtime.group=DEFAULT
engine.schedule.spec-cache-sync.cron=-

11)定时任务配置(7.3版本默认是关闭状态,无需修改,但是没有会报错):damp/config/application-job.properties

### web
management.health.mail.enabled=false
### mybatis
mybatis.mapper-locations=classpath*:mybatis-mapper/*Mapper.xml
#mybatis.type-aliases-package=com.xxl.job.admin.core.model
### xxl-job, email
spring.mail.host=smtp.qq.com
spring.mail.port=25
spring.mail.username=xxx@qq.com
spring.mail.from=xxx@qq.com
spring.mail.password=xxx
spring.mail.properties.mail.smtp.auth=true
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.properties.mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory
### afc-job, access token
#xxl.job.accessToken=
### afc-job, i18n (default is zh_CN, and you can choose "zh_CN", "zh_TC" and "en")
xxl.job.i18n=zh_CN
## afc-job, triggerpool max size
xxl.job.triggerpool.fast.max=200
xxl.job.triggerpool.slow.max=100
afc.job.admin.enabled=false
afc.job.executor.enabled=false
### afc-job, log retention days
xxl.job.logretentiondays=30

# executor
### xxl-job, access token
#afc.job.executor.accessToken=default_token
#afc.job.executor.address=
#afc.job.executor.ip=
#afc.job.executor.port=9999
#afc.job.executor.logPath=
#afc.job.executor.logRetentionDays=

# 前端配置

在 nginx 安装目录下的 conf/nginx.conf 配置文件中引入数据资产前端配置。

根据真实情况修改数据资产前端配置地址 "include /opt/primeton/damp/web/conf/*.conf";

user  root;
worker_processes  1;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
    #access_log  logs/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;
   include /opt/primeton/damp/web/conf/*.conf;
}

修改资源目录 nginx 配置文件,配置在 damp/web/conf/damp.conf:

根据真实情况修改数据资产前端配置地址 "/opt/primeton/damp/web/afcenter"

upstream eosapp {
    server 127.0.0.1:28084;
}
server {
    listen 80;
	#client_body_buffer_size 10m;  #缓存区大小
    client_max_body_size 100m;

	#元数据集成配置,如果不做单点登录可以不配。
    location /fd_dgs/ {
        proxy_pass http://127.0.0.1:83/ ;
    }

    #元数据集成配置,如果不做单点登录可以不配。
    location ^~ /dgs {
        charset utf-8;
        proxy_pass http://127.0.0.1:28079;
    }

    location ^~/api/ {
        proxy_pass http://eosapp ;
    }
    location ~/(.*)/api/ {
        rewrite ^/(.*)/api/(.*)$ /api/$2 break;
        proxy_pass http://eosapp ;
    }
    location ~ \.biz\.ext$ {
        proxy_pass http://eosapp;
    }
    location / {
        root "/opt/primeton/damp/web/afcenter";
        access_log /opt/primeton/damp/web/afcenter/access.log ;
        error_log /opt/primeton/damp/web/afcenter/error.log warn;
        index  index.html index.htm;
        try_files $uri /index.html;
    }
}

#元数据
server {
    listen 83;
    proxy_buffer_size 128k;
    proxy_buffers 32 128k;
    proxy_busy_buffers_size 128k;
    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;

    location / {
        root /opt/primeton/damp/web/meta;
        index index.html index.htm;
        try_files $uri /index.html;
    }
    location /dgs {
        charset utf-8;
        proxy_pass http://127.0.0.1:28079;
    }
}

# 启动服务

启动服务时需要分别启动前后端应用,后端通过 bin 目录下的启动命令启动。前端则通过 nginx 加载配置启动。

Primeton_DAMP_7.3_GA_Standalone/server/damp/bin/ Primeton_DAMP_7.3_GA_Standalone/server/dataenginedev/bin/ Primeton_DAMP_7.3_GA_Standalone/server/dataengineprod/bin/ dataengineprod linux

[primeton@localhost allinone]$ ./startup.sh

Windows:

D:\develop\allinone>./startup.cmd

# 环境登录及验证

访问 http://localhost,使用初始用户登录,初始用户名、密码为:dtadmin/000000。 sf4

若无法访问,检查是否角色授权!!!

# 平台配置

第一次登录系统后需要修改部分平台参数,其中必须初始化的配置参数包括元数据配置、服务引擎、搜索引擎。修改配置后需要重新启动DAMP后端应用

PS:也可以直接在数据库中修改,平台配置表:comp_system_config。
    修改完成后建议重启DAMP。

# 1. 元数据配置

元数据集成相关配置,主要是修改元数据地址。如果元数据和DAMP安装在同一台服务器上并且dgs端口未修改,则不需要调整。 00-config.jpg

关键参数说明:
metacube.serverUrl : 元数据dgs后端服务地址。

# 2. 服务引擎配置

服务引擎对应后端 dataserviceprod 和 dataservicedev 对应端口,此处配置的地址需要是真实ip地址,不能配置成127.0.0.1。此配置修改后不需要重启服务。 01-config.png

关键参数说明:
dataEngine.gatewayUrl : 服务引擎生产环境地址,主要作用于页面服务地址显示。
dataEngine.gatewayUatUrl :服务引擎测试环境地址,主要应用服务现在测试时调用服务时使用。

# 3. 修改搜索引擎配置(重启后生效)

默认使用elasticsearch作为搜索引擎,用户需要按照安装的es服务地址配置,修改后需要重启才会生效02-config.jpg

关键参数说明:
searchEngine.engineUrl : es的http服务地址,支持https。
searchEngine.engineUserName :es认证账号,如果es开启了xpack账号密码认证,则需要填写。
searchEngine.enginePassword :es认证密码,如果es开启了xpack账号密码认证,则需要填写。

# 4. 修改数据质量集成配置

如果安装了数据质量组件,可以通过修改配置实现集成。配置后可以通过数据元标准维护自动生成数据质量规则,并可以在标准监控中查看规则执行情况。 10-config.jpg

关键参数说明:
DAM_BUILD_QUALITY.IS_OPEN : 是否启用数据质量集成配置,设置“Y/N”。
DAM_BUILD_QUALITY.dataSourceName :元数据库的数据源名称,此数据源需要在数据质量中预先配置,并保证两边数据源名称一致,默认是“MetaCube”。

11-config.jpg

# 5. 修改数据模型集成配置

7.3版本中集成了数据建模组件,因此默认配置会开启。此配置默认不需要修改。 12-config.jpg

关键参数说明:
DAM_BUILD_MODEL.IS_OPEN : 默认打开,如果不需要可以设置成N。
DAM_BUILD_MODEL.MODEL_URL : 数据开发前端跳转地址,默认不需要修改。

# 权限配置

在使用平台前,需要给数据资产管理员和数据中心管理员角色增加部分系统权限。

使用超级管理员 admin 进行角色授权,登录系统后在 组织权限中心->权限管理->角色管理。

  1. 找到【资产管理员】、【数据中心管理员】两个角色. 06-config.png
  2. 点击角色页面计入“权限”页签。
  3. 在左侧应用列表中找到“应用基础门户”,选中该应用在右侧“页面”页签中找到“工作流程”,勾选“我的任务”。(PS:其他的页面非必要,按需勾选即可) 07-config.png
  4. 完成上一步操作后,选中上方”功能“页签,找到“应用管理”分类,勾选“查询应用列表功能”。 08-config.png
  5. 完成后点击右下角“保存”。两个角色都要完成相同步骤,否则会影响流程处理。
上次更新: 2024/2/4上午10:51:04