Reference documentation for <admin>
in services.xml.
Find a working example of this configuration in the sample application multinode-HA
services.xml.
admin [version] adminserver [hostalias] cluster-controllers cluster-controller [hostalias, baseport, jvm-options, jvm-gc-options] configservers configserver [hostalias, baseport] logserver [jvm-options, jvm-gc-options] slobroks slobrok [hostalias, baseport] monitoring interval systemname metrics consumer [id] metric-set [id] metric [id] cloudwatch [region, namespace] shared-credentials [file, profile]
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
version | required | number | 2.0 in this version of Vespa |
The configured node will be the default administration node in your Vespa system, which means that unless configured otherwise all administrative services - i.e. the log server, the configuration server, the slobrok, and so on - will run on this node. Use configservers, logserver, slobroks elements if you need to specify baseport or jvm options for any of these services.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
hostalias | required | string | ||
baseport | optional | number |
Container for one or more cluster-controller elements. When having one or more content clusters, configuring at least one cluster controller is required.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
standalone-zookeeper | optional | true/false | false |
Will by default share the ZooKeeper instance with configserver. If configured to true a separate ZooKeeper instance will be configured and started on the set of nodes where you run cluster controller on. The set of cluster controllers nodes cannot overlap with the set of nodes where config server is running. If this setting is changed from false to true in a running system, all previous cluster state information will be lost as the underlying ZooKeeper changes. Cluster controllers will re-discover the state, but nodes that have been manually set as down will again be considered to be up. |
Specifies a host on which to run the Cluster Controller service. The Cluster Controller manages the state of the cluster in order to provide elasticity and failure detection.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
hostalias | required | string | ||
baseport | optional | number | ||
jvm-options | optional | string |
Container for one or more configserver
elements.
Specifies a host on which to run the
Configuration Server service.
If contained directly below <admin>
you may only have one,
so if you need to configure multiple instances of this service,
contain them within the <configservers>
element.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
hostalias | required | string | ||
baseport | optional | number |
Specifies a host on which to run the Vespa Log Server service. If not specified, the logserver is placed on the adminserver, like in the example.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
hostalias | required | string | ||
baseport | optional | number | ||
jvmargs | optional | string |
Example:
<logserver hostalias="node1" />
This is a container for one or more slobrok
elements.
Specifies a host on which to run the Service Location Broker (slobrok) service.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
hostalias | required | string | ||
baseport | optional | number |
Settings for how to pass metrics to a monitoring service - see monitoring.
<monitoring> <interval>1</interval> <systemname>name-in-metrics-system</systemname> </monitoring>
interval |
Currently unused, (the rate at which metrics are passed to the monitoring system, in minutes) |
---|---|
systemname |
The name of the application in question in the monitoring system, default is "vespa" |
Used for configuring the forwarding of metrics to graphing applications -
add consumer
child elements.
Also see monitoring. Example:
<metrics> <consumer id="my-metric-namespace"> <metric-set id="default" /> <metric id="my-custom-metric" /> <cloudwatch region="us-east-1" namespace="my-vespa"> <shared-credentials file="/path/to/credentials-file" profile="default" /> </cloudwatch> </consumer> </metrics>
Configure a metrics consumer. The metrics contained in this element will be exported to the consumer with the given id. For example one can do /prometheus/v1/values?consumer=my-consumer.
Add metric
and/or metric-set
children.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
id | required | string | The name of the consumer to export metrics to. |
Include a pre-defined set of metrics to the consumer.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
id | required | string |
The id of the metric set to include, currently "default" and "vespa" are valid |
Configure a metric.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
id | required | string |
The name of the metric as defined in your code or in process metrics api |
Note that metric id needs to include the metric specific suffix, e.g. .average.
In this example, there is one metric added to a custom consumer in addition to the default metric set. Use &consumer=my-custom-consumer parameter for the prometheus endpoint. Also notice the .count suffix, see process metrics api.
The per process metrics api endpoint /state/v1/metrics also includes a description of each emitted metric. The /state/v1/metrics endpoint also includes the metric aggregates (.count, .average, .rate, .max).
<metrics> <consumer id="my-custom-consumer"> <metric-set id="default" /> <metric id="vds.idealstate.garbage_collection.documents_removed.count" /> </consumer> </metrics>
Specifies that the metrics from this consumer should be forwarded to CloudWatch.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
region | required | string | Your AWS region | |
namespace | required | string | The metrics namespace in CloudWatch |
Example:
<cloudwatch region="us-east-1" namespace="my-vespa"> <shared-credentials file="/path/to/credentials-file" profile="default" /> </cloudwatch>
Specifies that a profile from a shared-credentials file should be used for authentication to CloudWatch.
Attribute | Required | Value | Default | Description |
---|---|---|---|---|
file | required | string | The path to the shared-credentials file | |
profile | optional | string | default | The profile in the shared-credentials file |