diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/TensorBoardStatus.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/PodStatus.java similarity index 71% rename from ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/TensorBoardStatus.java rename to ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/PodStatus.java index e1f74ef0..c7528acf 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/TensorBoardStatus.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/domain/PodStatus.java @@ -1,15 +1,15 @@ package com.ruoyi.platform.domain; -public enum TensorBoardStatus { - Pending("Pending",1), Running("Running",2),Terminated("未运行",3); +public enum PodStatus { + Pending("Pending",1), Running("Running",2),Terminated("Terminated",3), Failed("Failed",4), Unknown("Unknown",5); private String name; private int index; - private TensorBoardStatus(String name, int index) { + private PodStatus(String name, int index) { this.name = name; this.index = index; } public static String getName(int index) { - for (TensorBoardStatus c : TensorBoardStatus.values()) { + for (PodStatus c : PodStatus.values()) { if (c.getIndex() == index) { return c.name; } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/TensorBoardServiceImpl.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/TensorBoardServiceImpl.java index a3966b5c..a387103f 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/TensorBoardServiceImpl.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/service/impl/TensorBoardServiceImpl.java @@ -2,19 +2,15 @@ package com.ruoyi.platform.service.impl; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.security.utils.SecurityUtils; -import com.ruoyi.platform.domain.TensorBoardStatus; +import com.ruoyi.platform.domain.PodStatus; import com.ruoyi.platform.service.TensorBoardService; import com.ruoyi.platform.utils.K8sClientUtil; import com.ruoyi.platform.vo.FrameLogPathVo; import com.ruoyi.system.api.model.LoginUser; -import io.kubernetes.client.openapi.models.V1Pod; -import net.sf.jsqlparser.schema.Database; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.text.SimpleDateFormat; -import java.util.Date; @Service public class TensorBoardServiceImpl implements TensorBoardService { @@ -30,8 +26,8 @@ public class TensorBoardServiceImpl implements TensorBoardService { private K8sClientUtil k8sClientUtil; @Override public String getTensorBoardStatus(FrameLogPathVo frameLogPathVo){ - String status = TensorBoardStatus.Terminated.getName(); - if (StringUtils.isEmpty(frameLogPathVo.getPath())||StringUtils.isEmpty(frameLogPathVo.getPvcName())){ + String status = PodStatus.Terminated.getName(); + if (StringUtils.isEmpty(frameLogPathVo.getPath())){ return status; } LoginUser loginUser = SecurityUtils.getLoginUser(); @@ -39,9 +35,14 @@ public class TensorBoardServiceImpl implements TensorBoardService { try { String podStatus = k8sClientUtil.getPodStatus(podName, StringUtils.isEmpty(frameLogPathVo.getNamespace()) ? "default" : frameLogPathVo.getNamespace()); - System.out.println(podStatus); + for (PodStatus s : PodStatus.values()) { + if (s.getName().equals(podStatus)) { + status = s.getName(); + break; + } + } } catch (Exception e) { - return TensorBoardStatus.Terminated.getName(); + return PodStatus.Terminated.getName(); } return status; } diff --git a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/K8sClientUtil.java b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/K8sClientUtil.java index a83badd0..955c631e 100644 --- a/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/K8sClientUtil.java +++ b/ruoyi-modules/management-platform/src/main/java/com/ruoyi/platform/utils/K8sClientUtil.java @@ -50,19 +50,19 @@ public class K8sClientUtil { * 3. service-account namespace * 4. master endpoints(ip, port) from pre-set environment variables */ - @Autowired - public K8sClientUtil(@Value("${k8s.http}") String http, @Value("${k8s.token}") String token) { - this.http = http; - this.token = token; - try { - this.apiClient = new ClientBuilder(). - setBasePath(http).setVerifyingSsl(false). - setAuthentication(new AccessTokenAuthentication(token)).build(); - } catch (Exception e) { - log.error("构建K8s-Client异常", e); - throw new RuntimeException("构建K8s-Client异常"); - } - } +// @Autowired +// public K8sClientUtil(@Value("${k8s.http}") String http, @Value("${k8s.token}") String token) { +// this.http = http; +// this.token = token; +// try { +// this.apiClient = new ClientBuilder(). +// setBasePath(http).setVerifyingSsl(false). +// setAuthentication(new AccessTokenAuthentication(token)).build(); +// } catch (Exception e) { +// log.error("构建K8s-Client异常", e); +// throw new RuntimeException("构建K8s-Client异常"); +// } +// } // @Autowired // public K8sClientUtil() { // try { @@ -87,16 +87,16 @@ public class K8sClientUtil { * * @param kubeConfigPath kube连接配置文件 */ -// public K8sClientUtil() { -// try { -// this.apiClient = new ClientBuilder(). -// setBasePath("https://172.20.32.181:6443").setVerifyingSsl(false). -// setAuthentication(new AccessTokenAuthentication("eyJhbGciOiJSUzI1NiIsImtpZCI6IjRWcFBPWl9YSFFxQ2tVanRuNHdRT1dnUlJNTnB2bG5TQlVSRjNKdExWNDQifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkZWZhdWx0LXRva2VuLXNteGxuIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQubmFtZSI6ImRlZmF1bHQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiIyZWY1ZjdkMC0zMTdkLTQxN2UtOWY4Ni1mYjA1OTFhYWVhZDQiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6a3ViZS1zeXN0ZW06ZGVmYXVsdCJ9.GMpReYK7YJ0nNy-F6VrUJQzjWQiSauAOeq0-DT8ik2Lx8f2eznYEm_3cHX4kIn_nYgfxo857urcHt4Ft6IgVtWzxLzVTCQVaNP_H2J8bnJn8W2tUKXzF_3d_GwO75H7kN8P3aoShULrOLpiIf3o3Az28_gwHkwCnd42npcKrCXfAKj8A2U7-KUFQXXA-etrWSw81C5t8ziL-2xaiDgwD3ewH-TNYsOpyWjGopNTxJn1F7GyJ7xDlmMJOaZhSnOrDggB7lqDEsE68YmZtqB7lcSaZHnKzvNhEdbKri4R7_urpjttz_k6qcfIi-l6GwPtJLatsPDg3OL3FFnzjvArJ-A")).build(); -// } catch (Exception e) { -// log.error("构建K8s-Client异常", e); -// throw new RuntimeException("构建K8s-Client异常"); -// } -// } + public K8sClientUtil() { + try { + this.apiClient = new ClientBuilder(). + setBasePath("https://172.20.32.181:6443").setVerifyingSsl(false). + setAuthentication(new AccessTokenAuthentication("eyJhbGciOiJSUzI1NiIsImtpZCI6IjRWcFBPWl9YSFFxQ2tVanRuNHdRT1dnUlJNTnB2bG5TQlVSRjNKdExWNDQifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImFkbWluLXNlcnZpY2UtYWNjb3VudC10b2tlbi14ZDk5eiIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJhZG1pbi1zZXJ2aWNlLWFjY291bnQiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJmMGEzNmYyMS01MjQyLTQ4MTAtYWVmZS0xOTEwOTZlZjc5YmUiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6ZGVmYXVsdDphZG1pbi1zZXJ2aWNlLWFjY291bnQifQ.fo-Wf0-5-IRC5fhRh65yfqCJqKfE9MrNFIXL2fd1CqVAHD7JBpWO2IsFiSmz9Bm7VfLmFAp2NB7DjW4ZLjC7ODiGhpSseBP8x4ceFuHL6pRGUsEBvHQBBBuQcGhNOcsxIDHnDqUdUzoLprj223lMZNTQowITuqYFU4GVbethyEuS6G5Wh9KHI3KYHFtG4_AeWBgI5Ppz8pDrhHzSFWTFbzxQ3RPGEwF0V-9wEtdrSYnfETi3rdRWif9W4a0RW8HwD9Gf7UCYcyFOs7e5_3-IvmctS85g87PYIfHXMhu_kOw-_Il4bkwPEK5uiBFDw0M1-s9YP-F9r5sXXvOJlsAr1g")).build(); + } catch (Exception e) { + log.error("构建K8s-Client异常", e); + throw new RuntimeException("构建K8s-Client异常"); + } + } /** * 获取所有的Pod