A small HTTP server exposing the overall state of systemd.
Equivalent to systemctl is-system-running.
The server will answer with the following HTTP status codes:
- 200 OK: The system is fully operational.
- 503 Internal Server error: If the system is in any other state
- 500 Service Unavailable: If we could not determine the systemd state
This is a "poor mans" monitoring solution.
It has been created to expose the overall system state to monitoring solutions such as Pingdom or StatusCake.
There is a Docker image at Docker Hub.
You are right. It is exposed on HTTP without any authentication. I have chosen the same stance as Prometheus on this. See Prometheus' FAQ.
Personally I have placed systemd-state behind Træfik with basic authentication.
Exposing the status on https://example.com/_systemd:
version: "2"
services:
  systemd:
    image: arnested/systemd-state
    volumes:
      - '/run/systemd/:/run/systemd/:ro'
    restart: always
    labels:
      - 'traefik.frontend.auth.basic=foo:$$apr1$$WCYo2XY2$$7PDdo922necZuGkMAeTI70'
      - "traefik.port=80"
      - "traefik.enable=true"
      - "traefik.frontend.rule=Host:example.com;Path:/_systemd"
    networks:
      - web
networks:
  web:
    external:
      name: traefik_webgateway