open-nomad/website/pages/docs/autoscaling/plugins/index.mdx

66 lines
2.6 KiB
Plaintext
Raw Normal View History

---
layout: docs
page_title: Plugins
sidebar_title: Plugins
description: Plugins are used to architect the Nomad Autoscaler into distinct areas.
---
# Nomad Autoscaler Plugins
Plugins are an essential part of the Nomad Autoscaler architecture. The Autoscaler
uses the [go-plugin][go_plugin_github] library to implement an ecosystem of
different types of plugins. Each plugin type is responsible for a specific task;
APM plugins retrieve metrics about the workloads being monitored and Strategy
plugins decide which actions Nomad should execute to keep the policy valid. The
flexibility of plugins allows the Nomad Autoscaler to be extended to meet specific
business requirements or technology use cases.
The Nomad Autoscaler currently ships with a number of built-in plugins to ease
the learning curve. Details of these can be found in the side menu, under the
specific plugin type sections.
# General Options
All plugins which require Nomad API connectivity support the parameters detailed
below. These plugins include Nomad APM, Nomad Target and all cluster scaling
targets.
- `nomad_config_inherit` `(bool: true)` - A boolean flag which indicates whether
the plugin should inherit the agents Nomad configuration parameters. Plugins
can override individual parameters and have their Nomad configuration merged
with that of the agent.
- `nomad_address` `(string: "")` - The address of the Nomad server in the form
of `protocol://addr:port`.
- `nomad_region` `(string: "")` - The region of the Nomad servers to connect with.
- `nomad_namespace` `(string: "")` - The target namespace for queries and actions
bound to a namespace.
- `nomad_token` `(string: "")` - The SecretID of an ACL token to use to authenticate
API requests with.
- `nomad_http-auth` `(string: "")` - The authentication information to use when
connecting to a Nomad API which is using HTTP authentication.
- `nomad_ca-cert` `(string: "")` - Path to a PEM encoded CA cert file to use to
verify the Nomad server SSL certificate.
- `nomad_ca-path` `(string: "")` - Path to a directory of PEM encoded CA cert
files to verify the Nomad server SSL certificate.
- `nomad_client-cert` `(string: "")` - Path to a PEM encoded client certificate
for TLS authentication to the Nomad server.
- `nomad-client-key` `(string: "")` - Path to an unencrypted PEM encoded private
key matching the client certificate.
- `nomad_tls-server-name` `(string: "")` - The server name to use as the SNI
host when connecting via TLS.
- `nomad_skip-verify` `(string: "")` - Do not verify TLS certificates. This is
strongly discouraged.
[go_plugin_github]: https://github.com/hashicorp/go-plugin