Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Introduce Management Interface #30506

Merged
merged 1 commit into from
Mar 16, 2023
Merged

Commits on Mar 12, 2023

  1. Adds management interface support.

    It allows exposing selected routes (management routes) to a different HTTP server.
    It avoids exposing these management routes on the main HTTP server, which could lead to leaks and undesired access to these endpoints.
    
    Enabling/Disabling the management interface is a build-time property.
    However, the interface, port, and SSL... are runtime values.
    
    The management interface is not intended to be used using native transport (as high concurrency is rarely a need for these endpoints).
    Also, the access log and same site cookie are not supported yet.
    
    The management interface does not expose plain and secured endpoints.
    It's either using HTTP or HTTPS.
    
    At the moment are considered management routes:
    
    * health routes (but not the health-ui)
    * prometheus routes
    * metrics routes
    
    The management interface is, when enabled, exposed on the port 9000 (9001 in test mode).
    
    When deploying to Kubernetes and Openshift, the `management` port is also exposed.
    The Prometheus scrape url and the health checks probes are configured to use that `management` port.
    
    The documentation and configuration javadoc of the SmallRye Metrics, SmallRye health, Micrometer, Vert.x HTTP extensions has been extended to mention the configuration differences when the management interface is enabled.
    Typically, the health/metrics root paths are not resolved from the same root.
    The non-application endpoint paths are not resolved the same way.
    
    When using the dev ui (old and new) with the management interface enabled, the paths are resolved accordingly (for the health and prometheus extensions).
    cescoffier committed Mar 12, 2023
    Configuration menu
    Copy the full SHA
    e99c418 View commit details
    Browse the repository at this point in the history