Allocations not becoming 'Healthy' for Services when using health_check = "checks"

1,493 views
Skip to first unread message

Vincent

unread,
Aug 17, 2017, 4:40:15 PM8/17/17
to Nomad
Hello,

We're trying out the rolling updates and noticed that the new allocations are not reporting their health status as expected.

$ nomad alloc-status 20e7ab79
...
Latest Deployment
ID          = faa23fa7
Status      = running
Description = Deployment is running

Deployed
Task Group  Desired  Placed  Healthy  Unhealthy
vh          4        2       0        0

Allocations
ID        Node ID   Task Group  Version  Desired  Status    Created At
20e7ab79  4d9c2742  vh          34       run      running   08/17/17 16:06:32 EDT
40a6a05f  b7132742  vh          34       run      running   08/17/17 16:06:32 EDT
f293f968  17af2742  vh          33       run      running   08/17/17 16:04:21 EDT
741ecd6d  f6922742  vh          33       run      running   08/17/17 16:04:21 EDT
46b28ac0  4d9c2742  vh          33       stop     complete  08/17/17 16:03:45 EDT
d7ba846e  b7132742  vh          33       stop     complete  08/17/17 16:03:45 EDT


$ nomad alloc-status 20e7ab79
...
ID                  = 20e7ab79
Node ID             = 4d9c2742
Job ID              = vh
Job Version         = 34
Client Status       = running
Client Description  = <none>
Desired Status      = run
Created At          = 08/17/17 16:06:32 EDT
Deployment ID       = faa23fa7
Deployment Health   = unset

The new allocations will eventually become 'unhealthy' after it exceeds healthy_deadline.

Our allocation tasks are all running and service checks are healthy (validated through Consul that they're passing!) but the alloc-status still shows "Deployment Health   = unset"

      update {
        max_parallel     = 2
        min_healthy_time = "10s"
        healthy_deadline = "5m"
        health_check     = "checks"
      }

      service {
        name = "my service name"
        port = "http"
          tags = [
              "urlpublic-frontend-${NOMAD_META_env}.domain.net/",
              "${NOMAD_META_env}",
              "version-${NOMAD_META_version}",
              "git-commit-${NOMAD_META_git_commit_id}"]
        check {
          name = "health endpoint"
          type = "http"
          port = "management"
          path = "/health"
          interval = "10s"
          timeout = "30s"
        }
        check {
          name = "app landing page"
          type = "http"
          port = "http"
          path = "/"
          interval = "10s"
          timeout = "30s"
        }
      }

Using health_check = "task_states" does work as expected!

Is there something we're missing or failing to set for our service checks?

Thanks,
VH

Alex Dadgar

unread,
Aug 17, 2017, 5:40:34 PM8/17/17
to Nomad, Vincent
Hey Vincent,

You are getting hit by a bug that has since been fixed. The fix will find its way into Nomad 0.6.1 which should be released soon. Sorry about that!

Thanks,
Alex Dadgar
--
This mailing list is governed under the HashiCorp Community Guidelines - https://www.hashicorp.com/community-guidelines.html. Behavior in violation of those guidelines may result in your removal from this mailing list.
 
GitHub Issues: https://github.com/hashicorp/nomad/issues
IRC: #nomad-tool on Freenode
---
You received this message because you are subscribed to the Google Groups "Nomad" group.
To unsubscribe from this group and stop receiving emails from it, send an email to nomad-tool+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/nomad-tool/80cdffb0-3973-49f7-8abf-6e7b1a7de35c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Vincent

unread,
Aug 18, 2017, 10:11:49 AM8/18/17
to Nomad
Ah!! Thanks for the reply! I'll start keeping a closer eye on the issues.

VH
Reply all
Reply to author
Forward
0 new messages