KongIngress Upstream Healthchecks Not Working


#1

Hello

I am unable to get the Kong Ingress Controller to update healthchecks as expected. My definitions are:

---
apiVersion: configuration.konghq.com/v1
kind: KongIngress
metadata:
  name: my-nginx
upstream:
  hash_on: ip
  hash_fallback: none
  healthchecks:
    active:
      concurrency: 10
      healthy:
        http_statuses:
          - 200
          - 301
        interval: 5
        successes: 5
      http_path: "/test"
      timeout: 1
      unhealthy:
        http_failures: 5
        http_statuses:
          - 500
        interval: 5
        tcp_failures: 5
        timeouts: 5
  slots: 10
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: my-nginx
spec:
  rules:
  - host: my-nginx
    http:
      paths:
      - path: /
        backend:
          serviceName: my-nginx
          servicePort: 80

The healthcheck however gets the defaults.

{
  "unhealthy": {
    "http_statuses": [
      429,
      404,
      500,
      501,
      502,
      503,
      504,
      505
    ],
    "tcp_failures": 0,
    "timeouts": 0,
    "http_failures": 0,
    "interval": 0
  },
  "type": "http",
  "http_path": "/",
  "timeout": 1,
  "healthy": {
    "successes": 0,
    "interval": 0,
    "http_statuses": [
      200,
      302
    ]
  },
  "https_sni": null,
  "https_verify_certificate": true,
  "concurrency": 10
}

The slot and hash settings do get set correctly, just the health checks do not.

Thanks
Brandon


#2

I can verify this bug, I’ve opened up the following issue to track it: