enrollnode

package
v8.18.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 17, 2025 License: Apache-2.0 Imports: 11 Imported by: 4

Documentation

Overview

Enroll a node.

Enroll a new node to allow it to join an existing cluster with security features enabled.

The response contains all the necessary information for the joining node to bootstrap discovery and security related settings so that it can successfully join the cluster. The response contains key and certificate material that allows the caller to generate valid signed certificates for the HTTP layer of all nodes in the cluster.

Index

Constants

This section is empty.

Variables

View Source
var ErrBuildPath = errors.New("cannot build path, check for missing path parameters")

ErrBuildPath is returned in case of missing parameters within the build of the request.

Functions

This section is empty.

Types

type EnrollNode

type EnrollNode struct {
	// contains filtered or unexported fields
}

func New

Enroll a node.

Enroll a new node to allow it to join an existing cluster with security features enabled.

The response contains all the necessary information for the joining node to bootstrap discovery and security related settings so that it can successfully join the cluster. The response contains key and certificate material that allows the caller to generate valid signed certificates for the HTTP layer of all nodes in the cluster.

https://www.elastic.co/guide/en/elasticsearch/reference/current/security-api-node-enrollment.html

func (EnrollNode) Do

func (r EnrollNode) Do(providedCtx context.Context) (*Response, error)

Do runs the request through the transport, handle the response and returns a enrollnode.Response

func (*EnrollNode) ErrorTrace added in v8.14.0

func (r *EnrollNode) ErrorTrace(errortrace bool) *EnrollNode

ErrorTrace When set to `true` Elasticsearch will include the full stack trace of errors when they occur. API name: error_trace

func (*EnrollNode) FilterPath added in v8.14.0

func (r *EnrollNode) FilterPath(filterpaths ...string) *EnrollNode

FilterPath Comma-separated list of filters in dot notation which reduce the response returned by Elasticsearch. API name: filter_path

func (*EnrollNode) Header

func (r *EnrollNode) Header(key, value string) *EnrollNode

Header set a key, value pair in the EnrollNode headers map.

func (*EnrollNode) HttpRequest

func (r *EnrollNode) HttpRequest(ctx context.Context) (*http.Request, error)

HttpRequest returns the http.Request object built from the given parameters.

func (*EnrollNode) Human added in v8.14.0

func (r *EnrollNode) Human(human bool) *EnrollNode

Human When set to `true` will return statistics in a format suitable for humans. For example `"exists_time": "1h"` for humans and `"eixsts_time_in_millis": 3600000` for computers. When disabled the human readable values will be omitted. This makes sense for responses being consumed only by machines. API name: human

func (EnrollNode) IsSuccess

func (r EnrollNode) IsSuccess(providedCtx context.Context) (bool, error)

IsSuccess allows to run a query with a context and retrieve the result as a boolean. This only exists for endpoints without a request payload and allows for quick control flow.

func (EnrollNode) Perform added in v8.7.0

func (r EnrollNode) Perform(providedCtx context.Context) (*http.Response, error)

Perform runs the http.Request through the provided transport and returns an http.Response.

func (*EnrollNode) Pretty added in v8.14.0

func (r *EnrollNode) Pretty(pretty bool) *EnrollNode

Pretty If set to `true` the returned JSON will be "pretty-formatted". Only use this option for debugging only. API name: pretty

type NewEnrollNode

type NewEnrollNode func() *EnrollNode

NewEnrollNode type alias for index.

func NewEnrollNodeFunc

func NewEnrollNodeFunc(tp elastictransport.Interface) NewEnrollNode

NewEnrollNodeFunc returns a new instance of EnrollNode with the provided transport. Used in the index of the library this allows to retrieve every apis in once place.

type Response added in v8.7.0

type Response struct {

	// HttpCaCert The CA certificate that can be used by the new node in order to sign its
	// certificate for the HTTP layer, as a Base64 encoded string of the ASN.1 DER
	// encoding of the certificate.
	HttpCaCert string `json:"http_ca_cert"`
	// HttpCaKey The CA private key that can be used by the new node in order to sign its
	// certificate for the HTTP layer, as a Base64 encoded string of the ASN.1 DER
	// encoding of the key.
	HttpCaKey string `json:"http_ca_key"`
	// NodesAddresses A list of transport addresses in the form of `host:port` for the nodes that
	// are already members of the cluster.
	NodesAddresses []string `json:"nodes_addresses"`
	// TransportCaCert The CA certificate that is used to sign the TLS certificate for the transport
	// layer, as a Base64 encoded string of the ASN.1 DER encoding of the
	// certificate.
	TransportCaCert string `json:"transport_ca_cert"`
	// TransportCert The certificate that the node can use for TLS for its transport layer, as a
	// Base64 encoded string of the ASN.1 DER encoding of the certificate.
	TransportCert string `json:"transport_cert"`
	// TransportKey The private key that the node can use for TLS for its transport layer, as a
	// Base64 encoded string of the ASN.1 DER encoding of the key.
	TransportKey string `json:"transport_key"`
}

Response holds the response body struct for the package enrollnode

https://github.com/elastic/elasticsearch-specification/blob/3a94b6715915b1e9311724a2614c643368eece90/specification/security/enroll_node/Response.ts#L20-L47

func NewResponse added in v8.7.0

func NewResponse() *Response

NewResponse returns a Response

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL