| @@ -11,8 +11,8 @@ Nacos + Fegin + Gateway + (Spring Security + JWT + OAuth2) | |||
| 初始化sql位置 /sql | |||
| **地址:** 127.0.0.1:3306 | |||
| **用户名:** test **密码:** test | |||
| **地址:** 127.0.0.1 | |||
| **用户名:** test **密码:** zj12345678 | |||
| ### Nacos | |||
| @@ -1,10 +1,12 @@ | |||
| spring: | |||
| cloud: | |||
| nacos: | |||
| username: nacos | |||
| password: Tianshu | |||
| context-path: /nacos | |||
| config: | |||
| namespace: dubhe-prod | |||
| server-addr: 127.0.0.1:8848 | |||
| server-addr: 10.105.1.132:8848 | |||
| discovery: | |||
| namespace: dubhe-prod | |||
| server-addr: 127.0.0.1:8848 | |||
| server-addr: 10.105.1.132:8848 | |||
| @@ -0,0 +1,12 @@ | |||
| spring: | |||
| cloud: | |||
| nacos: | |||
| username: root | |||
| password: zjlab | |||
| context-path: /nacos | |||
| config: | |||
| namespace: dubhe-server-cloud-open-dev | |||
| server-addr: 10.101.12.15:8848 | |||
| discovery: | |||
| namespace: dubhe-server-cloud-open-dev | |||
| server-addr: 10.101.12.15:8848 | |||
| @@ -0,0 +1,12 @@ | |||
| spring: | |||
| cloud: | |||
| nacos: | |||
| username: nacos | |||
| password: Tianshu | |||
| context-path: /nacos | |||
| config: | |||
| namespace: dubhe-server-cloud-open-dev | |||
| server-addr: 10.105.1.132:8848 | |||
| discovery: | |||
| namespace: dubhe-server-cloud-open-dev | |||
| server-addr: 10.105.1.132:8848 | |||
| @@ -1,10 +1,9 @@ | |||
| spring: | |||
| cloud: | |||
| nacos: | |||
| context-path: /nacos | |||
| config: | |||
| namespace: dubhe-prod | |||
| namespace: dubhe-server-cloud-pre | |||
| server-addr: 127.0.0.1:8848 | |||
| discovery: | |||
| namespace: dubhe-prod | |||
| namespace: dubhe-server-cloud-pre | |||
| server-addr: 127.0.0.1:8848 | |||
| @@ -0,0 +1,12 @@ | |||
| spring: | |||
| cloud: | |||
| nacos: | |||
| username: nacos | |||
| password: Tianshu | |||
| context-path: /nacos | |||
| config: | |||
| namespace: dubhe-server-cloud-test | |||
| server-addr: 10.105.1.132:8848 | |||
| discovery: | |||
| namespace: dubhe-server-cloud-test | |||
| server-addr: 10.105.1.132:8848 | |||
| @@ -0,0 +1,7 @@ | |||
| spring: | |||
| cloud: | |||
| nacos: | |||
| config: | |||
| namespace: dubhe-server-istio-dev | |||
| discovery: | |||
| namespace: dubhe-server-istio-dev | |||
| @@ -0,0 +1,7 @@ | |||
| spring: | |||
| cloud: | |||
| nacos: | |||
| config: | |||
| namespace: dubhe-server-istio-test | |||
| discovery: | |||
| namespace: dubhe-server-istio-test | |||
| @@ -174,38 +174,43 @@ public class TerminalServiceImpl implements TerminalService { | |||
| @Override | |||
| public boolean preserve(TerminalPreserveDTO terminalPreserveDTO) { | |||
| Terminal terminal = terminalMapper.selectById(terminalPreserveDTO.getId()); | |||
| if (terminal == null){ | |||
| LogUtil.error(LogEnum.TERMINAL,"preserve terminal 数据不存在 terminalPreserveDTO: {}",terminalPreserveDTO); | |||
| if (checkImageExists(terminal.getImageProject(), terminalPreserveDTO.getImageName(), terminalPreserveDTO.getImageTag())) { | |||
| throw new BusinessException("请确认镜像版本号是否重复!"); | |||
| } | |||
| if (terminal == null) { | |||
| LogUtil.error(LogEnum.TERMINAL, "preserve terminal 数据不存在 terminalPreserveDTO: {}", terminalPreserveDTO); | |||
| throw new BusinessException("数据不存在"); | |||
| } | |||
| LambdaQueryWrapper<TerminalInfo> wrapper = new LambdaQueryWrapper<>(); | |||
| wrapper.eq(TerminalInfo::getTerminalId, terminalPreserveDTO.getId()); | |||
| List<TerminalInfo> terminalInfoList = terminalInfoMapper.selectList(wrapper); | |||
| if (CollectionUtils.isEmpty(terminalInfoList)){ | |||
| LogUtil.error(LogEnum.TERMINAL,"preserve terminalInfoList 数据不存在 terminalPreserveDTO: {}",terminalPreserveDTO); | |||
| if (CollectionUtils.isEmpty(terminalInfoList)) { | |||
| LogUtil.error(LogEnum.TERMINAL, "preserve terminalInfoList 数据不存在 terminalPreserveDTO: {}", terminalPreserveDTO); | |||
| throw new BusinessException("数据不存在"); | |||
| } | |||
| TerminalInfo masterTerminalInfo = null; | |||
| for (TerminalInfo terminalInfo : terminalInfoList) { | |||
| if (terminalInfo.isMasterFlag()){ | |||
| if (terminalInfo.isMasterFlag()) { | |||
| masterTerminalInfo = terminalInfo; | |||
| } | |||
| } | |||
| if (masterTerminalInfo == null){ | |||
| LogUtil.error(LogEnum.TERMINAL,"master 节点不存在 terminalPreserveDTO:{}",terminalPreserveDTO); | |||
| if (masterTerminalInfo == null) { | |||
| LogUtil.error(LogEnum.TERMINAL, "master 节点不存在 terminalPreserveDTO:{}", terminalPreserveDTO); | |||
| throw new BusinessException("master 节点不存在"); | |||
| } | |||
| BizPod pod = podApi.getWithResourceName(k8sNameTool.getNamespace(terminal.getCreateUserId()),masterTerminalInfo.getK8sResourceName()); | |||
| if (pod == null){ | |||
| LogUtil.error(LogEnum.TERMINAL,"master 容器不存在 terminalPreserveDTO:{}",terminalPreserveDTO); | |||
| BizPod pod = podApi.getWithResourceName(k8sNameTool.getNamespace(terminal.getCreateUserId()), masterTerminalInfo.getK8sResourceName()); | |||
| if (pod == null) { | |||
| LogUtil.error(LogEnum.TERMINAL, "master 容器不存在 terminalPreserveDTO:{}", terminalPreserveDTO); | |||
| throw new BusinessException("master 容器不存在"); | |||
| } | |||
| if (!PodPhaseEnum.RUNNING.getPhase().equals(pod.getPhase()) || pod.getPodIp() == null || StringUtils.isNotEmpty(pod.getContainerStateMessages())){ | |||
| LogUtil.error(LogEnum.TERMINAL,"master 容器未运行 terminalPreserveDTO:{}",terminalPreserveDTO); | |||
| if (!PodPhaseEnum.RUNNING.getPhase().equals(pod.getPhase()) || pod.getPodIp() == null || StringUtils.isNotEmpty(pod.getContainerStateMessages())) { | |||
| LogUtil.error(LogEnum.TERMINAL, "master 容器未运行 terminalPreserveDTO:{}", terminalPreserveDTO); | |||
| throw new BusinessException("master 容器未运行"); | |||
| } | |||
| String containerID = pod.getContainerId(); | |||
| @@ -217,7 +222,7 @@ public class TerminalServiceImpl implements TerminalService { | |||
| terminal.putStatusDetail(TerminalStatusEnum.SAVING.getDescription(),"commit 镜像..."); | |||
| terminalMapper.updateById(terminal); | |||
| DockerClient dockerClient = dockerClientFactory.getDockerClient(pod.getHostIP()); | |||
| String newImagePath = terminalConfig.getHarborAddress() + StrUtil.SLASH + terminal.getImageProject() + SymbolConstant.SLASH + terminal.getCreateUserId() + SymbolConstant.SLASH + terminalPreserveDTO.getImageName(); | |||
| String newImagePath = terminalConfig.getHarborAddress() + StrUtil.SLASH + terminal.getImageProject() + SymbolConstant.SLASH + terminalPreserveDTO.getImageName(); | |||
| try { | |||
| dockerApi.commit(dockerClient,containerID,newImagePath,terminalPreserveDTO.getImageTag()); | |||
| terminal.setStatus(null); | |||
| @@ -243,13 +248,24 @@ public class TerminalServiceImpl implements TerminalService { | |||
| return terminalMapper.updateById(terminal) > 0; | |||
| } | |||
| private boolean checkImageExists(String imageProject, String imageName, String imageTag) { | |||
| // 拼接镜像的完整路径 | |||
| String imageUrl = terminalConfig.getHarborAddress() + StrUtil.SLASH + imageProject + SymbolConstant.SLASH + imageName + StrUtil.COLON + imageTag; | |||
| // 校验该待保存镜像是否存在 | |||
| LambdaQueryWrapper<PtImage> queryWrapper = new LambdaQueryWrapper<>(); | |||
| queryWrapper.eq(PtImage::getImageUrl, imageUrl); | |||
| queryWrapper.ne(PtImage::getCreateUserId, userContextService.getCurUserId()); | |||
| return ptImageMapper.selectCount(queryWrapper) > 0; | |||
| } | |||
| @Override | |||
| @Transactional(rollbackFor = Exception.class) | |||
| public boolean delete(TerminalDTO terminalDTO) { | |||
| try{ | |||
| try { | |||
| Terminal terminal = terminalMapper.selectById(terminalDTO.getId()); | |||
| if (terminal == null){ | |||
| LogUtil.error(LogEnum.TERMINAL,"delete 数据不存在 terminalDTO: {}",terminalDTO); | |||
| if (terminal == null) { | |||
| LogUtil.error(LogEnum.TERMINAL, "delete 数据不存在 terminalDTO: {}", terminalDTO); | |||
| throw new BusinessException("数据不存在"); | |||
| } | |||
| terminal.setDeleted(true); | |||
| @@ -258,7 +274,7 @@ public class TerminalServiceImpl implements TerminalService { | |||
| terminalMapper.deleteById(terminal); | |||
| // 删除任务缓存 | |||
| String taskIdentify = (String) redisUtils.get(terminalIdPrefix + String.valueOf(terminal.getId())); | |||
| if (StringUtils.isNotEmpty(taskIdentify)){ | |||
| if (StringUtils.isNotEmpty(taskIdentify)) { | |||
| redisUtils.del(taskIdentify, terminalIdPrefix + String.valueOf(terminal.getId())); | |||
| } | |||
| String namespace = k8sNameTool.getNamespace(terminal.getCreateUserId()); | |||
| @@ -476,6 +492,13 @@ public class TerminalServiceImpl implements TerminalService { | |||
| return; | |||
| } | |||
| Terminal terminal = terminalMapper.selectById(terminalId); | |||
| List<TerminalInfo> terminalInfoList = terminalInfoMapper.selectByTerminalId(terminalId); | |||
| TerminalInfo masterTerminalInfo = null; | |||
| for (TerminalInfo info : terminalInfoList){ | |||
| if (info.isMasterFlag()){ | |||
| masterTerminalInfo = info; | |||
| } | |||
| } | |||
| if (terminal == null){ | |||
| LogUtil.error(LogEnum.TERMINAL,"pushImageComplete no terminal found id:{}",terminalId); | |||
| return; | |||
| @@ -501,6 +524,8 @@ public class TerminalServiceImpl implements TerminalService { | |||
| ptImage.setDeleted(false); | |||
| ptImage.setUpdateUserId(userId); | |||
| ptImage.setUpdateTime(new Timestamp(new java.util.Date().getTime())); | |||
| ptImage.setSshUser(masterTerminalInfo.getSshUser()); | |||
| ptImage.setSshPwd(masterTerminalInfo.getSshPassword()); | |||
| if (ptImage.getId() != null){ | |||
| ptImageMapper.updateById(ptImage); | |||
| @@ -33,11 +33,11 @@ ribbon: | |||
| dubhe-proxy: | |||
| visual: | |||
| keyword: visual | |||
| server: 127.0.0.1 | |||
| server: 10.5.26.88 | |||
| port: 9898 | |||
| refine: | |||
| keyword: refine | |||
| server: 127.0.0.1 | |||
| server: localhost | |||
| port: 9797 | |||
| ## 测试标识 | |||
| debug: | |||
| @@ -17,7 +17,7 @@ spring: | |||
| redis: | |||
| #数据库索引 | |||
| database: 4 | |||
| host: 127.0.0.1 | |||
| host: 10.5.26.88 | |||
| port: 6379 | |||
| password: | |||
| #连接超时时间 | |||
| @@ -26,9 +26,9 @@ spring: | |||
| druid: | |||
| db-type: com.alibaba.druid.pool.DruidDataSource | |||
| driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy | |||
| url: jdbc:log4jdbc:mysql://127.0.0.1:3306/dubhe-cloud-prod?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&useInformationSchema=true | |||
| url: jdbc:log4jdbc:mysql://127.0.0.1/dubhe-cloud-test?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&useInformationSchema=true | |||
| username: test | |||
| password: test | |||
| password: zj12345678 | |||
| # 初始化配置 | |||
| initial-size: 3 | |||
| @@ -67,17 +67,17 @@ logging.config: | |||
| # 文件存储服务配置 | |||
| storage: | |||
| # 文件存储服务暴露的IP地址 如需测试需修改为合适的地址 | |||
| file-store: 127.0.0.1 | |||
| file-store: 10.5.26.234 | |||
| # 文件存储服务端 共享目录 | |||
| file-store-root-path: /nfs/ | |||
| file-store-root-windows-path: "Z:" | |||
| # minio配置 | |||
| minio: | |||
| url: http://127.0.0.1:9000/ | |||
| url: http://10.5.26.90:9000/ | |||
| accessKey: admin | |||
| secretKey: 123@abc.com | |||
| bucketName: dubhe-prod | |||
| bucketName: dubhe-cloud-test | |||
| presignedUrlExpiryTime: 300 | |||
| annotation: /annotation/ | |||
| @@ -121,13 +121,6 @@ feign: | |||
| okhttp: | |||
| enabled: false | |||
| #配置harbor | |||
| harbor: | |||
| address: harbor.dubhe.ai | |||
| username: admin | |||
| password: Harbor12345 | |||
| model-name: train | |||
| #配置dev环境单元测试用户名与密码 | |||
| unittest: | |||
| username: admin | |||
| @@ -136,10 +129,10 @@ unittest: | |||
| model: | |||
| measuring: | |||
| url: | |||
| package: http://127.0.0.1:32760/model_measure/package | |||
| json: http://127.0.0.1:32760/model_measure/measure | |||
| package: http://10.5.26.90:32760/model_measure/package | |||
| json: http://10.5.26.90:32760/model_measure/measure | |||
| converter: | |||
| url: http://127.0.0.1:32230/model_convert | |||
| url: http://10.5.26.90:32230/model_convert | |||
| user: | |||
| config: | |||
| @@ -5,12 +5,12 @@ k8s: | |||
| # k8s集群配置文件 | |||
| kubeconfig: kubeconfig_test | |||
| # nfs服务暴露的IP地址 如需测试需修改为合适的地址 | |||
| nfs: 127.0.0.1 | |||
| nfs: 10.5.26.234 | |||
| #nfs服务端 共享目录 | |||
| nfs-root-path: /nfs/ | |||
| nfs-root-windows-path: "Z:" | |||
| # 文件存储服务暴露的IP地址 如需测试需修改为合适的地址 | |||
| file-store: 127.0.0.1 | |||
| file-store: 10.5.26.234 | |||
| #文件存储服务端 共享目录 | |||
| file-store-root-path: /nfs/ | |||
| file-store-root-windows-path: "Z:" | |||
| @@ -18,9 +18,17 @@ k8s: | |||
| namespace: namespace | |||
| # k8s ingress-controller 对外grpc port | |||
| https-port: 31287 | |||
| # k8s 模型部署配置 | |||
| serving: | |||
| # 在线服务模型部署后容器域名(k8s ingress域名),解析地址为k8s集群地址,如需测试需修改为合适的域名 | |||
| host: servingtest.dubhe.club | |||
| # tls 证书 crt | |||
| tls-crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURYekNDQWtlZ0F3SUJBZ0lKQUp3Z0VCYlhGdk9HTUEwR0NTcUdTSWIzRFFFQkN3VUFNRVl4SVRBZkJnTlYKQkFNTUdDb3VjMlZ5ZG1sdVozUmxjM1F1WkhWaWFHVXVZMngxWWpFaE1COEdBMVVFQ2d3WUtpNXpaWEoyYVc1bgpkR1Z6ZEM1a2RXSm9aUzVqYkhWaU1CNFhEVEl4TURVeE9UQTNNRGN5TTFvWERUTXhNRFV4TnpBM01EY3lNMW93ClJqRWhNQjhHQTFVRUF3d1lLaTV6WlhKMmFXNW5kR1Z6ZEM1a2RXSm9aUzVqYkhWaU1TRXdId1lEVlFRS0RCZ3EKTG5ObGNuWnBibWQwWlhOMExtUjFZbWhsTG1Oc2RXSXdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBdwpnZ0VLQW9JQkFRREwxNDBMUXk2dXFHUi9WckVXeVNUdFppVGwvOEo1eGlHenB5WUJtTldUTzVQSTczTHRKbXdkCmFPMGNCNXhBcy96SXlpYjM3b0loR0FQejZNWlBBZjJEeUMxNXJLb3Via3h2Vkswa3hJY0k2L1dsWFUxMjdZZzQKdUllNzJEbFNIak9tbStVQ2JDWkxtc0VlQVI2S3RwNW9lVUFUQVgwOWEyL012ZkdtNU1URWZFSVplTENoL21rVAppZGFKcnl0NThwYVFLZmpJcVdKQnlnUGpJYlFMUlZnSG5mckIzdlB5b3RmMFBZZWVKVHlEa1lNQnNzblMxS044ClY2Qldvb2dzWUxQcCs2VE1wOXBHS3pBdksxdXJMWkFsa1N0SUw1TkppQWJOZ1lMOXN1UVE3OU9aano2c1ZrbWQKait6aHZHSGUrYk9zdlBrYmtqNS9lbzQyQUdQcW9zdTlBZ01CQUFHalVEQk9NQjBHQTFVZERnUVdCQlFzWDlCegpxVEhNN21xMUJrOFRNWXgzY1ZRaFB6QWZCZ05WSFNNRUdEQVdnQlFzWDlCenFUSE03bXExQms4VE1ZeDNjVlFoClB6QU1CZ05WSFJNRUJUQURBUUgvTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFCc1BJSUpPMm1qUFNJV1lTaloKQmdjbFJoUTRudEkvdjFWczVjb0xOVzlrZUhqUGlCYlhvVzgzZExqSWh5ZmVYSk93Y3lpRnJkaVlZeVV5SEprTAprTmlxajRxVmZuaGkwcUoweDQyN3MzUG40TkZZRnNJYVM2OHA1WlZpUlJSZGNWY0dIMkNiRUxzYW41ZUhkNExYCnlTUUdDZmVkUVdtMEVyWWxDMGJWSER1d3RCa0NzWElPRmJEb0tSMW5wMDc3YlBrbEpIRS9rUi82QVpJR3hFM28KbDd1SDVRWWRsWldoanY5WFZRM1plVnZLUzVkM1pHYjcxZ0dwSEU2b2hmL1IweVhoS1RadUREYkhjK2lFc1dWbQowa24xenlvTUVHSW5nM0N6cVk4aE1tdHhRVStLekJrSEliVzh0UnkrS0MxZ2ZvNktFa01JVGpjK2pwQU4wZ2VDCm1LWWYKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo= | |||
| # tls 证书 key | |||
| tls-key: LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRREwxNDBMUXk2dXFHUi8KVnJFV3lTVHRaaVRsLzhKNXhpR3pweVlCbU5XVE81UEk3M0x0Sm13ZGFPMGNCNXhBcy96SXlpYjM3b0loR0FQego2TVpQQWYyRHlDMTVyS291Ymt4dlZLMGt4SWNJNi9XbFhVMTI3WWc0dUllNzJEbFNIak9tbStVQ2JDWkxtc0VlCkFSNkt0cDVvZVVBVEFYMDlhMi9NdmZHbTVNVEVmRUlaZUxDaC9ta1RpZGFKcnl0NThwYVFLZmpJcVdKQnlnUGoKSWJRTFJWZ0huZnJCM3ZQeW90ZjBQWWVlSlR5RGtZTUJzc25TMUtOOFY2Qldvb2dzWUxQcCs2VE1wOXBHS3pBdgpLMXVyTFpBbGtTdElMNU5KaUFiTmdZTDlzdVFRNzlPWmp6NnNWa21kait6aHZHSGUrYk9zdlBrYmtqNS9lbzQyCkFHUHFvc3U5QWdNQkFBRUNnZ0VCQUtJRG83WDA0dEN0UkpzMVV6RnlFK2lnUyttR201TGdHSDlLOWRsRkdWT1oKZ2IrdUdhRkY3WjUrZkI3UUthLy9ub1lVcmw1VzhwVE5HcTh0THhreTBzV0FRQ3k2UU5VQWs3M1ZCbnozdXdBcgpVeVhvLzUzcjgxNXB4SEJYems5bmM5UVRpalNmc3R4YWx1MTdKRVJLRzZPYjQ0SjNwNHcrclRDRk0rRmJhTTFsCkxuWUh2bGR4ZnRoMmhBWHdaU2dFYXdCNXRBbTY2YnIxbUc4ZW5saEIvbisrY09iYkZWYnk4OUcyUmVMMjJxdHIKa0R0RHVQOGY1NVdxNVB0a25TRE4zaGoweEYydG9aSC80RHpKOWVibVNMVHpUK1pQSjVjK1dlZ3BNdCtVd3YzbwpNNFdGQnFUUUZSR0MyQVJTaXVFTEdtRUJnVk50VDRmRVhRSmFveGJKeWYwQ2dZRUE2MDRJOXlDZUttY2hjSEJvCmRFeFJ2bnNhcGhwbkJqc3pHazZIWVhhTFI0NGpvalRCWm5ZWVhHYklreDdZaytla1RQYjMwRUpzQjlRRmxpVUUKQ25oZXhCS0pjTk5VcTdWdHFGTXBhT0JKWG9Md0cySmVwVmNhN1MzcFo3THZMWGRQR2wvOXFTTW5pMXROV1kxdwpmTGl1Zzlqb3JCeEJaL250NU43MDJFTWpaL2NDZ1lFQTNjVWV2U3U1VmlHaGNPSmFVSlBoUjdnclViMW9EWDF4CnROdDdXNS9pNkFyNDBsY1FZK2RCcll2VEljRllEL3piZnRWNGFnMDhsLzVHamxQK2grWW01QWNRb1c1Z3BaaHgKd1ZhTFFzRTg4ZUdPY2pLakVqd2krTEZRNE5HRmdXdU9pc1hZWk5GTlBvT1JDbHRUbkRMRnFjS0FNY2tBTEgwVwpRT2poTkJqeGhPc0NnWUFRaHRPVVgrTWNBVkJVOEdBMXd1Sis2WENPdUE0Q1h3Z1EwZkVxUkVRMkMyS3ZVdHMrCmtnN1Y5cFloMXluSkFaMEZsdGNDOXBkVjJXdG5CMFNJWTduc05ZMFhzcEFnMjBaUGF6L2VVTnAyVytYM1ZtcGwKWEgvVXBzUGM5N0ZhMVNWbUtkWE1HbDc5cDdVQUZESVJZSHRKWVdPK0t1SGhKcW14eUlNVDZXdEVNd0tCZ0R0ZAo4WVNpbDlLKzNnRGlGMXRLdXh2LzZWalFZM0o1Q2w5b0FmWGRMMWorMXUwMzhXTk5IUC9nVm56S3pWQTZXR2Z6CnJYQjJhcW9sbjYycVBwRVN3NFozZmJRNVlCWDBZVDlvYzQ5RE81VmsxRVV0MlFtZ241d0RtNnNUYTdIaG9SNzEKSjZDVmh5QWRDRTdGYy9SMGd3V1cwOHFBREZQY2lJQ0gxd0dqUzhSUkFvR0JBTklUNW5yTzNwZmNKYTROZWFZeApKMzd5RzFodUJGcWdRRWpVU3pmbHQ3UWwvNjI3LzNWT2lIRjVqSkhES0JqODBEdzh1UjhoQ2VhWDY2WkJqUmxKCk5vOUEvUm43Q2F4YUl2dkNjWG4rUW5oLy9BVlNHRzU4WWI2UUlQNFVqT1RKOW1GUlFFajN0cm9KNnVpL3FCZTQKUkhXSE44WC91Z242dzZUSGRWNktJbSs4Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K | |||
| # elasticsearch暴露的服务地址 | |||
| elasticsearch: | |||
| hostlist: ${eshostlist:127.0.0.1:30498} | |||
| hostlist: ${eshostlist:10.5.26.90:30498} | |||
| # 日志采集配置信息 | |||
| log: | |||
| type: _doc | |||
| @@ -38,9 +46,9 @@ k8s: | |||
| # 展示Pod的CPU使用率,Memory使用量,GPU使用率的grafana地址 | |||
| pod: | |||
| metrics: | |||
| grafanaUrl: http://127.0.0.1:30006/d/job/monitor?orgId=1&refresh=5s&kiosk&var-pod= | |||
| grafanaUrl: http://10.5.26.90:30006/d/job/monitor?orgId=1&refresh=5s&kiosk&var-pod= | |||
| prometheus: | |||
| url: http://127.0.0.1:30003/ | |||
| url: http://10.5.26.90:30003/ | |||
| query: api/v1/query | |||
| query-range: api/v1/query_range | |||
| gpu-query-param: sum(DCGM_FI_DEV_GPU_UTIL{pod="pod-name-placeholder"})by(pod,UUID) | |||
| @@ -66,12 +74,37 @@ k8s: | |||
| # minio配置 | |||
| minio: | |||
| url: http://127.0.0.1:9000/ | |||
| url: http://10.5.26.90:9000/ | |||
| accessKey: admin | |||
| secretKey: 123@abc.com | |||
| bucketName: dubhe-prod | |||
| bucketName: dubhe-cloud-test | |||
| presignedUrlExpiryTime: 300 | |||
| annotation: /annotation/ | |||
| docker: | |||
| remote-api-port: 2375 | |||
| clusters: | |||
| - cluster: | |||
| certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM1ekNDQWMrZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJeE1USXdPREE0TWpnd00xb1hEVE14TVRJd05qQTRNamd3TTFvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTWVKCkRjTThQUHFlV0tHazE3S2JtN3kwbzkzTGtxb2w5dG1QbVN0YTVyUXZSWU9rOFJYK2QvVEpVaXE2S2c4NXFyMGUKZFZ3SG5vTjg3Q0VFbXhOK2o4OUhlcnY1dDFaRFBHMVRHS3U5N1l1WnV4RCt2R1hGQkhDZ2ViT0s0Zmc0am1iSgpwUmlJeCtUZmlyUjM4TlVhZTBkR1g5c1o1TWF2NkhiSVVEK2hNTm9VU2pyWUZ2bTcxbGtYdlhVWW9wd1FSR3FvCkZiWG5KTFFVakd3UFFRclRCQ0wycFE2c1dGbkpkQ0VBSHhXU0grTUN4cXV0L25SUHhORlFOWGFMZmU3clB3a3MKd3NrVlFlTzgyL205aFZkWnNnNUFnRDJtTS9jS2VybE9acVBGcWFEaFBoYnpkRzF4QjRtcVZmTGJVUUppa3I1SQpYQ1FhTWR2c2FRTnhPcmNPOHQwQ0F3RUFBYU5DTUVBd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0hRWURWUjBPQkJZRUZFek92OGhVUGtRYS90bGNhQTE0OERmcmF5TXRNQTBHQ1NxR1NJYjMKRFFFQkN3VUFBNElCQVFBMTFqcDR4V1hyZkRPNDJlblBpdm9HNXZxY3hqbysxaktZV1YxR1NIdHNVdlBNU1UzVAptdVFCQWU2VVRzM0JtSTgzMUQ4aFd4cDlka3BkMlhWbCt6OTZabFIvQ2Qrb3NSWWE1MUpZd2RvMUp4Z29hbUk2CmszOS9sNTRBQVpWMkFPWWNQU0pKNkNzdVcxZ2NTMDlaTlA0djlhK0NIKzY5OVpQMGlhUStEc0FPRFJzUnhRcVMKK08zNUU4K0RzRjBSOWZCYlhvbkxiK05VSHlTQ2pQSnVVT21lS0RYMFpQQm81blNscmh5cUIxbHVNZnhEaUltdgpIU3BscXB4M1duMzJnNEZYOCs3clZBNUZjWkIvNDg3bUZmdG1CTXc3aENidlFJeWY2Ymd6VTUycUdaeFZGTTVjCnUxeEZyRXlXaFA1eElJY09lY1M1RCtJa29ZOHUyT3ozQldEeQotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg== | |||
| server: https://10.105.0.6:6443 | |||
| name: kubernetes | |||
| contexts: | |||
| - context: | |||
| cluster: kubernetes | |||
| user: kubernetes-admin | |||
| name: kubernetes-admin@kubernetes | |||
| current-context: kubernetes-admin@kubernetes | |||
| kind: Config | |||
| preferences: {} | |||
| users: | |||
| - name: kubernetes-admin | |||
| user: | |||
| client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURFekNDQWZ1Z0F3SUJBZ0lJQjUxN3hkT3V2cnd3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TVRFeU1EZ3dPREk0TUROYUZ3MHlNakV5TURnd09ESTRNRFZhTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXlFaURrYVJ1WmVUbVJ4WmsKRkxUbkRPMUxIM1k5dE80WXpXREt4QVA2bFphTUJwZXJWRWpiU1VMOGIzdG9WWFppVnVnaHhvMzRHdjF4dlJKLwpDN3NhWGVaU3EzcTVMcEFhQjBrelRDNFRtbGtrdE03YkJTZFNhMG9SeGJXTUdvVEM0WUVBckJCNS9FRmdUYjRCCnE4aG1USUlmdUcwa05sNmd5a2M4UnhSL3N5Q1lSVjZCTTZTYWFzODR1Tmx3ZU9vV2RaQkQ0UVZQbzJueUI4NGQKUnc0d0w2VEQ5MlUwMG5KcjY3bUtpTjhBNGtBampFbWNrNm1JbHdsUTB2MHR5Uk8zTFBXZFdNazZ5QVIyVEZ6RgpBZCs4dUd5L3VDQlB6UDlVcDFERkI5TDF0Y25sd1lTeTYycGdFWC9wMzl6ZjZ0RFpZRVJwK0Jpd21Eb3RmVmFaClNLam9md0lEQVFBQm8wZ3dSakFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0h3WURWUjBqQkJnd0ZvQVVUTTYveUZRK1JCcisyVnhvRFhqd04rdHJJeTB3RFFZSktvWklodmNOQVFFTApCUUFEZ2dFQkFCQ01US2VEV1dHa0VFZWp6dlN3TTFKZit0QUJaYklrd0FoZEt1MjFnUkxyQktzbHQ4Y0NHMG1KCmc3eDhndFJYcW0xRGlEU01DMnlWMW9OWTFSdGlLZVhZT29RbVY2SFh2bEQybWZyY2VzS3VSNHlIbCtlWHcyL1AKb2FLZVFEM21yVm9ZZ1ZMMVNqOWpzcDRBa1hEM1ErUzdKYXN4Y3MvVkR3SmlRQzhGamkzaWZMVFFKQkxCdm1WVwpCZ3QvM0xPZ1lCdWxYRWg3cFlQUzduTVFqNFpxQ0QwWTNJOENicUM0VGlZQjB1aTZlbVRDd3cvRnBNSzNIRFZ4CnZOd3FPRHBaWW5DK0IxSzR5RUk4NGIvM1o3ZXA0MUE1NGk3QkpxTklORUVtRjdGcmpQQy91V1RuYlpzVUNFQjAKWTFUR1Y3czNBUTZMZXNCRFF6UVRzVnBENWFRRk9VYz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo= | |||
| client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb2dJQkFBS0NBUUVBeUVpRGthUnVaZVRtUnhaa0ZMVG5ETzFMSDNZOXRPNFl6V0RLeEFQNmxaYU1CcGVyClZFamJTVUw4YjN0b1ZYWmlWdWdoeG8zNEd2MXh2UkovQzdzYVhlWlNxM3E1THBBYUIwa3pUQzRUbWxra3RNN2IKQlNkU2Ewb1J4YldNR29UQzRZRUFyQkI1L0VGZ1RiNEJxOGhtVElJZnVHMGtObDZneWtjOFJ4Ui9zeUNZUlY2QgpNNlNhYXM4NHVObHdlT29XZFpCRDRRVlBvMm55Qjg0ZFJ3NHdMNlREOTJVMDBuSnI2N21LaU44QTRrQWpqRW1jCms2bUlsd2xRMHYwdHlSTzNMUFdkV01rNnlBUjJURnpGQWQrOHVHeS91Q0JQelA5VXAxREZCOUwxdGNubHdZU3kKNjJwZ0VYL3AzOXpmNnREWllFUnArQml3bURvdGZWYVpTS2pvZndJREFRQUJBb0lCQUgrbHY3ME9TSkpHZmdHbQpvcWlUMTRKa3BuRnA0ZEF6dzdqNXpLRjdTN1VWR3krRWNOeXFCcUM5d2JlbnRvcHBoaW1Qang5R0VtL1pRaWxYCjVZTHJmOVdDMndPUmx2NjNOdStYMXNyaHZ2cXJmL3FBc0JTcnlCcTdQWEo5ejhxQy9OWE9hMGcreEJCaTltYjIKQjRpZGs1MkZmWVFFZzRUbmNLRWJINjdKd00yL2dmZ3BXMGNEd0RiNVc2aHIxclUzNkNGc1AyVTlEYytMVkV5cQpvK3FZZ0RFZ0MxSWxucGVIdzROejJmK3RkbFpLVHN5dzV1ZG5xVm1kWGNkLyszR3NvQVM3Q25DTmQ3a1pKQ1BPClNpRktZSDZZUS93ZmJLZjFibC84eERXU1UvKytQUTZyODJGV21mMFBjd3ExbWV5OXIvUW1kaHc5YndiamkxVDQKdURjSzUva0NnWUVBOURIZi8xZnN4czlqVldoaE94UXFzUFN3UzdDbVZYcHV2S2Q3MjlMRGFIV1VQT3E5Y0l4QQpaV01Ibi9EbEN3U2dxaitPL0FNSDdaQVpPbDV5V2RiZFVEM2I0WWVKLzlubXdvN25ReG9ndTlUdTlNZEVnM0pvCm1wTzVqQTYzYTE2Z0sxRWlmTDJkdllRQkJGQzg2aDJzYlV0WHNGRDV6R3QzTU96bVF6SFFQM3NDZ1lFQTBmY3gKMzlUR0YrZFdVb3MzOXRLaE9MZVpFaWtUSmtqckdrTUdldHpYNEVCRE5oRUUvdWNkYUZCWmJoU3ltZHAwMmtKNgpKQkpvaEJRaEN4Zk9nUXhRdFp2dUt3WUMvTEYrMVF1TG1MaERGV2NEa05Ma1E0RWU5WVRFV1VuNE9NNkJJTmVOCldseklzcncyeHRvaUVoMXZFWW92ODdobEZCQ0E4N0xYSElpa1NjMENnWUFnZ1pNajFueDZhcGo2Z1k2UDRydGMKR3ZaczNQTUhaZWpmekJ1OHcyMm50aDhwak1YeStYaUpCb201VE1Qd2w0a2JvS0pVQWNOSWFHb3pUdWRCOWt3Mwpwa1JpM1R3Tmh1QWsvZ2ppOGROeHJZS3hxdVQvNm5icVBNZnlVUE14bzhNR2dTSnFJSU9pK3JOMzg1ZHlRc2oxCk01WlVyakxTZDJ2Q1k0YXpZeW9waVFLQmdBS0RBb1c2OWVPelVNVU1CVTllbGE4b0F4ekVnUVlrT1N2SFFYeVcKeDc1WEJuYlBIVkF2VTVxNzIxWUZ5VjB0ejlnTWs0bDY3dVVsbUgrWmVVN3g1c1ZGYUVQN2ZtMm5jZXo2aG1EOQpVMUFlTzF5d0tTcmxrSWsvWFZuMEdKUVZaRllRUGhDbXEzLzM0Ry9nakNmTFVsalRYbDk4QlRtSU9RS3hVUUYyCllRREJBb0dBRTB5Q0NzcFE3Y1lYaVFyQnF4VVkxU2N5SjViVm1iaFN5cmgyb3FiUmRMRmxzWHFjUnBIK2tORjYKdXdjUzhZalJodmdQazgyZm1QcXlieE5ZWGxTYWoydGdzSFdpcGNETXZSM1dtSlQzTGpjeXZObDh6cUlkZDNBdQpJT1pNeG0vWWVMemNFOUdteDRsQkhmMnU5MkhiRjRiSCtqeVp3d3RWcHpRdmphaFF6dGs9Ci0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg== | |||
| #配置harbor | |||
| harbor: | |||
| address: harbor.dubhe.ai | |||
| username: admin | |||
| password: Harbor12345 | |||
| @@ -6,9 +6,9 @@ spring: | |||
| master: | |||
| type: com.alibaba.druid.pool.DruidDataSource | |||
| driver-class-name: net.sf.log4jdbc.sql.jdbcapi.DriverSpy | |||
| url: jdbc:log4jdbc:mysql://127.0.0.1:3306/dubhe-cloud-prod?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&useInformationSchema=true | |||
| url: jdbc:log4jdbc:mysql://127.0.0.1/dubhe-cloud-test?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&allowMultiQueries=true&useInformationSchema=true | |||
| username: test | |||
| password: test | |||
| password: zj12345678 | |||
| props: | |||
| sql: | |||
| show: true | |||
| @@ -18,7 +18,7 @@ data: | |||
| # 数据处理医学影像数据集dcm服务器配置,查看影像功能需要使用该服务 | |||
| dcm: | |||
| host: 127.0.0.1 | |||
| host: 10.5.29.100 | |||
| port: 11112 | |||
| # 资源回收 | |||
| @@ -27,13 +27,13 @@ recycle: | |||
| # 数据处理医学影像数据集dcm服务器配置,查看影像功能需要使用该服务 | |||
| dcm: | |||
| host: 127.0.0.1 | |||
| host: 10.5.29.100 | |||
| port: 11112 | |||
| # ES服务地址及端口 | |||
| es: | |||
| host: 127.0.0.1 | |||
| serverPort: 31321 | |||
| transportPort: 31322 | |||
| clusterName: kubenets-logging | |||
| host: 10.5.29.100 | |||
| serverPort: 9200 | |||
| transportPort: 9300 | |||
| clusterName: docker-cluster | |||
| index: dataset_text_test | |||
| @@ -32,11 +32,11 @@ spring: | |||
| precise-algorithm-class-name: org.dubhe.data.util.MyPreciseShardingAlgorithm | |||
| k8s: | |||
| # nfs服务暴露的IP地址 如需测试需修改为合适的地址 | |||
| nfs: 127.0.0.1 | |||
| nfs: 10.5.26.234 | |||
| #nfs服务端 共享目录 | |||
| nfs-root-path: /nfs/ | |||
| nfs-root-windows-path: "Z:" | |||
| file-store: 127.0.0.1 | |||
| file-store: 10.5.26.234 | |||
| #文件存储服务端 共享目录 | |||
| file-store-root-path: /nfs/ | |||
| file-store-root-windows-path: "Z:" | |||
| @@ -80,8 +80,8 @@ recycle: | |||
| # ES服务地址及端口 | |||
| es: | |||
| host: 127.0.0.1 | |||
| serverPort: 32321 | |||
| transportPort: 32322 | |||
| clusterName: kubenets-logging | |||
| host: 10.5.29.100 | |||
| serverPort: 9200 | |||
| transportPort: 9300 | |||
| clusterName: docker-cluster | |||
| index: dataset_text_test | |||
| @@ -23,7 +23,7 @@ management: | |||
| serving: | |||
| gateway: | |||
| # 在线服务http接口 host:port,解析地址为serving网关部署的服务地址 | |||
| postfixUrl: 127.0.0.1:8081 | |||
| postfixUrl: 10.101.12.41:8081 | |||
| token: | |||
| secret-key: 1n3512x | |||
| expire-seconds: 108000 | |||
| @@ -5,7 +5,7 @@ terminal: | |||
| # 用户workspace目录 | |||
| workspace-dir: "/workspace" | |||
| # ssh主机 | |||
| ssh-host: 127.0.0.1 | |||
| ssh-host: 10.5.26.91 | |||
| # 可匿名访问路径 | |||
| security: | |||
| @@ -3,7 +3,7 @@ spring: | |||
| redis: | |||
| #数据库索引 | |||
| database: 1 | |||
| host: 127.0.0.1 | |||
| host: 10.5.26.88 | |||
| port: 6379 | |||
| password: | |||
| #连接超时时间 | |||
| @@ -12,9 +12,9 @@ spring: | |||
| druid: | |||
| db-type: com.alibaba.druid.pool.DruidDataSource | |||
| driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy | |||
| url: jdbc:log4jdbc:mysql://127.0.0.1:3306/dubhe-cloud-prod?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&allowMultiQueries=true | |||
| url: jdbc:log4jdbc:mysql://127.0.0.1/dubhe-cloud-test?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false&allowMultiQueries=true | |||
| username: test | |||
| password: test | |||
| password: zj12345678 | |||
| # 初始化配置 | |||
| initial-size: 3 | |||
| @@ -3,7 +3,7 @@ spring: | |||
| redis: | |||
| #数据库索引 | |||
| database: 1 | |||
| host: 127.0.0.1 | |||
| host: 10.5.26.88 | |||
| port: 6379 | |||
| password: | |||
| #连接超时时间 | |||
| @@ -16,10 +16,10 @@ model: | |||
| atlas: | |||
| url: | |||
| # 流服务地址 | |||
| rtmp: rtmp://127.0.0.1:1935/live/ | |||
| rtmp: rtmp://10.5.30.42:1935/live/ | |||
| # vms接口地址 | |||
| vms: http://127.0.0.1:8000/api/vms | |||
| vms: http://10.105.10.51:8000/api/vms | |||
| # 推理服务地址 | |||
| video-serve: http://127.0.0.1:32761/video | |||
| video-serve: http://10.105.0.6:32761/video | |||
| # 拉流地址,需要拼接streamId | |||
| stream: http://127.0.0.1:8055/live?port=1935&app=live&stream= | |||
| stream: http://10.5.30.42:8055/live?port=1935&app=live&stream= | |||