微应用安装

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

安装介质说明

微应用安装介质,在安装之前需要提前准备好EOS8环境。

安装的前后端介质需要在“/EOS8GA/821LA2_Release_20220831/private-medium”路径下对应的位置存放。

安装介质准备

微应用安装介质需提前准备好”Primeton_QualityCube_7.1_LA_MicroApp.tar.gz“文件,解压后”Primeton_QualityCube_7.1_LA_Server.tar.gz“对应后端介质,“Primeton_QualityCube_7.1_LA_UI.tar.gz”对应前端介质。

微应用安装介质目录如下:

Primeton_QualityCube_7.1_LA_MicroApp
├── Primeton_QualityCube_7.1_LA_Server
├── Primeton_QualityCube_7.1_LA_Executor
├── Primeton_QualityCube_7.1_LA_Scheduler
└── Primeton_QualityCube_7.1_LA_UI

Primeton_QualityCube_7.1_LA_Server
├── bin
│    ├── shutdown.cmd
│    ├── shutdown.sh
│    ├── startup.cmd
│    └── startup.sh
├── config
│    ├── DQMS
│    ├── application.properties
│    ├── application-afc.properties
│    ├── application-dqms.properties
│    ├── application-eureka.properties
│    ├── application-nacos.properties
│    └── logback-spring.xml
├── db-scripts
│    ├── dm
│    ├── mysql
│    ├── opengauss
│    └── oracle
├── lib
│    ├── DmJdbcDriver18-8.1.1.193.jar
│    ├── hive-jdbc-2.1.1.jar
│    ├── mysql-connector-java-5.1.49.jar
│    └── opengauss-jdbc-3.0.0.jar
└── dqms-eos-boot-7.1.0-exec.jar


Primeton_QualityCube_7.1_LA_UI
├── quality.conf
└── dist
    ├── assets
    │    ├── css
    │    ├── fonts
    │    ├── images
    │    └── js
    ├── static
    │    ├── image
    │    ├── images
    │    ├── js
    │    ├── json
    │    ├── lang
    │    ├── monaco-editor
    │    ├── png
    │    ├── tinymce5.2.0
    │    ├── flow-config.json
    │    └── logo.png
    ├── index.html
    └── remoteEntry.js

Primeton_QualityCube_7.1_LA_Executor
├── bin
│    ├── shutdown.cmd
│    ├── shutdown.sh
│    ├── startup.cmd
│    └── startup.sh
├── config
│    ├── legal-validator-tpl
│    ├── mapper
│    ├── spark
│    ├── templates
│    ├── account.properties
│    ├── application.yml
│    ├── banner.txt
│    ├── core-site.xml
│    ├── hdfs-site.xml
│    └── logback.xml
├── lib
│    └── mysql-connector-java-5.1.49.jar
├── spark
│    └── hiveseq_check
├── quality-executor-7.1.0-exec.jar
└── README.md

Primeton_QualityCube_7.1_LA_Scheduler
├── config
│    ├── application.properties
│    └── logback.xml
├── lib
│    └── deleteMe.txt
├── README.md
├── startJob.bat
├── startJob.sh
├── stopJob.bat
├── stopJob.sh
└── xxl-job-admin-2.2.0.jar

数据库初始化

创建qualit数据库。执行如下脚本:

CREATE DATABASE `quality` DEFAULT CHARACTER SET utf8mb4;

执行初始化脚本

微应用安介质安装时需要按顺序执行对应数据库的数据库初始化脚本。初始化脚本路径为

Primeton_QualityCube_7.1_LA_MicroApp/db-scripts,其中包括了四种数据库dm、mysql、opengauss、oracle的脚本。

quality数据库初始化,按顺序执行如下脚本:

db-scripts/mysql/00-quality-afc-data.sql # 此脚本文件需放在afcenter的数据库运行
db-scripts/mysql/10-quality-ddl.sql
db-scripts/mysql/11-quality-data.sql
db-scripts/mysql/12-quality-function.sql

修改配置文件

后端配置

微应用安介质安装时的配置文件,有需要修改的地方会在后面用“###-”提示说明。

质量后端配置:

server/config/application.properties配置文件

spring.application.name=QUALITY
spring.profiles.active=dqms,afc 

# server.port=8080  ###—默认端口,根据实际情况修改端口号
# server.servlet.context-path=/
# server.app-server.max-connections=10000
# server.app-server.max-threads=1000
# server.app-server.min-spare-threads=100

spring.redis.host=10.15.15.136  ###—redis所在服务器ip
spring.redis.port=6379          ###—redis端口
spring.redis.password=primeton  ###—redis密码(根据实际情况)
#spring.redis.lettuce.pool.max-active=100
#spring.redis.lettuce.pool.max-idle=10
#spring.redis.lettuce.pool.max-wait=5000

spring.cloud.nacos.discovery.enabled=true
spring.cloud.nacos.discovery.server-addr=10.15.15.130:8848  ###-nacos所在服务器ip
spring.cloud.nacos.config.enabled=true
eureka.client.enabled=false
apollo.bootstrap.enabled=false

server/config/application-afc.properties配置文件

# afc server endpoint if  `nacos / eureka` disabled
afc.application.name=10.15.15.136:28085 ###-afc所在服务器ip
# if `nacos / eureka` enabled
# afc.application.name=AFCENTER
afc.application.tenant=sys_tenant
afc.application.app-code=AFC
afc.application.app-secret=secret

server/config/application-dqms.properties配置文件

common.base_dir=${app.home:.}  ###-根据需求配置检核数据存放路径

xxl.job.admin.addresses=http://10.15.15.136:28282/job-admin/  ###-调度器所在服务器ip
xxl.job.admin.username=admin                                  ###-调度器账号
xxl.job.admin.password=123456                                 ###-调度器密码

###-配置数据源同步信息
datashard.type=local
datashard.base_path=${common.base_dir}/upload
datashard.delSrc=true
datashard.fileSuffix=.bcp
datashard.ftp.host=192.168.30.142 ###-配置公共资源中数据源同步所在服务器ip
datashard.ftp.port=2121
datashard.ftp.userName=admin
datashard.ftp.password=primeton000000
datashard.sftp.host=192.168.30.143
datashard.sftp.port=22
datashard.sftp.userName=root
datashard.sftp.password=primeton

server/config/application-eureka.properties配置文件

eureka.client.enabled=true
eureka.instance.prefer-ip-address=true
eureka.instance.lease-renewal-interval-in-seconds=10
eureka.instance.lease-expiration-duration-in-seconds=30
eureka.client.service-url.defaultZone=http://Admin:Admin9000@127.0.0.1:8761/eureka/  ###-eureka所在服务器ip

spring.cloud.nacos.discovery.enabled=false
spring.cloud.nacos.config.enabled=false

#apollo.meta=http://127.0.0.1:18081/
#apollo.bootstrap.enabled=true

server/config/application-nacos.properties配置文件

spring.cloud.nacos.discovery.enabled=true
spring.cloud.nacos.discovery.server-addr=127.0.0.1:8848 ###-nacos所在服务器ip

eureka.client.enabled=false

其中:application-nacos.properties和application-eureka.properties配置文件,根据实际选择使用进行选择配置。

server/config/DQMS/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://10.16.16.210:3306/dqms_fran?useSSL=false</configValue>
            <!--  ###-修改数据源用户名  -->
            <configValue key="C3p0-UserName">root</configValue>
            <!--  ###-修改数据源密码  -->
            <configValue key="C3p0-Password">root</configValue>
            <configValue key="C3p0-PoolSize">5</configValue>
            <configValue key="C3p0-MaxPoolSize">30</configValue>
            <configValue key="C3p0-MinPoolSize">5</configValue>

            <!-- //seconds, 0 means connections never expire -->
            <configValue key="C3p0-MaxIdleTime">0</configValue>
            <!-- //idle connections never tested -->
            <configValue key="C3p0-IdleConnectionTestPeriod">0</configValue>
            <configValue key="C3p0-MaxStatements">0</configValue>
            <configValue key="C3p0-NumHelperThreads">3</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>

调度器配置:

scheduler/config/application.properties配置文件

### web
server.port=28282 ###-配置调度器端口
server.servlet.context-path=/job-admin

### xxl-job, datasource
###-数据源配置
spring.datasource.url=jdbc:mysql://10.16.16.210:3306/dqms_fran?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&serverTimezone=Asia/Shanghai
###-数据库用户账号
spring.datasource.username=root
###-数据库用户密码
spring.datasource.password=root
###-数据库驱动
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

执行器配置:

executor/config/application.yml配置文件

#端口
server:
  port: 18184 ###-按需修改执行器端口

#通用数据库连接配置  
common:
  jdbc:
    driverClass: com.mysql.jdbc.Driver ###-按数据库修改驱动
    username: "root" ###-数据库账户
    password: "root" ###-数据库密码

# 日志级别
logging:
  level.com.primeton.damp: INFO
  level.com.primeton.dqms: INFO ###- 按需修改日志级别

#修改数据库对应Mybatis方言
mapper:
  mappers: com.primeton.damp.core.mapperBase.MyMapper
  not-empty: false
#  identity: MYSQL
  identity: MYSQL

#按需修改数据库连接
spring:
 datasource:
  damp:
   url: jdbc:mysql://10.16.16.210:3306/dqms_fran?useUnicode=true&characterEncoding=UTF-8&useSSL=false #数据库连接
      username: ${common.jdbc.username}
      password: ${common.jdbc.password}
      driver-class-name: ${common.jdbc.driverClass}
      alias: dqms
      #初始化链接数
      initial-size: 10
      #最小连接数
      min-idle: 10
      #最大连接数
      max-active: 20
  dqms:
   url: jdbc:mysql://10.16.16.210:3306/dqms_fran?useUnicode=true&characterEncoding=utf-8&useSSL=false
      username: ${common.jdbc.username}
      password: ${common.jdbc.password}
      driver-class-name: ${common.jdbc.driverClass}
      alias: dqms
      #初始化链接数
      initial-size: 10
      #最小连接数
      min-idle: 10
      #最大连接数
      max-active: 20
    druid:
      #获取连接时最大等待时间
      max-wait: 5000
      #失败重试间隔时长
      time-between-connect-error-millis: 10000

#配置pagehelper方言      
pagehelper:
  page-size-zero: true
  helperDialect: mysql
  reasonable: true
  supportMethodsArguments: true

###-对应配置调度器
xxl:
  job:
    admin:
      addresses: http://localhost:28282/job-admin/ ###-调度器服务器地址
      username: admin  ###-调度器用户账号    
      password: 123456 ###-调度器用户密码
    executor:
      appname: cdh-executor
      ip:
      port: 9944 ###执行器注册在调度器的地址
      logpath: ${common.base_dir}/logs
      logretentiondays: -1
    accessToken:

前端配置

将 Primeton_QualityCube_7.1_LA_UI.tar.gz中quality.conf 中的内容复制粘贴到机器的nginx.config 文件中

66574114792

quality.conf配置文件

server {
    listen 80; ###-默认服务器端口

    client_max_body_size 20M; #限制请求体的大小,默认是1M
    add_header X-Content-Type-Options nosniff;
    add_header X-XSS-Protection "1";
    add_header Content-Security-Policy "script-src * 'unsafe-inline' 'unsafe-eval'";
    add_header X-Frame-Options "SAMEORIGIN";
    add_header Strict-Transport-Security "max-age=SECONDS";
    add_header Referrer-Policy "no-referrer" always;
    add_header X-Permitted-Cross-Domain-Policies "master-only";
    add_header X-Download-Options noopen;

    location /afc {
        proxy_pass http://10.15.15.139:29890/; ###-根据实际情况修改afc所在服务器ip
    }

    location /afc/dqms {
        proxy_pass http://10.15.15.139:29898/; ###-根据实际情况修改quality所在服务器ip
    }

    location / {
        root /opt/idc/apps/afcenter; ###-微前端方式部署,根据实际情况修改
        index index.html index.htm;
    }
}

例如:


#user  nobody;
worker_processes  1;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;


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;

    server {
        listen 8090;

        client_max_body_size 20M; #限制请求体的大小,默认是1M
        add_header X-Content-Type-Options nosniff;
        add_header X-XSS-Protection "1";
        add_header Content-Security-Policy "script-src * 'unsafe-inline' 'unsafe-eval'";
        add_header X-Frame-Options "SAMEORIGIN";
        add_header Strict-Transport-Security "max-age=SECONDS";
        add_header Referrer-Policy "no-referrer" always;
        add_header X-Permitted-Cross-Domain-Policies "master-only";
        add_header X-Download-Options noopen;

        location /afc/dqms { 
            proxy_pass http://localhost:13076/; # 根据实际情况修改
        }
        location /afc {
            proxy_pass http://localhost:28085/; # 根据实际情况修改
        }



        location / {
            root D:/Desktop/WORK/test_quality/EOS_AFCenter821_1001/EOS_Platform_8.2LA2_AFCenter_UI; # 微前端方式部署,根据实际情况修改
            index index.html index.htm;
        }
    }



    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}

启动服务

调度器启动

Linux 系统

[root@localhost Primeton_QualityCube_7.1_LA_Scheduler]# ./startJob.sh

Windows 系统

D:\Desktop\Primeton_QualityCube_7.1_LA_Scheduler> startJob.bat

执行器启动

Linux 系统

[root@localhost Primeton_QualityCube_7.1_LA_Executor]# ./bin/startup.sh

Windows 系统

D:\Desktop\Primeton_QualityCube_7.1_LA_Executor\bin> startup.cmd

质量后端启动

Linux 系统

[root@localhost Primeton_QualityCube_7.1_LA_Server]# ./bin/startup.sh

Windows 系统

D:\Desktop\Primeton_QualityCube_7.1_LA_Server\bin> startup.cmd

前端ui 系统

[root@localhost Primeton_QualityCube_7.1_LA_MicroApp]# nginx -s ./nginx.config

环境登录和验证

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

66574138357

1.点击组织权限中心/权限管理/角色管理/找到自己的用户信息点击“资源权限数量”下的数字,进入“角色详情”。

image-20221011200127038

2.在”角色详情“下的“权限”页面,选择应用列表为”数据质量“,勾选需要的权限,即可。

image-20221011200431165

3.在“账号管理”中,选择对应账号的”角色数量“下的数字,进行对账号角色的配置。

image-20221011200752601

4.在“账号管理”中,点击“添加角色”,即可把刚才创建的角色赋予这个账号。

image-20221011201016330

5.在”添加角色“中选择选中需要的角色,在右边的已选框中可查看到选择的角色。

image-20221011201110323

6.点击“确定”,可以看到选择的角色已添加成功。

image-20221011201310594

7.点击“确定”,保存成功,可看到,账号“角色数量”下的数字加一。

image-20221011201407938

8.刷新即可看到“数据质量”功能。

image-20221011202003258

results matching ""

    No results matching ""