Commit 7410b700 authored by 黎博's avatar 黎博

修改获取pod列表状态判断

parent 5488b4af
...@@ -4,10 +4,7 @@ import com.alibaba.fastjson.JSON; ...@@ -4,10 +4,7 @@ import com.alibaba.fastjson.JSON;
import com.tencentcloudapi.common.Credential; import com.tencentcloudapi.common.Credential;
import com.tencentcloudapi.common.profile.ClientProfile; import com.tencentcloudapi.common.profile.ClientProfile;
import com.tencentcloudapi.tcr.v20190924.TcrClient; import com.tencentcloudapi.tcr.v20190924.TcrClient;
import com.tencentcloudapi.tcr.v20190924.models.DescribeImagePersonalRequest; import com.tencentcloudapi.tcr.v20190924.models.*;
import com.tencentcloudapi.tcr.v20190924.models.DescribeImagePersonalResponse;
import com.tencentcloudapi.tcr.v20190924.models.DescribeRepositoryFilterPersonalRequest;
import com.tencentcloudapi.tcr.v20190924.models.DescribeRepositoryFilterPersonalResponse;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
......
...@@ -2,6 +2,7 @@ package cn.qg.holmes.service.k8s; ...@@ -2,6 +2,7 @@ package cn.qg.holmes.service.k8s;
import cn.qg.holmes.entity.k8s.DockerProject; import cn.qg.holmes.entity.k8s.DockerProject;
import cn.qg.holmes.entity.k8s.ServiceCreateVo; import cn.qg.holmes.entity.k8s.ServiceCreateVo;
import com.alibaba.fastjson.JSON;
import io.fabric8.kubernetes.api.model.*; import io.fabric8.kubernetes.api.model.*;
import io.fabric8.kubernetes.api.model.apps.Deployment; import io.fabric8.kubernetes.api.model.apps.Deployment;
import io.fabric8.kubernetes.api.model.apps.DeploymentSpec; import io.fabric8.kubernetes.api.model.apps.DeploymentSpec;
...@@ -187,13 +188,32 @@ public class K8sService { ...@@ -187,13 +188,32 @@ public class K8sService {
map.put("serviceName", serviceName); map.put("serviceName", serviceName);
map.put("podName", podMetadata.getName()); map.put("podName", podMetadata.getName());
map.put("labels", podMetadata.getLabels()); map.put("labels", podMetadata.getLabels());
List<ContainerStatus> containerStatuses = pod.getStatus().getContainerStatuses();
map.put("image", pod.getStatus().getContainerStatuses().get(0).getImage()); map.put("image", pod.getStatus().getContainerStatuses().get(0).getImage());
map.put("imageId", pod.getStatus().getContainerStatuses().get(0).getImageID()); map.put("imageId", pod.getStatus().getContainerStatuses().get(0).getImageID());
map.put("lanIp", pod.getStatus().getHostIP()); map.put("lanIp", pod.getStatus().getHostIP());
map.put("podIp", pod.getStatus().getPodIP()); map.put("podIp", pod.getStatus().getPodIP());
map.put("startTime", pod.getStatus().getStartTime()); map.put("startTime", pod.getStatus().getStartTime());
map.put("status", containerStatuses.get(0).getReady()); // 状态判断
List<ContainerStatus> containerStatuses = pod.getStatus().getContainerStatuses();
String status = "";
if (pod.getMetadata().getDeletionTimestamp() != null) {
status = "Terminating";
} else {
if (containerStatuses.size() == 0) {
status = "Pending";
} else {
if (containerStatuses.get(0).getState().getWaiting() != null) {
status = "ContainerCreating";
}
if (containerStatuses.get(0).getState().getRunning() != null && !containerStatuses.get(0).getReady()) {
status = "Waiting";
}
if (containerStatuses.get(0).getState().getRunning() != null && containerStatuses.get(0).getReady()) {
status = "Normal";
}
}
}
map.put("status", status);
result.add(map); result.add(map);
} }
} }
...@@ -1950,8 +1970,14 @@ public class K8sService { ...@@ -1950,8 +1970,14 @@ public class K8sService {
return kubernetesClient.namespaces().create(namespace); return kubernetesClient.namespaces().create(namespace);
} }
public void podTest() {
Pod pod = kubernetesClient.pods().inNamespace("k8s").withName("notify-56fc55776b-5qshb").get();
System.out.println(JSON.toJSONString(pod.getStatus().getContainerStatuses().get(0)));
}
public static void main(String[] args) { public static void main(String[] args) {
K8sService k8sService = new K8sService(); K8sService k8sService = new K8sService();
k8sService.createNewNamespace("test6", "dev", "黎博"); // k8sService.createNewNamespace("test6", "dev", "黎博");
k8sService.podTest();
} }
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment