云服务器内容精选

  • WSF配置 数据建模引擎运行SDK的运行时默认启用Huawei WSF安全校验,包括参数校验、文件上传校验等。您可以通过如下配置说明,自定义配置WSF校验规则。 如果您希望精细化管理安全校验,开启dme-WSF组件后,您可以通过自定义配置参数校验、文件上传校验、多文件上传解释器、 CS RF防护过滤器、WSF参数校验文件路径、WSF文件上传配置信息路径等参数实现。 为了避免文件上传校验异常,开启/关闭WSF的文件上传校验时,须同时开启/关闭WSF的多文件上传解释器。即,“dme.wsf.upload.check.enable”和“dme.wsf.multipart.check.enable”同时配置为“true”或“false”。 如需自定义参数校验规则,请遵循WSF组件规则定义对应的XML配置信息。 如果您想使用其他安全防护资源进行安全校验,需要关闭WSF安全校验时,请同时关闭dme-WSF组件和WSF组件。即,“dme.wsf.enable”和“devspore.security.wsf.enable”均配置为“false”。关闭WSF安全校验后,数据建模引擎运行SDK上的数据将不再受保护,请谨慎操作。 配置参数 是否必选 参数说明 示例 dme.wsf.enable 否 dme-WSF组件是iDME基于WSF封装的组件。 如果不配置或配置为true,则开启dme-WSF组件;如果配置为false,则关闭dme-WSF组件。 true devspore.security.wsf.enable 否 WSF自带组件。 如果不配置或配置为true,则开启WSF自带组件;如果配置为false,则关闭WSF组件。 true dme.wsf.param.check.enable 否 WSF的参数校验。 如果不配置或配置为true,则开启参数校验;如果配置为false,则关闭参数校验。 仅当“dme.wsf.enable”为“true”时,此配置参数才有效。 true dme.wsf.param.config.path 否 自定义WSF参数校验规则的文件夹路径。 如果不配置,默认读取当前SDK类路径下“validate”文件夹中的配置。 仅当“dme.wsf.param.check.enable”为“true”时,此配置参数才有效。 /root/deploytest/validate dme.wsf.upload.check.enable 否 WSF的文件上传校验。 如果不配置或配置为true,则开启文件上传校验;如果配置为false,则关闭文件上传校验。 仅当“dme.wsf.enable”为“true”时,此配置参数才有效。 true dme.wsf.multipart.check.enable 否 WSF的多文件上传解释器。 如果不配置或配置为true,则开启多文件上传解释器;如果配置为false,则关闭多文件上传解释器。 仅当“dme.wsf.enable”为“true”时,此配置参数才有效。 true dme.wsf.upload.config.path 否 自定义WSF文件上传校验规则的文件路径。 如果不配置,默认使用iDME配置文件路径。 仅当“dme.wsf.upload.check.enable”为“true”时,此配置参数才有效。 /root/deploytest/CustomUploadFileConfig.properties dme.wsf.csrf.check.enable 否 CSRF防护过滤器。 如果不配置或配置为true,则开启CSRF防护过滤器;如果配置为false,则关闭CSRF防护过滤器。 仅当“dme.wsf.enable”为“true”时,此配置参数才有效。 true
  • 流程引擎流程SDK配置 数据建模引擎运行SDK和流程引擎流程SDK是独立部署的两个微服务,服务之间可以通过jwt-token认证并进行通信交互。如果您需要开启两个微服务之间的联动,使用流程引擎流程SDK,您需要先在数据建模引擎运行SDK的启动配置文件中添加如下配置。 配置参数 是否必选 参数说明 示例 JWT_WORKFLOW_PRIVATEKEY 是 xDM-F和流程引擎通信时,jwt-token认证鉴权所使用的加密私钥。 如何获取jwt-token认证鉴权所使用的加密私钥,请参见如何生成jwt-token?。 private_key JWT_WORKFLOW_PUBLICKEY 是 xDM-F和流程引擎通信时,jwt-token认证鉴权所使用的加密公钥。 如何获取jwt-token认证鉴权所使用的加密公钥,请参见如何生成jwt-token?。 public_key WORKFLOW_URL 是 流程引擎服务主页的URL。 URL格式: http://{流程引擎流程SDK部署服务器的IP地址}:{流程引擎流程SDK部署服务器的端口号}/{流程引擎流程SDK文根}/index.html http://127.0.0.1:60001/workflowDesign/index.html DATA_SYNC_SWITCH 是 设置是否开启xDM-F和流程引擎间的数据同步。 如需使用流程引擎,此配置参数必须设置为true。 true:开启xDM-F和流程引擎间的数据同步。 false:关闭xDM-F和流程引擎间的数据同步,默认为false。 true
  • 特性开关配置 您可以通过如下配置说明,自主控制是否开启/关闭某个xDM-F的功能。 配置参数 是否必选 参数说明 示例 OPEN_SECOND_LEVEL_CACHE 否 设置是否开启二级缓存功能。 true:开启二级缓存,默认为true。 false:关闭二级缓存。 关于二级缓存的介绍请参见数据建模引擎支持哪些层级的缓存?。 false THIRD_LEVEL_REDIS_CLOSED 否 设置是否开启三级缓存功能。 true:关闭三级缓存。 false:开启三级缓存,默认为false。 关于三级缓存的介绍请参见数据建模引擎支持哪些层级的缓存?。 true DYNAMIC_DATASOURCE_ENABLED 否 设置是否开启多数据源功能。 true:开启多数据源。 false:关闭多数据源,默认为false。 false
  • DEW(KMS)配置 如果您已在资源规划(数据建模引擎运行SDK)中规划了DEW服务,并希望对数据模型的属性进行“值加密”,可参考如下说明进行配置。 配置参数 是否必选 参数说明 示例 KMS_END_POINT 是 承载DEW服务的服务器 域名 或IP地址。 https://kms.cn-north-4.myhuaweicloud.com KMS_KEY_ID 是 DEW服务的密钥ID。 123456
  • APIG配置 如果您已在资源规划(数据建模引擎运行SDK)中规划了APIG服务,并希望通过APIG对应用运行态的全量数据服务API进行统一监控、管理、配置、流控等,可参考如下说明进行配置。 配置参数 是否必选 参数说明 示例 APIG_HOST 是 承载APIG服务的服务器域名或IP地址。 https://apig.cn-north-4.myhuaweicloud.com APIG_INSTANCE_ID 是 APIG的实例ID。 123456 APIG_DEFAULT_GROUP_HOST 是 APIG服务默认组的IP地址。 http://127.0.0.1/ APIG_DEFAULT_GROUP_ID 是 APIG服务默认组的ID。 123456 APIG_ENDPOINT 是 承载APIG服务终端的服务器域名或IP地址。 https://2c3cffb0f7174591a37f40bf5415546e.apic.cn-north-4.myhuaweicloud.com
  • License配置 数据建模引擎运行SDK的运行由License进行授权控制。当您已完成“通用服务器(SDK)”基础版数据建模引擎的购买并获取License文件之后,可参考如下配置说明绑定License。 如果您当前暂未申请License,且获取的SDK包处于免费使用期,可跳过此配置。 配置参数 是否必选 参数说明 示例 xdm.license.licenseFile 是 License文件的绝对路径。 /root/deploytest/test.dat xdm.license.keyFile 是 License密钥文件的绝对路径。 /root/deploytest/testKeyFile.txt
  • Kafka配置 如果您已在资源规划(数据建模引擎运行SDK)中规划了Kafka的资源/云服务,并希望使用xDM-F的“同步至LinkX-F”功能,可参考如下说明进行配置。 配置参数 是否必选 参数说明 示例 kafka.init 否 设置是否开启Kafka。 true:开启Kafka,默认为true。开启后,需要设置“KAFKA_BOOTSTRAP_SERVERS”参数。 false:关闭Kafka。 true KAFKA_BOOTSTRAP_SERVERS 仅当“kafka.init”为“true”时,此配置参数必选。 Kafka的连接地址。 127.0.0.1:9094
  • 单点登录配置 如果您希望通过单点登录的方式访问应用运行态,可参考如下说明进行配置。xDM-F的SDK部署模式当前支持如下两种单点登录方式,请根据实际的资源规划(数据建模引擎运行SDK)进行配置。 IAM 服务的单点登录 此方式的单点登录依赖于华为云IAM服务,请确认已规划对应资源。 配置参数 是否必选 参数说明 示例 ssf.sysmgr.sessionfilter.loginUrl 是 IAM服务的单点登录地址。 格式为: https://{IAM_ LOG IN_ENDPOINT}/authui/login.action?service={ssf.login.cas.serviceUrl} https://auth.huaweicloud.com/authui/login.action?service=http://127.0.0.1:8003/rdm_123456_app/services/v1/cas/login ssf.login.loginSuccessRedirectUrl 是 登录应用运行态后的默认主页。 格式为: http://{数据建模引擎运行SDK部署服务器的IP地址}:{数据建模引擎运行SDK部署服务器的端口号}/rdm_{应用ID}_app/services/index.html http://127.0.0.1:8003/rdm_123456_app/services/index.html ssf.login.cas.serviceUrl 是 应用运行态的单点登录地址。 格式为: http://{数据建模引擎运行SDK部署服务器的IP地址}:{数据建模引擎运行SDK 部署服务器的端口号}/rdm_{应用ID}_app/services/v1/cas/login http://127.0.0.1:8003/rdm_123456_app/services/v1/cas/login ssf.login.logoutUri 是 IAM服务的单点登出地址。 格式为: https://{IAM_LOGIN_ENDPOINT}/authui/logout https://auth.huaweicloud.com/authui/logout ssf.login.cas.validateUrl 是 IAM验签地址。 格式为: https://{IAM_LOGIN_ENDPOINT}/authui/serviceValidate https://auth.huaweicloud.com/authui/serviceValidate IAM_LOGIN_ENDPOINT 是 承载IAM服务的服务器域名或IP地址。 https://auth.huaweicloud.com LOGIN_URL 是 IAM服务的单点登录地址。 格式为: https://{IAM_LOGIN_ENDPOINT}/authui/login.action https://auth.huaweicloud.com/authui/login.action LOGOUT_URL 是 应用运行态的单点登出地址。 格式为: https://{IAM_LOGIN_ENDPOINT}/authui/logout https://auth.huaweicloud.com/authui/logout XDM_SDK_DEPLOY_ENABLE 是 表示当前部署方式是否为SDK部署。 true:是SDK部署方式,默认为true。 false:不是SDK部署方式。 true 本地环境的单点登录 配置此方式的单点登录之前,您需要先在资源规划(数据建模引擎运行SDK)的数据库资源中创建一个schema,其schema名称格式为{应用运行态的schema名称}_ssf;然后在schema中执行如下命令,更新配置信息。 set global log_bin_trust_function_creators=true; 配置参数 是否必选 参数说明 示例 XDM_LOGIN_TYPE 是 应用运行态的登录类型,配置为“LOCAL”。 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://{数据建模引擎运行SDK部署服务器的IP地址}:{数据建模引擎运行SDK部署服务器的端口号}/rdm_{应用ID}_app/services/index.html http://127.0.0.1:8003/rdm_123456_app/services/index.html OPEN_IAM_TOKEN_VALIDATION 是 设置是否开启Token认证。 true:开启Token认证。开启后,您还需要进行Token配置。 false:关闭Token认证,默认为FALSE。 FALSE RUNTIME_ENV_TYPE 是 设置应用运行态的运行环境,配置为“IES”。 IES SSF_RDS_TYPE 否 本地环境单点登录的数据库类型,默认为“mariadb”。 请根据实际的资源规划(数据建模引擎运行SDK)进行设置。 如果是MySQL类型数据库,设置为“mariadb”。 如果是PostgreSQL类型数据库,设置为“postgresql”。 mariadb SSF_DRIVER 否 本地环境单点登录的数据库驱动,默认为“org.mariadb.jdbc.Driver”。请根据实际的资源规划(数据建模引擎运行SDK)进行设置。 如果是MySQL类型数据库,设置为“org.mariadb.jdbc.Driver”。 如果是PostgreSQL类型数据库,设置为“org.postgresql.Driver”。 org.mariadb.jdbc.Driver XDM_SDK_DEPLOY_ENABLE 是 表示当前部署方式是否为SDK部署。 true:是SDK部署方式,默认为true。 false:不是SDK部署方式。 true
  • MongoDB配置 如果您已在资源规划(数据建模引擎运行SDK)中规划了MongoDB的资源/云服务,并希望使用xDM-F的“系统版本”功能,可参考如下说明进行配置。 配置参数 是否必选 参数说明 示例 mongodb.init 否 设置是否开启MongoDB。 true:开启MongoDB。开启后,需要设置“MONGODB_URI”和“MONGODB_DATABASE”参数。 false:关闭MongoDB,默认为false。 true MONGODB_URI 仅当“mongodb.init”为“true”时,此配置参数必选。 MongoDB的连接串。 mongodb://rwuser:admin@127.0.0.1:8635/test?authSource=admin MONGODB_DATABASE 仅当“mongodb.init”为“true”时,此配置参数必选。 MongoDB的库名。 test
  • Elasticsearch配置 如果您已在资源规划(数据建模引擎运行SDK)中规划了Elasticsearch的资源/云服务,并希望使用xDM-F的“搜索服务管理”功能,可参考如下说明进行配置。 配置参数 是否必选 参数说明 示例 ES_URL 是 Elasticsearch的连接串。 127.0.0.1:9200 ES_PORT 是 Elasticsearch的端口号。 9200 ES_USERNAME 是 Elasticsearch的用户名。 admin ES_PASSWORD 是 Elasticsearch的密码。 admin ES_SCHEMA 是 Elasticsearch的类型。 http
  • 资源规划(数据建模引擎运行SDK) 将数据建模引擎运行SDK部署至本地通用服务器,您需要规划其他云平台或本地资源的数量、名称以及主要参数等信息,资源规划详情如表1所示。 表1 数据建模引擎运行SDK资源规划详情 资源/云服务 是否必须 推荐规格 说明 物理机 虚拟机 弹性云服务器(ECS) 是 4U8G*2 用于部署数据建模引擎运行SDK。 数据库 云数据库 RDS 是 规格:4U8G 版本: MySQL 5.x MySQL 8.x PostgreSQL 13.x PostgreSQL 14.x 用于持久化实例数据。 Redis 分布式缓存服务(DCS) 是 规格:8G 版本: Redis 5.x Redis 6.x 用于缓存数据,提高查询效率。 MongoDB 文档数据库服务(DDS) 否 如果不选取,应用运行态将不支持“系统版本”功能。 规格:4U8G 版本:MongoDB 4.x 用于持久化非结构化JSON数据。 Elasticsearch 云搜索服务 CSS ) 否 如果不选取,应用运行态将不支持“搜索服务”功能。 规格:4U8G 版本:Elasticsearch7.10.2 用于语义搜索、分词搜索等操作。 Kafka 分布式消息服务Kafka版 否 如果不选取,应用运行态将不支持“同步至LinkX-F”功能。 规格:4U8G(cluster) 版本:kafka2.7 用于同步数据至LinkX-F。 物理磁盘 对象存储(OBS) 否 如果不选取,应用运行态的所有文件将存储在部署的服务器中。 按需配置 用于存储文件。 xDM-F的上传文件、导入/导出、离线同步等操作的文件可能会占用较大的本地磁盘空间,推荐选择OBS服务。 统一身份认证 (IAM) 否 如果不选取,应用运行态将无法使用IAM登录和token认证。 - 用于单点登录应用运行态页面。 用于应用运行态接口的token认证鉴权。 应用运维管理 AOM ) 否 如果不选取,应用运行态将不支持“系统日志”功能。 - 用于应用运行态日志上报。 用于全量数据服务接口异常的告警上报。 API网关(APIG) 否 如果不选取,应用运行态将无法使用API监控、管理、配置、流控等。 - 用于支持API监控、管理、配置、流控等。 数据加密 服务(DEW) 否 如果不选取,应用运行态将不支持“属性的值加密”功能。 - 用于加解密数据库存储的敏感数据,以密文形式存储。 目前xDM-F SDK仅支持在通用服务器中部署,不支持容器化部署。 在搭建数据建模引擎运行SDK环境时,您可以根据实际业务需求,结合性能、价格、工作负载等因素,做出性价比与稳定性最优的决策。例如,您可以自行搭建依赖资源,也可以在华为云购买依赖云服务。 非必须的依赖资源/云服务缺省时,将会导致xDM-F的部分功能无法使用。 父主题: 部署数据建模引擎运行SDK
  • 操作步骤 如下操作以CentOS 7.6 64位操作系统的ECS为例。 登录Linux弹性云服务器。 将已获取的SDK包和License文件上传至弹性云服务器,具体操作请参见上传文件到云服务器方式概览。 执行如下命令,将SDK包解压缩到部署服务器的工作目录。 tar -xvf {SDK包的名称} -C {部署服务器的工作目录} 例如,将SDK包“workflow-sdk-1.24.100-SNAPSHOT”解压缩到“/root/deploytest”路径下。 tar -xvf workflow-sdk-1.24.100-SNAPSHOT -C /root/deploytest 解压缩后的SDK包会在“/root/deploytest”路径下生成如下结构的目录文件。 |--- {iDME SDK版本号}-SNAPSHOT:包含流程编排服务和流程运行服务的依赖项。 |--- design:流程编排服务。 |--- lib:包含流程编排服务的所有依赖项。 |--- runtime:流程运行服务。 |--- lib:包含流程编排服务的所有依赖项。 执行如下命令,进入流程编排服务的工作目录,例如“/root/deploytest/1.24.100/design”。 cd /root/deploytest/1.24.100/design 执行如下命令,打开“application.properties”文件。 vim application.properties 按i切换至编辑模式,并根据实际的资源规划(流程引擎流程SDK),参考资源配置说明(流程引擎流程SDK),按需添加对应资源配置信息,完成流程编排服务的配置。 # 流程编排服务配置 basic.runtime.application.id=123456 basic.runtime.domain.id=123abc basic.runtime.protocol=http basic.server.domain=localhost.huawei.com server.servlet.context-path=/workflowDesign server.port=60001 store.s3.bucketname=basic-dabao-test store.s3.endpoint=obs.cn-north-7.ulanqab.huawei.com config.obs.endpoint=https://obs.cn-north-7.ulanqab.huawei.com store.s3.ak=123ABC store.s3.sk=456DEF basic.workspace.workflow-runtime.url=http://localhost.huawei.com:60004/workflowRuntime basic.runtime.domain=localhost.huawei.com:60004 workflow.prefix=/workflowRuntime security.group.privatekey=abc123 security.group.publickey=def456 xdm.license.licenseFile=/root/deploytest/license.dat basic.runtime.application.admin-list=123,456 # 数据库配置 application.dbType=pgsql datasource.jdbcDriverClass.1=org.postgresql.Driver datasource.user.1=root datasource.password.1=123456 datasource.url.1=jdbc:postgresql://120.0.0.7:5432/test?targetServerType=master¤tSchema=definition_test&stringtype=unspecified rdm.hibernate.dialect=com.huawei.it.rdm.configuration.PostgreSQL10XdmDialect rdm.dbType=postgresql # Redis配置 redis.redisClusterConfiguration.clusters=7.0.0.1:6379,7.0.0.2:6379 spring.redis.type=CLUSTER spring.redis.password=123456 # 单点登录配置 basic.auth.orgId.enable=TRUE basic.auth.orgId.redirect-url=http://localhost.huawei.com:${server.port}${server.servlet.context-path}/index.html ssf.login.oauth2.client-id=111aaa ssf.login.oauth2.client-secret=222bbb basic.runtime.org.code=333 # 其他配置 xdmf.init=TRUE 其中,“xdm.license.licenseFile”的License文件路径需与2的存放路径保持一致。 按Esc,输入:wq,保存文件并返回。 执行如下命令,进入流程运行服务的工作目录,例如“/root/deploytest/1.24.100/runtime”。 cd /root/deploytest/1.24.100/runtime 执行如下命令,打开“application.properties”文件。 vim application.properties 按i切换至编辑模式,并根据实际的资源规划(流程引擎流程SDK),参考资源配置说明(流程引擎流程SDK),按需添加对应资源配置信息,完成流程运行服务的配置。 # 流程运行服务配置 server.servlet.context-path=/workflowRuntime basic.server.domain=localhost.huawei.com server.port=60004 security.group.privatekey=abc security.group.publickey=efg xdm.license.licenseFile=/root/deploytest/license.dat basic.xdm.module.sync.service-url=http://localhost:8003/rdm_123_app/services basic.runtime.application.admin-list=123,456 basic.workspace.definition.url=http://localhost.huawei.com:60001/definitionmicro # OBS配置 store.s3.bucketname=testObs store.s3.endpoint=obs.cn-north-7.ulanqab.huawei.com config.obs.endpoint=https://obs.cn-north-7.ulanqab.huawei.com store.s3.ak=testak store.s3.sk=testsk # 数据库配置 application.dbType=pgsql datasource.jdbcDriverClass.1=org.postgresql.Driver datasource.user.1=admin datasource.password.1=admin datasource.url.1=jdbc:postgresql://127.0.0.1:8888/testdb?targetServerType=master¤tSchema=testschema&stringtype=unspecified rdm.hibernate.dialect=com.huawei.it.rdm.configuration.PostgreSQL10XdmDialect rdm.dbType=postgresql # redis配置 redis.redisClusterConfiguration.clusters=1.111.11.111:6379,2.222.22.222:6379 spring.redis.type=CLUSTER spring.redis.password=admin # 单点登录配置 basic.auth.orgId.enable=TRUE basic.auth.orgId.redirect-url=http://localhost.huawei.com:${server.port}${server.servlet.context-path}/index.html ssf.login.oauth2.client-id=abc123 ssf.login.oauth2.client-secret=abc123 basic.runtime.application.id=abc123 basic.runtime.domain.id=123 basic.runtime.org.code=333 # 其他配置 xdmf.init=TRUE 其中,“xdm.license.licenseFile”的License文件路径需与2的存放路径保持一致。 按Esc,输入:wq,保存文件并返回。 执行如下命令,将node相关依赖复制到指定目录“/usr/local”。 cp -r ./lib/node_modules /usr/local cd /usr/local/node_modules/.bin # 解压后符号链接丢失 需重新设置 ln -sf ../acorn/bin/acorn acorn ln -sf ../browserslist/cli.js browserslist ln -sf ../cssesc/bin/cssesc cssesc ln -sf ../errno/cli.js errno ln -sf ../esbuild/bin/esbuild esbuild ln -sf ../eslint/bin/eslint.js eslint ln -sf ../eslint-config-prettier/bin/cli.js eslint-config-prettier ln -sf ../he/bin/he he ln -sf ../image-size/bin/image-size.js image-size ln -sf ../jsesc/bin/jsesc jsesc ln -sf ../json5/lib/cli.js json5 ln -sf ../js-yaml/bin/js-yaml.js js-yaml ln -sf ../less/bin/lessc lessc ln -sf ../mime/cli.js mime ln -sf ../nanoid/bin/nanoid.cjs nanoid ln -sf ../needle/bin/needle needle ln -sf ../which/bin/node-which node-which ln -sf ../npm-run-all/bin/npm-run-all/index.js npm-run-all ln -sf ../@babel/parser/bin/babel-parser.js parser ln -sf ../pidtree/bin/pidtree.js pidtree ln -sf ../prettier/bin-prettier.js prettier ln -sf ../resolve/bin/resolve resolve ln -sf ../rimraf/bin.js rimraf ln -sf ../rollup/dist/bin/rollup rollup ln -sf ../npm-run-all/bin/run-p/index.js run-p ln -sf ../npm-run-all/bin/run-s/index.js run-s ln -sf ../semver/bin/semver.js semver ln -sf ../typescript/bin/tsc tsc ln -sf ../typescript/bin/tsserver tsserver ln -sf ../update-browserslist-db/cli.js update-browserslist-db ln -sf ../vite/bin/vite.js vite ln -sf ../vue-tsc/bin/vue-tsc.js vue-tsc chmod -R 700 /usr/local/node_modules 执行如下命令,创建“vueproject”文件夹。 mkdir -p /usr/local/vueproject chmod -R 700 /usr/local/vueproject 分别进入流程编排服务和流程运行服务的工作目录,依次执行如下命令,复制OLC配置文件。 如果您在设置流程编排服务和流程运行服务的“application.properties”文件时,未开启OLC限流降级,可跳过此步骤。 执行如下命令,创建临时文件夹“temp_unzip”,并解压缩OLC文件至该临时文件夹。 mkdir temp_unzip tar -xf ./lib/MetaWorkflowRuntimeService-1.4.0-SNAPSHOT-small.jar -C temp_unzip 执行如下命令,创建文件夹“olc”,并将“temp_unzip/olc/”目录下的所有文件复制到“olc”目录中。 mkdir olc cp -r temp_unzip/olc/* olc/ 执行如下命令,删除临时文件夹。 rm -rf temp_unzip 分别进入流程编排服务和流程运行服务的工作目录,执行如下命令,创建并启动脚本。 在流程编排服务的工作目录下,依次完成如下操作。 执行如下命令,创建启动流程编排服务的脚本文件。 vim startDesign.bash 按i切换至编辑模式,输入以下内容,设置启动流程编排服务脚本。 # 指定启动类 START_CLASS=com.huawei.it.plm.definitiondemo.WfDefinitionDemoApplication # 指定启动类所在路径,为lib目录下 LOAD_CLASSPATH=./lib/*:./ # 执行java命令,以配置文件application.properties启动服务,并把日志输入到当前目录下的xdm.log中 sh -c "java -Xms8g -Xmx8g -Dspring.config.additional-location=./application.properties -cp $LOAD_CLASSPATH $START_CLASS" 按Esc,输入:wq,保存文件并返回。 执行如下命令,设置“startDesign.bash”脚本文件权限。 chmod +x startDesign.bash 执行如下命令,启动流程编排服务。 ./startDesign.bash 在流程运行服务的工作目录,依次完成如下操作。 执行如下命令,创建启动流程运行服务的脚本文件。 vim startRuntime.bash 按i切换至编辑模式,输入以下内容,设置启动流程运行服务脚本。 # 指定启动类 START_CLASS=com.huawei.it.workflowdemo.WorkflowRuntimeApplication # 指定启动类所在路径,为lib目录下 LOAD_CLASSPATH=./lib/*:./ # 执行java命令,以配置文件application.properties启动服务,并把日志输入到当前目录下的xdm.log中 sh -c "java -Xms8g -Xmx8g -Dspring.config.additional-location=./application.properties -cp $LOAD_CLASSPATH $START_CLASS" 按Esc,输入:wq,保存文件并返回。 执行如下命令,设置“startRuntime.bash”脚本文件权限。 chmod +x startRuntime.bash 执行如下命令,启动流程运行服务。 .startRuntime.bash 完成部署后,流程引擎支持如下几种验证方式。您可以根据实际情况选择验证。 方式一:查看服务日志 执行如下命令,查看服务日志。 tail -f xdm.log 显示结果为类似如下信息,则说明启动成功。 流程编排服务 INFO WfDefinitionDemoApplication:61 - Started WfDefinitionDemoApplication in xxx seconds 流程运行服务 INFO WorkflowRuntimeApplication:61 - Started WorkflowRuntimeApplication in xxx seconds 方式二:调用指定接口 启动“startDesign.bash”和“startRuntime.bash”脚本文件后,约等待2分钟,调用如下健康检查接口,查询服务是否正常启动。 http://{部署服务器的IP地址}:{部署服务器的端口号}${流程编排服务文根/流程运行服务文根}/health/check 如果返回如下信息,则说明启动成功。 true 方式三:访问可视化页面 如果您已在资源规划(流程引擎流程SDK)中规划了单点登录的相关资源/云服务,并在部署时配置了单点登录信息,可以选择此方式进行验证。 在浏览器中访问如下地址,查看服务是否启动成功。 流程编排服务 http://{承载流程编排服务的服务器域名或IP地址}:{流程编排服务的端口号}/{流程编排服务文根}/index.html#/processApplicationForm?tenantId=-1&applicationId={应用ID} 流程运行服务 http://{承载流程运行服务的服务器域名或IP地址}:{流程运行服务的端口号}/{流程运行服务文根}/wfAdminIndex.html#/process-tasks?tenantId=-1&applicationId={应用ID} 转入流程引擎登录页面,输入登录账号和登录密码,成功登录并进入流程引擎页面,即表示启动成功。
  • Redis配置 分别在流程编排服务和流程运行服务配置文件中配置Redis时,其配置信息建议保持一致,以便实现Session登录共享。 配置参数 是否必选 参数说明 示例 spring.redis.host 是 Redis地址。 127.0.0.1 spring.redis.port 是 Redis端口。 6379 spring.redis.password 是 Redis密码。 admin spring.redis.type 是 Redis服务类型,支持如下两种模式。 SINGLE:单点模式或主备模式 CLUSTER:集群模式 SINGLE spring.redis.master.enable 否 仅当“spring.redis.type”为“SINGLE”时,此配置项必选。 设置是否开启Redis的主备模式。 true:开启Redis的主备模式。开启后,需要设置“spring.redis.master.slaves”参数。 false:关闭Redis的主备模式,默认为false。 true spring.redis.master.slaves 否 仅当“spring.redis.master.enable”为“true”时,此配置项必选。 Redis备节点地址。 127.0.0.1:7002,127.0.0.1:7003 redis.redisClusterConfiguration.clusters 否 仅当“spring.redis.type”为“CLUSTER”时,此配置项必选。 Redis集群地址。 127.0.0.1:6379,127.0.0.1:6380
  • 数据库配置 如下为MySQL、PostgreSQL和 GaussDB 类型数据库所需要的配置项。 分别在流程编排服务和流程运行服务配置文件中配置数据库信息时,其数据库类型(即“application.dbType”参数)需要保持一致,数据库连接串(即“datasource.url.1”参数)的DATABASE和SCHEMA不能相同。 如果您使用的是MySQL类型数据库,其Schema编码字符集推荐设置为utf8mb4,排序规则推荐设置为utf8mb4_general_ci。如果使用其他字符集,可能会存在语法不兼容问题。 配置参数 是否必选 参数说明 示例 application.dbType 是 数据库类型。 mysql:MySQL数据库 pgsql:PostgreSQL数据库 gaussdb: GaussDB数据库 mysql datasource.jdbcDriverClass.1 是 数据库驱动名称。 org.mariadb.jdbc.Driver datasource.user.1 是 数据库用户名。 admin datasource.password.1 是 数据库密码。 admin datasource.url.1 是 数据库连接串格式。 jdbc:mariadb://{IP}:{PORT}/{DATABASE}?allowMultiQueries=true&targetServerType=master&stringtype=unspecified&serverTimezone=Asia/Shanghai rdm.hibernate.dialect 是 Hibernate数据库方言。 com.huawei.it.rdm.configuration.XdmMySqlDialect rdm.dbType 是 Hibernate数据库方言对应的数据库类型。 mysql
  • 检查SDK包(可选) 为防止数据建模引擎运行SDK包在存储、下载、传输过程中被篡改,建议在部署前检查SDK包是否完整。 您可以使用如下校验函数进行校验,当生成的文件签名与您获取的SDK包文件签名一致时,表示SDK包完整。 public static String getSHA256(File file) { FileInputStream fileInputStream = null; try { MessageDigest messageDigest = MessageDigest.getInstance("SHA-256"); fileInputStream = new FileInputStream(file); byte[] buffer = new byte[8192]; int length; while ((length = fileInputStream.read(buffer)) != -1) { messageDigest.update(buffer, 0, length); } return new String(HexUtil.encodeHex(messageDigest.digest())); } catch (Exception ex) { log.error("getSHA256 error.", ex); return null; } finally { try { if (fileInputStream != null) { fileInputStream.close(); } } catch (IOException ex) { log.error("getSHA256 error when close inputStream.", ex); } } } 其中,“MessageDigest”为“java.security”组件,“HexUtil”为“hutool”组件。