行业包文档管理 行业包文档管理
首页
  • 系统快速上手
  • Git分支管理规则及协作流程说明
  • 系统账号密码说明
  • 架构说明

    • 系统整体架构说明
    • QMS-SPC系统架构说明
  • 后端基础类库说明
  • PC端前端所有组件说明 (opens new window)
  • 数据模型设计与说明
  • 后端新建微服务配置
  • 后端华为OpenApis开发
  • 事务集成
  • PC端前端从0开始

    • 本地部署运行
    • 创建前端工程
    • PC端组件库安装使用
    • 按钮权限基础包
  • 移动端前端从0开始

    • 移动端打包APK
    • 移动端公共组件
    • 移动端公共库
  • 前端公共

    • 前端整体架构
    • 前端注意事项
  • 公有云部署流程
  • iDME私有化部署流程
  • 许可授权流程
  • 各方案推荐配置清单
  • PC端前端二开流程
  • 移动端底座二开流程
  • 更新日志及规范规范
常见问题
Source (opens new window)
首页
  • 系统快速上手
  • Git分支管理规则及协作流程说明
  • 系统账号密码说明
  • 架构说明

    • 系统整体架构说明
    • QMS-SPC系统架构说明
  • 后端基础类库说明
  • PC端前端所有组件说明 (opens new window)
  • 数据模型设计与说明
  • 后端新建微服务配置
  • 后端华为OpenApis开发
  • 事务集成
  • PC端前端从0开始

    • 本地部署运行
    • 创建前端工程
    • PC端组件库安装使用
    • 按钮权限基础包
  • 移动端前端从0开始

    • 移动端打包APK
    • 移动端公共组件
    • 移动端公共库
  • 前端公共

    • 前端整体架构
    • 前端注意事项
  • 公有云部署流程
  • iDME私有化部署流程
  • 许可授权流程
  • 各方案推荐配置清单
  • PC端前端二开流程
  • 移动端底座二开流程
  • 更新日志及规范规范
常见问题
Source (opens new window)
  • iDME私有化部署流程

    • iDME私有化部署流程图
      • iDME私有化部署首次部署流程说明
        • 1. 创建应用
        • 2. 下载SDK包
        • 3. 编辑配置文件
        • 4. 获取license文件
        • 5. 生成镜像
        • 6. 运行镜像
        • 7. 验证系统
      • iDME私有化部署升级流程说明
        • 1. 下载新版本SDK包
        • 2. 打包升级镜像
        • 3. 更新镜像
    • 生产部署
    linchang
    2024-11-28
    目录

    iDME私有化部署流程

    # iDME私有化部署流程图

    iDME私有化部署流程图

    # iDME私有化部署首次部署流程说明

    # 1. 创建应用

    1. 查看华为官方文档 (opens new window) 根据提示创建应用
    2. 进入应用中心查看应用ID 查看应用ID

    # 2. 下载SDK包

    1. 进入应用发布页面
    2. 在指定版本下生成及下载XDM-F SDK包 下载SDK
    3. 解压下载的SDK包
      tar -xvf {SDK包所在路径} -C {解压的路径}
      
      1

    # 3. 编辑配置文件

    1. 需保证有RDS库(MySQL数据库)及Redis库
    2. 阅读华为官方文档
      • 在本地通用服务器中部署数据建模引擎运行SDK (opens new window)
      • 在容器中部署数据建模引擎运行SDK (opens new window)
      • 通用配置 (opens new window)
      • 自定义配置 (opens new window)
    3. 可参考该配置进行调整
      # 数据库配置
      RDS_IP=192.168.168.207  # 数据库地址,需修改
      RDS_PORT=31446  # 数据库端口,需修改
      RDS_NAME=root  # 数据库用户名,需修改
      RDS_PASSWORD=test  # 数据库密码,需修改
      RDS_TYPE=mysql
      RDS_DATABASE=xdm-test # 数据库名,需修改
      
      # Redis配置
      REDIS_HOST=192.168.168.54 # Redis地址,需修改
      REDIS_PASSWORD=123456 # Redis密码,需修改
      REDIS_PORT=6379 # Redis端口,需修改
      REDIS_TYPE=SINGLE
      
      # 公共信息配置
      TENANT_ID=e3231ab62e9d4771bd0df793f62d2282 # 应用ID,需修改
      APP_NAME=SieProMom # 应用名称,需修改
      APP_IDENTIFIER=e3231ab62e9d4771bd0df793f62d2282 # 应用ID,需修改
      PAAS_APP_NAME=siepromom # 应用名称的小写,需修改
      server.ssl.enabled=false
      olc.config.path=/opt/deploytest/olc
      xdm.delegate.bean.inject=false
      server.servlet.context-path=/rdm_e3231ab62e9d4771bd0df793f62d2282_app/services/ # 格式:/rdm_{应用ID}_app/services/,需修改
      java.compile.lib.path=/opt/xdm/lib
      
      # MongoDB配置
      mongodb.init=false
      
      # Kafka配置
      kafka.init=false
      
      # IAM配置
      XDM_LOGIN_TYPE=LOCAL
      ssf.sysmgr.sessionfilter.loginUrl=LOCAL
      ssf.sysmgr.sessionfilter.ignorePattern=/getIndexUrl;/v1/health;/v1/login/login;/v1/login/logout;/v1/login/verifycode;/v1/firstlogin/users;/v1/firstlogin/userpasswords:PUT;/static/**;/index.html;/HuaweiLog.ico;/HuaweiLog.png
      ssf.login.logoutUri=https://192.168.168.54:8003//authui/logout # 登出地址,格式为:https://{站点地址}/authui/logout,需修改
      OPEN_IAM_TOKEN_VALIDATION=false
      RUNTIME_ENV_TYPE=IES
      XDM_SDK_DEPLOY_ENABLE=true
      
      # 禁用二级缓存
      OPEN_SECOND_LEVEL_CACHE=false
      
      # 日志过滤
      DEVSPORE_LOG_DESENSITIZATION_CONFIG=OFF
      xdm.log.filter=false
      
      # 关闭验证码
      ssf.login.local.verifycode.verify-code=false
      
      # 许可路径
      xdm.license.licenseFile=/opt/xdm/license.dat # 许可文件路径,如无此配置则为试用状态,根据情况修改
      
      # 高代码相关
      CUSTOM_SERVICE_GLOBAL_SWITCH=true
      CUSTOM_SERVICE_MANAGEABLE=true
      CUSTOM_SERVICE_MODIFIABLE=true
      CUSTOM_SERVICE_EXECUTABLE=true
      CUSTOM_CODE_WHITELIST=
      
      
      # tenant.info配置
      tenant.info=
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
      24
      25
      26
      27
      28
      29
      30
      31
      32
      33
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63

    # 4. 获取license文件

    1. 在需要部署的服务器上执行
      dmidecode -s system-uuid | tr 'A-Z' 'a-z'
      
      1
    2. 获取到一串UUID发给华为方人员
    3. 将华为给到的license文件放到与配置文件同一个文件夹

    # 5. 生成镜像

    1. 根据启动脚本创建startxdm.bash文件,放到与配置文件同一个文件夹
      cd /opt/xdm/
      # 指定启动类
      START_CLASS=com.huawei.microservice.rdm.RdmApplication
      
      # 指定启动类所在路径,为lib目录下
      LOAD_CLASSPATH=./lib/*:./
      BIND_ADDRESS=`hostname -i`
      
      # 从部署包中解压出olc配置文件
      jar xvf ./lib/microserviceTemplate.app-1.0.0-SNAPSHOT-shaded-small.jar olc
      
      # 执行java命令,以配置文件application.properties启动服务,并把日志输入到当前目录下的xdm.log中
      sh -c "java -Xms8g -Xmx8g -Dconfig.file=/opt/xdm/application.properties -classpath $LOAD_CLASSPATH $START_CLASS --server.address=${BIND_ADDRESS} -Diit.test=true"
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
    2. 创建Dockerfile文件,放到与配置文件同一个文件夹
      # 使用官方的 openeuler 作为基础镜像
      FROM openeuler/bisheng-jdk:1.8.0-oe2203lts
      
      # 验证 JDK 安装
      RUN java -version
      
      # 设置工作目录
      WORKDIR /opt/xdm
      
      # 将应用所需的 JAR 文件和脚本复制到容器中
      COPY lib /opt/xdm/lib
      COPY startxdm.bash /opt/xdm/startxdm.bash
      COPY application.properties /opt/xdm/application.properties
      COPY license.dat /opt/xdm/license.dat
      
      # 确保脚本有执行权限
      RUN chmod +x /opt/xdm/startxdm.bash
      
      # 暴露应用运行时需要的端口 (如果你知道具体端口,可以在此处设置)
      EXPOSE 8003
      
      # 设置容器启动时执行的命令
      CMD ["/bin/sh", "/opt/xdm/startxdm.bash"]
      
      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      14
      15
      16
      17
      18
      19
      20
      21
      22
      23
    3. 进入Dockerfile文件所属文件夹,文件夹下结构如下图 文件结构
    4. 执行命令,生成镜像,镜像名及版本号可以自定义
      docker build --no-cache -t xdm:1 .
      
      1

    # 6. 运行镜像

    1. 将镜像上传到客户方私有镜像仓库或公有云仓库
      • 如果网络不通可以通过本地文件发送
      • 本地打包镜像文件可参考下面命令
        docker save xdm:1 -o D:\xdm1.tar
        docker load -i /tmp/xdm1.tar
        
        1
        2
    2. 启动容器

      提示

      容器需指定为特权容器

      • Docker run时需要指定 --privileged=true
      • K8s yarm 中需要指定 securityContext: privileged: true

      提示

      存储需要映射HostPath

      • 映射路径为 /sbin/dmidecode 与 /dev/mem
      • 可参考以下K8s yaml文件
        kind: Deployment
        apiVersion: apps/v1
        metadata:
          name: xdm-runtime
          namespace: pre-product
        spec:
          replicas: 1
          selector:
            matchLabels:
              app: xdm-runtime
          template:
            metadata:
              labels:
                app: xdm-runtime
            spec:
              volumes:
                - name: vol-dmidecode
                  hostPath:
                    path: /sbin/dmidecode
                    type: ''
                - name: vol-mem
                  hostPath:
                    path: /dev/mem
                    type: ''
              containers:
                - name: xdm-runtime
                  image: 'xdm:1'
                  resources:
                    limits:
                      cpu: '4'
                      memory: 8000Mi
                  volumeMounts:
                    - name: vol-dmidecode
                      mountPath: /sbin/dmidecode
                    - name: vol-mem
                      mountPath: /dev/mem
                  terminationMessagePath: /dev/termination-log
                  terminationMessagePolicy: File
                  imagePullPolicy: Always
                  securityContext:
                    privileged: true
              restartPolicy: Always
              terminationGracePeriodSeconds: 30
              dnsPolicy: ClusterFirst
              securityContext: {}
              schedulerName: default-scheduler
          strategy:
            type: RollingUpdate
            rollingUpdate:
              maxUnavailable: 25%
              maxSurge: 25%
          revisionHistoryLimit: 10
          progressDeadlineSeconds: 600
        
        1
        2
        3
        4
        5
        6
        7
        8
        9
        10
        11
        12
        13
        14
        15
        16
        17
        18
        19
        20
        21
        22
        23
        24
        25
        26
        27
        28
        29
        30
        31
        32
        33
        34
        35
        36
        37
        38
        39
        40
        41
        42
        43
        44
        45
        46
        47
        48
        49
        50
        51
        52
        53

    # 7. 验证系统

    1. 进入系统,系统地址为 http://{部署服务器的IP地址}:{部署服务器的端口号}/rdm_{应用的唯一标识}_app/services/index.html
    2. 首次进入需设置管理员密码
    3. 设置完进入系统,能正常访问说明部署成功

    # iDME私有化部署升级流程说明

    # 1. 下载新版本SDK包

    • 下载新版本SDK包,解压后,将解压后的文件放入Dockerfile所在目录,解压前最好把原目录下的lib文件夹删除,避免有文件遗留,参考命令
      rm -rf {Dockerfile所在目录}/lib
      tar -xvf {SDK包所在路径} -C {Dockerfile所在目录}
      
      1
      2

    # 2. 打包升级镜像

    • 进入Dockerfile所在目录,打包新版本镜像,记得镜像版本需比原版本号大
      docker build --no-cache -t xdm:2 .
      
      1

    # 3. 更新镜像

    • 在K8s管理工具中修改pod镜像版本,重启pod 修改yarm
    在线编辑 (opens new window)
    最近更新
    01
    交付人员二开
    09-16
    02
    业务集成二开
    09-16
    03
    事务集成
    07-09
    更多文章>
    Theme by Vdoing | Copyright © 2023-2026 SIE
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式