v1

package
v0.0.0-...-6b6aee0 Latest Latest
Warning

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

Go to latest
Published: May 20, 2022 License: GPL-3.0 Imports: 7 Imported by: 0

Documentation

Overview

Package v1 contains API schema definitions for managing Elasticsearch resources. +kubebuilder:object:generate=true +k8s:deepcopy-gen=package +groupName=elasticsearch.k8s.elastic.co

Package v1 contains API Schema definitions for the app v1 API group +kubebuilder:object:generate=true +groupName=elasticsearch.k8s.elastic.co

Package v1 功能描述: Date: 2022/5/20 author: lixiaoming

Index

Constants

View Source
const (
	ElasticsearchContainerName                 = "elasticsearch"
	ElasticsearchAutoscalingSpecAnnotationName = "elasticsearch.alpha.elastic.co/autoscaling-spec"
)

Variables

View Source
var (
	// SchemeBuilder initializes a scheme builder
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a global function that registers this API group & version to a scheme
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var DefaultChangeBudget = ChangeBudget{
	MaxSurge:       nil,
	MaxUnavailable: pointer.Int32(1),
}

DefaultChangeBudget is used when no change budget is provided. It might not be the most effective, but should work in most cases.

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "elasticsearch.k8s.elastic.co", Version: "v1"}
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupVersion.Group, Version: GroupVersion.Version}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type Auth

type Auth struct {
	// Roles to propagate to the Elasticsearch cluster.
	Roles []RoleSource `json:"roles,omitempty"`
	// FileRealm to propagate to the Elasticsearch cluster.
	FileRealm []FileRealmSource `json:"fileRealm,omitempty"`
}

Auth contains user authentication and authorization security settings for Elasticsearch.

func (*Auth) DeepCopy

func (in *Auth) DeepCopy() *Auth

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Auth.

func (*Auth) DeepCopyInto

func (in *Auth) DeepCopyInto(out *Auth)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ChangeBudget

type ChangeBudget struct {
	// MaxUnavailable is the maximum number of pods that can be unavailable (not ready) during the update due to
	// circumstances under the control of the operator. Setting a negative value will disable this restriction.
	// Defaults to 1 if not specified.
	MaxUnavailable *int32 `json:"maxUnavailable,omitempty"`

	// MaxSurge is the maximum number of new pods that can be created exceeding the original number of pods defined in
	// the specification. MaxSurge is only taken into consideration when scaling up. Setting a negative value will
	// disable the restriction. Defaults to unbounded if not specified.
	MaxSurge *int32 `json:"maxSurge,omitempty"`
}

ChangeBudget defines the constraints to consider when applying changes to the Elasticsearch cluster.

func (*ChangeBudget) DeepCopy

func (in *ChangeBudget) DeepCopy() *ChangeBudget

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChangeBudget.

func (*ChangeBudget) DeepCopyInto

func (in *ChangeBudget) DeepCopyInto(out *ChangeBudget)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ChangeBudget) GetMaxSurgeOrDefault

func (cb ChangeBudget) GetMaxSurgeOrDefault() *int32

func (ChangeBudget) GetMaxUnavailableOrDefault

func (cb ChangeBudget) GetMaxUnavailableOrDefault() *int32

type Elasticsearch

type Elasticsearch struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ElasticsearchSpec   `json:"spec,omitempty"`
	Status ElasticsearchStatus `json:"status,omitempty"`
}

Elasticsearch represents an Elasticsearch resource in a Kubernetes cluster. +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:resource:categories=elastic,shortName=es +kubebuilder:subresource:status +kubebuilder:printcolumn:name="health",type="string",JSONPath=".status.health" +kubebuilder:printcolumn:name="nodes",type="integer",JSONPath=".status.availableNodes",description="Available nodes" +kubebuilder:printcolumn:name="version",type="string",JSONPath=".status.version",description="Elasticsearch version" +kubebuilder:printcolumn:name="phase",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:storageversion

func (Elasticsearch) AutoscalingSpec

func (es Elasticsearch) AutoscalingSpec() string

AutoscalingSpec returns the autoscaling spec in the Elasticsearch manifest.

func (*Elasticsearch) DeepCopy

func (in *Elasticsearch) DeepCopy() *Elasticsearch

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Elasticsearch.

func (*Elasticsearch) DeepCopyInto

func (in *Elasticsearch) DeepCopyInto(out *Elasticsearch)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Elasticsearch) DeepCopyObject

func (in *Elasticsearch) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (Elasticsearch) IsAutoscalingDefined

func (es Elasticsearch) IsAutoscalingDefined() bool

IsAutoscalingDefined returns true if there is an autoscaling configuration in the annotations.

func (Elasticsearch) IsMarkedForDeletion

func (es Elasticsearch) IsMarkedForDeletion() bool

IsMarkedForDeletion returns true if the Elasticsearch is going to be deleted

func (Elasticsearch) SecureSettings

func (es Elasticsearch) SecureSettings() []commonv1.SecretSource

type ElasticsearchHealth

type ElasticsearchHealth string

ElasticsearchHealth is the health of the cluster as returned by the health API.

const (
	ElasticsearchRedHealth     ElasticsearchHealth = "red"
	ElasticsearchYellowHealth  ElasticsearchHealth = "yellow"
	ElasticsearchGreenHealth   ElasticsearchHealth = "green"
	ElasticsearchUnknownHealth ElasticsearchHealth = "unknown"
)

Possible traffic light states Elasticsearch health can have.

func (ElasticsearchHealth) Less

Less for ElasticsearchHealth means green > yellow > red

type ElasticsearchList

type ElasticsearchList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Elasticsearch `json:"items"`
}

ElasticsearchList contains a list of Elasticsearch clusters +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*ElasticsearchList) DeepCopy

func (in *ElasticsearchList) DeepCopy() *ElasticsearchList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchList.

func (*ElasticsearchList) DeepCopyInto

func (in *ElasticsearchList) DeepCopyInto(out *ElasticsearchList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ElasticsearchList) DeepCopyObject

func (in *ElasticsearchList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ElasticsearchOrchestrationPhase

type ElasticsearchOrchestrationPhase string

ElasticsearchOrchestrationPhase is the phase Elasticsearch is in from the controller point of view.

const (
	// ElasticsearchReadyPhase is operating at the desired spec.
	ElasticsearchReadyPhase ElasticsearchOrchestrationPhase = "Ready"
	// ElasticsearchApplyingChangesPhase controller is working towards a desired state, cluster can be unavailable.
	ElasticsearchApplyingChangesPhase ElasticsearchOrchestrationPhase = "ApplyingChanges"
	// ElasticsearchMigratingDataPhase Elasticsearch is currently migrating data to another node.
	ElasticsearchMigratingDataPhase ElasticsearchOrchestrationPhase = "MigratingData"
	// ElasticsearchResourceInvalid is marking a resource as invalid, should never happen if admission control is installed correctly.
	ElasticsearchResourceInvalid ElasticsearchOrchestrationPhase = "Invalid"
)

type ElasticsearchSpec

type ElasticsearchSpec struct {
	// Version of Elasticsearch.
	Version string `json:"version"`

	// Image is the Elasticsearch Docker image to deploy.
	Image string `json:"image,omitempty"`

	// HTTP holds HTTP layer settings for Elasticsearch.
	// +kubebuilder:validation:Optional
	HTTP commonv1.HTTPConfig `json:"http,omitempty"`

	// Transport holds transport layer settings for Elasticsearch.
	// +kubebuilder:validation:Optional
	Transport TransportConfig `json:"transport,omitempty"`

	// NodeSets allow specifying groups of Elasticsearch nodes sharing the same configuration and Pod templates.
	// +kubebuilder:validation:MinItems=1
	NodeSets []NodeSet `json:"nodeSets"`

	// UpdateStrategy specifies how updates to the cluster should be performed.
	// +kubebuilder:validation:Optional
	UpdateStrategy UpdateStrategy `json:"updateStrategy,omitempty"`

	// PodDisruptionBudget provides access to the default pod disruption budget for the Elasticsearch cluster.
	// The default budget selects all cluster pods and sets `maxUnavailable` to 1. To disable, set `PodDisruptionBudget`
	// to the empty value (`{}` in YAML).
	// +kubebuilder:validation:Optional
	PodDisruptionBudget *commonv1.PodDisruptionBudgetTemplate `json:"podDisruptionBudget,omitempty"`

	// Auth contains user authentication and authorization security settings for Elasticsearch.
	// +kubebuilder:validation:Optional
	Auth Auth `json:"auth,omitempty"`

	// SecureSettings is a list of references to Kubernetes secrets containing sensitive configuration options for Elasticsearch.
	// +kubebuilder:validation:Optional
	SecureSettings []commonv1.SecretSource `json:"secureSettings,omitempty"`

	// ServiceAccountName is used to check access from the current resource to a resource (eg. a remote Elasticsearch cluster) in a different namespace.
	// Can only be used if ECK is enforcing RBAC on references.
	// +optional
	ServiceAccountName string `json:"serviceAccountName,omitempty"`

	// RemoteClusters enables you to establish uni-directional connections to a remote Elasticsearch cluster.
	// +optional
	RemoteClusters []RemoteCluster `json:"remoteClusters,omitempty"`

	// VolumeClaimDeletePolicy sets the policy for handling deletion of PersistentVolumeClaims for all NodeSets.
	// Possible values are DeleteOnScaledownOnly and DeleteOnScaledownAndClusterDeletion. Defaults to DeleteOnScaledownAndClusterDeletion.
	// +kubebuilder:validation:Optional
	// +kubebuilder:validation:Enum=DeleteOnScaledownOnly;DeleteOnScaledownAndClusterDeletion
	VolumeClaimDeletePolicy VolumeClaimDeletePolicy `json:"volumeClaimDeletePolicy,omitempty"`
}

ElasticsearchSpec holds the specification of an Elasticsearch cluster.

func (*ElasticsearchSpec) DeepCopy

func (in *ElasticsearchSpec) DeepCopy() *ElasticsearchSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchSpec.

func (*ElasticsearchSpec) DeepCopyInto

func (in *ElasticsearchSpec) DeepCopyInto(out *ElasticsearchSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ElasticsearchSpec) NodeCount

func (es ElasticsearchSpec) NodeCount() int32

NodeCount returns the total number of nodes of the Elasticsearch cluster

func (ElasticsearchSpec) VolumeClaimDeletePolicyOrDefault

func (es ElasticsearchSpec) VolumeClaimDeletePolicyOrDefault() VolumeClaimDeletePolicy

type ElasticsearchStatus

type ElasticsearchStatus struct {
	// AvailableNodes is the number of available instances.
	AvailableNodes int32 `json:"availableNodes,omitempty"`
	// Version of the stack resource currently running. During version upgrades, multiple versions may run
	// in parallel: this value specifies the lowest version currently running.
	Version string                          `json:"version,omitempty"`
	Health  ElasticsearchHealth             `json:"health,omitempty"`
	Phase   ElasticsearchOrchestrationPhase `json:"phase,omitempty"`
}

ElasticsearchStatus defines the observed state of Elasticsearch

func (*ElasticsearchStatus) DeepCopy

func (in *ElasticsearchStatus) DeepCopy() *ElasticsearchStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ElasticsearchStatus.

func (*ElasticsearchStatus) DeepCopyInto

func (in *ElasticsearchStatus) DeepCopyInto(out *ElasticsearchStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (ElasticsearchStatus) IsDegraded

func (es ElasticsearchStatus) IsDegraded(prev ElasticsearchStatus) bool

IsDegraded returns true if the current status is worse than the previous.

type FileRealmSource

type FileRealmSource struct {
	// SecretName references a Kubernetes secret in the same namespace as the Elasticsearch resource.
	// Multiple users and their roles mapping can be specified in a Kubernetes secret.
	// The secret should contain 2 entries:
	// - users: contain all users and the hash of their password (https://www.elastic.co/guide/en/elasticsearch/reference/current/security-settings.html#password-hashing-algorithms)
	// - users_roles: contain the role to users mapping
	// The format of those 2 entries must correspond to the expected file realm format, as specified in Elasticsearch
	// documentation: https://www.elastic.co/guide/en/elasticsearch/reference/7.5/file-realm.html#file-realm-configuration.
	//
	// Example:
	// ---
	// # File realm in ES format (from the CLI or manually assembled)
	// kind: Secret
	// apiVersion: v1
	// metadata:
	//   name: my-filerealm
	// stringData:
	//   users: |-
	//     rdeniro:$2a$10$BBJ/ILiyJ1eBTYoRKxkqbuDEdYECplvxnqQ47uiowE7yGqvCEgj9W
	//     alpacino:$2a$10$cNwHnElYiMYZ/T3K4PvzGeJ1KbpXZp2PfoQD.gfaVdImnHOwIuBKS
	//     jacknich:{PBKDF2}50000$z1CLJt0MEFjkIK5iEfgvfnA6xq7lF25uasspsTKSo5Q=$XxCVLbaKDimOdyWgLCLJiyoiWpA/XDMe/xtVgn1r5Sg=
	//   users_roles: |-
	//     admin:rdeniro
	//     power_user:alpacino,jacknich
	//     user:jacknich
	// ---
	commonv1.SecretRef `json:",inline"`
}

FileRealmSource references users to create in the Elasticsearch cluster.

func (*FileRealmSource) DeepCopy

func (in *FileRealmSource) DeepCopy() *FileRealmSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FileRealmSource.

func (*FileRealmSource) DeepCopyInto

func (in *FileRealmSource) DeepCopyInto(out *FileRealmSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NodeSet

type NodeSet struct {
	// Name of this set of nodes. Becomes a part of the Elasticsearch node.name setting.
	// +kubebuilder:validation:Pattern=[a-zA-Z0-9-]+
	// +kubebuilder:validation:MaxLength=23
	Name string `json:"name"`

	// Config holds the Elasticsearch configuration.
	Config *commonv1.Config `json:"config,omitempty"`

	// Count of Elasticsearch nodes to deploy.
	// If the node set is managed by an autoscaling policy the initial value is automatically set by the autoscaling controller.
	// +kubebuilder:validation:Optional
	Count int32 `json:"count"`

	// PodTemplate provides customisation options (labels, annotations, affinity rules, resource requests, and so on) for the Pods belonging to this NodeSet.
	// +kubebuilder:validation:Optional
	PodTemplate corev1.PodTemplateSpec `json:"podTemplate,omitempty"`

	// VolumeClaimTemplates is a list of persistent volume claims to be used by each Pod in this NodeSet.
	// Every claim in this list must have a matching volumeMount in one of the containers defined in the PodTemplate.
	// Items defined here take precedence over any default claims added by the operator with the same name.
	// +kubebuilder:validation:Optional
	VolumeClaimTemplates []corev1.PersistentVolumeClaim `json:"volumeClaimTemplates,omitempty"`
}

NodeSet is the specification for a group of Elasticsearch nodes sharing the same configuration and a Pod template.

func (*NodeSet) DeepCopy

func (in *NodeSet) DeepCopy() *NodeSet

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSet.

func (*NodeSet) DeepCopyInto

func (in *NodeSet) DeepCopyInto(out *NodeSet)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (NodeSet) GetESContainerTemplate

func (n NodeSet) GetESContainerTemplate() *corev1.Container

GetESContainerTemplate returns the Elasticsearch container (if set) from the NodeSet's PodTemplate

type NodeSetList

type NodeSetList []NodeSet

+kubebuilder:object:generate=false

func (NodeSetList) DeepCopy

func (in NodeSetList) DeepCopy() NodeSetList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeSetList.

func (NodeSetList) DeepCopyInto

func (in NodeSetList) DeepCopyInto(out *NodeSetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (NodeSetList) Names

func (nsl NodeSetList) Names() []string

type RemoteCluster

type RemoteCluster struct {
	// Name is the name of the remote cluster as it is set in the Elasticsearch settings.
	// The name is expected to be unique for each remote clusters.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`

	// ElasticsearchRef is a reference to an Elasticsearch cluster running within the same k8s cluster.
	ElasticsearchRef commonv1.ObjectSelector `json:"elasticsearchRef,omitempty"`
}

RemoteCluster declares a remote Elasticsearch cluster connection.

func (RemoteCluster) ConfigHash

func (r RemoteCluster) ConfigHash() string

func (*RemoteCluster) DeepCopy

func (in *RemoteCluster) DeepCopy() *RemoteCluster

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RemoteCluster.

func (*RemoteCluster) DeepCopyInto

func (in *RemoteCluster) DeepCopyInto(out *RemoteCluster)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RoleSource

type RoleSource struct {
	// SecretName references a Kubernetes secret in the same namespace as the Elasticsearch resource.
	// Multiple roles can be specified in a Kubernetes secret, under a single "roles.yml" entry.
	// The secret value must match the expected file-based specification as described in
	// https://www.elastic.co/guide/en/elasticsearch/reference/current/defining-roles.html#roles-management-file.
	//
	// Example:
	// ---
	// kind: Secret
	// apiVersion: v1
	// metadata:
	// 	name: my-roles
	// stringData:
	//  roles.yml: |-
	//    click_admins:
	//      run_as: [ 'clicks_watcher_1' ]
	//   	cluster: [ 'monitor' ]
	//   	indices:
	//   	- names: [ 'events-*' ]
	//   	  privileges: [ 'read' ]
	//   	  field_security:
	//   		grant: ['category', '@timestamp', 'message' ]
	//   	  query: '{"match": {"category": "click"}}'
	//    another_role:
	//      cluster: [ 'all' ]
	// ---
	commonv1.SecretRef `json:",inline"`
}

RoleSource references roles to create in the Elasticsearch cluster.

func (*RoleSource) DeepCopy

func (in *RoleSource) DeepCopy() *RoleSource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RoleSource.

func (*RoleSource) DeepCopyInto

func (in *RoleSource) DeepCopyInto(out *RoleSource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TransportConfig

type TransportConfig struct {
	// Service defines the template for the associated Kubernetes Service object.
	Service commonv1.ServiceTemplate `json:"service,omitempty"`
	// TLS defines options for configuring TLS on the transport layer.
	TLS TransportTLSOptions `json:"tls,omitempty"`
}

TransportConfig holds the transport layer settings for Elasticsearch.

func (*TransportConfig) DeepCopy

func (in *TransportConfig) DeepCopy() *TransportConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransportConfig.

func (*TransportConfig) DeepCopyInto

func (in *TransportConfig) DeepCopyInto(out *TransportConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TransportTLSOptions

type TransportTLSOptions struct {
	// Certificate is a reference to a Kubernetes secret that contains the CA certificate
	// and private key for generating node certificates.
	// The referenced secret should contain the following:
	//
	// - `tls.crt`: The CA certificate in PEM format.
	// - `tls.key`: The private key for the CA certificate in PEM format.
	Certificate commonv1.SecretRef `json:"certificate,omitempty"`
}

func (*TransportTLSOptions) DeepCopy

func (in *TransportTLSOptions) DeepCopy() *TransportTLSOptions

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TransportTLSOptions.

func (*TransportTLSOptions) DeepCopyInto

func (in *TransportTLSOptions) DeepCopyInto(out *TransportTLSOptions)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (TransportTLSOptions) UserDefinedCA

func (tto TransportTLSOptions) UserDefinedCA() bool

type UpdateStrategy

type UpdateStrategy struct {
	// ChangeBudget defines the constraints to consider when applying changes to the Elasticsearch cluster.
	ChangeBudget ChangeBudget `json:"changeBudget,omitempty"`
}

UpdateStrategy specifies how updates to the cluster should be performed.

func (*UpdateStrategy) DeepCopy

func (in *UpdateStrategy) DeepCopy() *UpdateStrategy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateStrategy.

func (*UpdateStrategy) DeepCopyInto

func (in *UpdateStrategy) DeepCopyInto(out *UpdateStrategy)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VolumeClaimDeletePolicy

type VolumeClaimDeletePolicy string

VolumeClaimDeletePolicy describes the delete policy for handling PersistentVolumeClaims that hold Elasticsearch data. Inspired by https://github.com/kubernetes/enhancements/pull/2440

const (
	// DeleteOnScaledownAndClusterDeletionPolicy remove PersistentVolumeClaims when the corresponding Elasticsearch node is removed.
	DeleteOnScaledownAndClusterDeletionPolicy VolumeClaimDeletePolicy = "DeleteOnScaledownAndClusterDeletion"
	// DeleteOnScaledownOnlyPolicy removes PersistentVolumeClaims on scale down of Elasticsearch nodes but retains all
	// current PersistenVolumeClaims when the Elasticsearch cluster has been deleted.
	DeleteOnScaledownOnlyPolicy VolumeClaimDeletePolicy = "DeleteOnScaledownOnly"
)

type ZenDiscoveryStatus

type ZenDiscoveryStatus struct {
	MinimumMasterNodes int `json:"minimumMasterNodes,omitempty"`
}

func (*ZenDiscoveryStatus) DeepCopy

func (in *ZenDiscoveryStatus) DeepCopy() *ZenDiscoveryStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ZenDiscoveryStatus.

func (*ZenDiscoveryStatus) DeepCopyInto

func (in *ZenDiscoveryStatus) DeepCopyInto(out *ZenDiscoveryStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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