martin há 3 anos atrás
pai
commit
d8330f5e4b

+ 10 - 0
simulation-gateway/src/main/resources/bootstrap-test.yaml

@@ -0,0 +1,10 @@
+spring:
+  cloud:
+    nacos:
+      discovery:
+        server-addr: 47.93.135.21:8848
+        namespace: 3698bfc2-a612-487a-b2a2-aaad16cd9d9d
+      config:
+        server-addr: 47.93.135.21:8848
+        namespace: 3698bfc2-a612-487a-b2a2-aaad16cd9d9d
+        file-extension: yaml

+ 17 - 5
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/consumer/ManualProjectConsumer.java

@@ -3,10 +3,7 @@ package com.css.simulation.resource.scheduler.consumer;
 
 import api.common.pojo.constants.DictConstants;
 import api.common.pojo.dto.ProjectMessageDTO;
-import api.common.util.FileUtil;
-import api.common.util.JsonUtil;
-import api.common.util.LinuxUtil;
-import api.common.util.TimeUtil;
+import api.common.util.*;
 import com.css.simulation.resource.scheduler.mapper.*;
 import com.css.simulation.resource.scheduler.pojo.po.*;
 import com.css.simulation.resource.scheduler.service.ManualProjectService;
@@ -15,6 +12,8 @@ import com.fasterxml.jackson.databind.ObjectMapper;
 import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.kafka.clients.consumer.ConsumerRecord;
+import org.apache.sshd.client.SshClient;
+import org.apache.sshd.client.session.ClientSession;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.data.redis.core.StringRedisTemplate;
@@ -71,6 +70,13 @@ public class ManualProjectConsumer {
     @Value("${scheduler.manual-project.job-yaml}")
     String jobYaml;
 
+    @Value("${scheduler.score.hostname}")
+    String hostname;
+    @Value("${scheduler.score.username}")
+    String username;
+    @Value("${scheduler.score.password}")
+    String password;
+
 
     /**
      * 任务运行前首先判断用户是否拥有可分配资源
@@ -174,7 +180,13 @@ public class ManualProjectConsumer {
         String replace8 = replace7.replace("1atch/v1", "batch/v1");
         log.info("------- ManualProjectConsumer 开始执行 yaml 文件" + replace8);
         FileUtil.writeStringToLocalFile(replace8, jobTemplateYamlPathTarget);
-        LinuxUtil.execute("kubectl apply -f " + jobTemplateYamlPathTarget);
+
+
+        SshClient client = SshUtil.getClient();
+        ClientSession session = SshUtil.getSession(client, hostname, username, password);
+        SshUtil.execute(session, "kubectl apply -f " + jobTemplateYamlPathTarget);
+        session.close();
+        client.stop();
     }
 
     @KafkaListener(groupId = "simulation-resource-scheduler", topics = "${scheduler.manual-project.stop-topic}")

+ 7 - 0
simulation-resource-scheduler/src/main/java/com/css/simulation/resource/scheduler/service/ManualProjectService.java

@@ -67,6 +67,13 @@ public class ManualProjectService {
     @Autowired
     AlgorithmMapper algorithmMapper;
 
+    @Value("${scheduler.score.hostname}")
+    String hostname;
+    @Value("${scheduler.score.username}")
+    String username;
+    @Value("${scheduler.score.password}")
+    String password;
+
     // -------------------------------- Comment --------------------------------
 
     @Transactional