Commit 093a4be2 authored by 黎博's avatar 黎博

修改健康检查的策略

parent b8b18a52
......@@ -620,24 +620,38 @@ public class K8sService {
// 需要做健康检查的不创建存活检查和就绪检查
List<String> noHealthCheckServiceList = Arrays.asList(noHealthCheckService.split(","));
if (!noHealthCheckServiceList.contains(serviceName)) {
// livenessProbe
Probe livenessProbe = new Probe();
ExecAction execAction = new ExecAction();
List<String> commandList = new ArrayList<>();
commandList.add("/home/quant_group/readyCheck.sh");
execAction.setCommand(commandList);
// livenessProbe 存活检查,检查容器是否正常,不正常则重启实例
Probe livenessProbe = new Probe();
livenessProbe.setExec(execAction);
// 启动延时,容器延时启动健康检查的时间
livenessProbe.setInitialDelaySeconds(200);
// 间隔时间,进行健康检查的时间间隔
livenessProbe.setPeriodSeconds(30);
// 响应超时,每次健康检查响应的最大超时时间
livenessProbe.setTimeoutSeconds(5);
// 健康阈值,表示后端容器从失败到成功的连续健康检查成功次数
livenessProbe.setSuccessThreshold(1);
livenessProbe.setFailureThreshold(40);
// 不健康阈值,表示后端容器从成功到失败的连续健康检查成功次数
livenessProbe.setFailureThreshold(3);
container.setLivenessProbe(livenessProbe);
//readinessProbe
//readinessProbe 就绪检查,检查容器是否就绪,不就绪则停止转发流量到当前实例
Probe readinessProbe = new Probe();
readinessProbe.setExec(execAction);
readinessProbe.setInitialDelaySeconds(200);
readinessProbe.setTimeoutSeconds(2);
readinessProbe.setPeriodSeconds(40);
// 启动延时
readinessProbe.setInitialDelaySeconds(30);
// 响应超时
readinessProbe.setTimeoutSeconds(5);
// 间隔时间
readinessProbe.setPeriodSeconds(10);
// 健康阈值
readinessProbe.setSuccessThreshold(1);
// 不健康阈值
readinessProbe.setFailureThreshold(3);
container.setReadinessProbe(readinessProbe);
}
......
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