Kubernetes Openshift就绪性和活动性探测即使在http url不正确的情况下也不会失败

Kubernetes Openshift就绪性和活动性探测即使在http url不正确的情况下也不会失败,kubernetes,openshift,spring-boot-actuator,readinessprobe,livenessprobe,Kubernetes,Openshift,Spring Boot Actuator,Readinessprobe,Livenessprobe,我正在OpenShift Pod中运行Spring Boot 2.0.0应用程序。为了执行就绪性和活动性探测,我依赖于spring boot执行器健康检查。我的应用程序属性文件具有以下属性: server.address=127.0.0.1 management.server.address=0.0.0.0 server.port=8080 management.server.port=8081 management.endpoints.enabled-by-default=false mana

我正在OpenShift Pod中运行Spring Boot 2.0.0应用程序。为了执行就绪性和活动性探测,我依赖于spring boot执行器健康检查。我的应用程序属性文件具有以下属性:

server.address=127.0.0.1
management.server.address=0.0.0.0
server.port=8080
management.server.port=8081
management.endpoints.enabled-by-default=false
management.endpoint.info.enabled=true
management.endpoint.health.enabled=true
management.endpoints.web.exposure.include=health,info
management.endpoint.health.show-details=always
management.security.enabled=false
遵循准备就绪和活动性探测器的相关配置

livenessProbe:
    failureThreshold: 3
    httpGet:
      path: /mmcc
      port: 8081
      scheme: HTTP
    initialDelaySeconds: 35
    periodSeconds: 10
    successThreshold: 1
    timeoutSeconds: 15


readinessProbe:
    failureThreshold: 3
    httpGet:
      path: /jjkjk
      port: 8081
      scheme: HTTP
    initialDelaySeconds: 30
    periodSeconds: 10
    successThreshold: 1
    timeoutSeconds: 15
我的期望是,对于这些随机URL,我的就绪性和活跃性探测应该会失败,但它们正在成功。
不知道我在这里错过了什么。请帮忙。

Simon的回答给了我一个起点,我寻找了
curl-vvv localhost:8081/jjkjk
输出。 URL将我重定向到登录URL,所以我想这是因为我的类路径中有spring安全性。 因此,我在我的属性文件中添加了:

management.endpoints.web.exposure.include=health,info
并补充说

@Configuration
public class ActuatorSecurity extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.requestMatcher(EndpointRequest.toAnyEndpoint()).authorizeRequests()
            .anyRequest().permitAll()
    }

}

这就解决了我的问题,允许在没有凭据的情况下访问url。

当返回HTTP错误代码(通常是HTTP 5XX/HTTP 4XX)时,探测将失败。您能否将容器内部的
curl-vvv localhost:8081/jjkjk
输出添加到您的问题中?