Page MenuHomeDevCentral

Monitor HTTP back-end from Docker containers
Open, NormalPublic

Description

In rOPS pillar/paas/docker.sls, we define services in docker_containers dictionary.

Most services have a container with a HTTP endpoint. Those use both app_port and host, for example:

docker_containers:
  docker-001:
    hound:
      nasqueron_hound:
        app_port: 44080
        host: code.nasqueron.org
        github_account: nasqueron

We can query that service at two places:

So the idea would be to create a list of those URLs, append health check endpoint to the URL when it exists
and check we've got a HTTP 200 response.

For example we can document in the same document hound has /healthz health check endpoints:

docker_containers_monitoring:
  check_http_200:
    hound: /healthz

By combining those two information, we know than on docker-001, we can check http://localhost:44080/healthz.

Plan is to provide such pillar configuration and a NRPE check able to read those.

Event Timeline

Deployed, but we need to actually run the check. A Sensu agent to run the NRPE checks from platform-checks package and collect result is probably the straightforward option.

[ Those tasks have been identified as suitable for the next operations sprint. ]

dereckson removed dereckson as the assignee of this task.Mon, Mar 23, 09:23

Unassigning this task to make it available for others.

As I'm not currently working actively on this issue, reset the assignee.

Contributions opportunity. If you’re interested, go ahead and assign yourself. I’m available to share context, review early approaches, or pair if helpful—just tag me.