Skip to content

Karyon admin

Chris Fregly edited this page Jul 5, 2013 · 8 revisions

Karyon admin constitutes of two modules:

Admin container

This module starts an embedded jetty server from within karyon on port 8077 (overridden by setting the property "netflix.platform.admin.resources.port" value to your port).

This admin interface provides two endpoints, _viz.,

  • Healthcheck(Path: /healthcheck) This returns the HTTP response status as returned by karyon's healthcheck handler.
  • Admin resources(Path: /adminres) : This is a generic endpoint to server any resources such as html, css, js files present in the application's classpath. The User interface for karyon admin is built using this endpoint. This is a very powerful concept as it enables a user to provide a webapplication in a jar file without the need of an explicit webapplication deployed in the container. See EmbeddedContentResource to see how this is done.

Apart from the above endpoints, the admin container also loads any jersey resources available under packages defined by the property "netflix.platform.admin.resources.packages"

User interface

This is a stand-alone alpha quality UI till we open source our flexible explorers infrastructure.

In order to get this user interface, you must include "karyon-admin-web" module as your dependency.

The User interface is available at the url: http://:8077/adminres/webadmin/index.html. Any requests to the root (/) also gets redirected to the above url.

This module also contains the following rest endpoints serving JSON response:

  • "/webadmin/jmx": A list of JMX beans available on the platform mbean server with their attributes.
  • "/webadmin/env": All java environment variables defined for this java application.
  • "/webadmin/jars": List of all jars available in the application's classpath.
  • "/webadmin/properties": All properties available via archaius.
  • "/webadmin/eureka": All instances available to eureka, if eureka integration is enabled.

The user interface is built using the above rest endpoints. These endpoints can be used to create a custom user interface for your application. In such a case, you can override the redirection from root (/) to the karyon user interface, by setting the redirect url in a property "com.netflix.karyon.admin.default.page". Karyon treats this property as a dynamic property hence the value if set at any stage of the application lifecycle, is used for the next redirect.

Access Control and Hiding Sensitive Properties

  • Be sure to control who has access to the Karyon admin console.
  • This admin console allows users to browse all properties - including System and Env properties such as AWS_ACCESS_KEY_ID and AWS_SECRET_KEY.
  • As of karyon 1.0.20, you can mask specific properties by setting the following property as follows: netflix.platform.admin.resources.masked.property.names=[comma-separated-list-of-properties]