v1

package
v0.0.0-...-729cd59 Latest Latest
Warning

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

Go to latest
Published: Dec 11, 2024 License: Apache-2.0 Imports: 6 Imported by: 13

Documentation

Overview

Package v1 is the v1 version of the API.

Index

Constants

View Source
const (
	// TunedDefaultResourceName is the name of the Node Tuning Operator's default custom tuned resource.
	TunedDefaultResourceName = "default"

	// TunedRenderedResourceName is the name of the Node Tuning Operator's tuned resource combined out of
	// all the other custom tuned resources.
	TunedRenderedResourceName = "rendered"

	// TunedClusterOperatorResourceName is the name of the clusteroperator resource
	// that reflects the node tuning operator status.
	TunedClusterOperatorResourceName = "node-tuning"

	// Name of the NTO operand for versioning in ClusterOperator.
	TunedOperandName = "ocp-tuned"

	// TunedBootcmdlineAnnotationKey is a Node-specific annotation denoting kernel command-line parameters
	// calculated by TuneD for the current profile applied to that Node.
	TunedBootcmdlineAnnotationKey string = "tuned.openshift.io/bootcmdline"

	// TunedDeferredUpdate request the tuned daemons to defer the update of the rendered profile
	// until the next restart.
	TunedDeferredUpdate string = "tuned.openshift.io/deferred"
)

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 SchemeGroupVersion = schema.GroupVersion{Group: tuned.GroupName, Version: "v1"}

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 OperandConfig

type OperandConfig struct {
	// turn debugging on/off for the TuneD daemon: true/false (default is false)
	// +optional
	Debug bool `json:"debug,omitempty"`

	// klog logging verbosity
	// +optional
	Verbosity int `json:"verbosity,omitempty"`

	// +optional
	TuneDConfig TuneDConfig `json:"tunedConfig,omitempty"`
}

func (*OperandConfig) DeepCopy

func (in *OperandConfig) DeepCopy() *OperandConfig

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

func (*OperandConfig) DeepCopyInto

func (in *OperandConfig) DeepCopyInto(out *OperandConfig)

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

type Profile

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

	Spec   ProfileSpec   `json:"spec,omitempty"`
	Status ProfileStatus `json:"status,omitempty"`
}

Profile is a specification for a Profile resource.

func (*Profile) DeepCopy

func (in *Profile) DeepCopy() *Profile

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

func (*Profile) DeepCopyInto

func (in *Profile) DeepCopyInto(out *Profile)

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

func (*Profile) DeepCopyObject

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

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

type ProfileConditionType

type ProfileConditionType string

ProfileConditionType is an aspect of Tuned daemon profile application state.

const (
	// ProfileApplied indicates that the Tuned daemon has successfully applied
	// the selected profile.
	TunedProfileApplied ProfileConditionType = "Applied"

	// TunedDegraded indicates the Tuned daemon issued errors during profile
	// application.  To conclude the profile application was successful,
	// both TunedProfileApplied and TunedDegraded need to be queried.
	TunedDegraded ProfileConditionType = "Degraded"
)

type ProfileConfig

type ProfileConfig struct {
	// TuneD profile to apply
	TunedProfile string `json:"tunedProfile"`
	// option to debug TuneD daemon execution
	// +optional
	Debug bool `json:"debug"`
	// klog logging verbosity
	// +optional
	Verbosity int `json:"verbosity"`
	// +optional
	TuneDConfig TuneDConfig `json:"tunedConfig,omitempty"`
	// Name of the cloud provider as taken from the Node providerID: <ProviderName>://<ProviderSpecificNodeID>
	// +optional
	ProviderName string `json:"providerName,omitempty"`
}

func (*ProfileConfig) DeepCopy

func (in *ProfileConfig) DeepCopy() *ProfileConfig

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

func (*ProfileConfig) DeepCopyInto

func (in *ProfileConfig) DeepCopyInto(out *ProfileConfig)

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

type ProfileList

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object ProfileList is a list of Profile resources.

func (*ProfileList) DeepCopy

func (in *ProfileList) DeepCopy() *ProfileList

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

func (*ProfileList) DeepCopyInto

func (in *ProfileList) DeepCopyInto(out *ProfileList)

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

func (*ProfileList) DeepCopyObject

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

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

type ProfileSpec

type ProfileSpec struct {
	Config ProfileConfig `json:"config"`
	// Tuned profiles.
	// +optional
	Profile []TunedProfile `json:"profile"`
}

func (*ProfileSpec) DeepCopy

func (in *ProfileSpec) DeepCopy() *ProfileSpec

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

func (*ProfileSpec) DeepCopyInto

func (in *ProfileSpec) DeepCopyInto(out *ProfileSpec)

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

type ProfileStatus

type ProfileStatus struct {
	// the current profile in use by the Tuned daemon
	TunedProfile string `json:"tunedProfile"`

	// conditions represents the state of the per-node Profile application
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +optional
	Conditions []ProfileStatusCondition `json:"conditions,omitempty"  patchStrategy:"merge" patchMergeKey:"type"`
}

ProfileStatus is the status for a Profile resource; the status is for internal use only and its fields may be changed/removed in the future.

func (*ProfileStatus) DeepCopy

func (in *ProfileStatus) DeepCopy() *ProfileStatus

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

func (*ProfileStatus) DeepCopyInto

func (in *ProfileStatus) DeepCopyInto(out *ProfileStatus)

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

type ProfileStatusCondition

type ProfileStatusCondition struct {
	// type specifies the aspect reported by this condition.
	// +kubebuilder:validation:Required
	// +required
	Type ProfileConditionType `json:"type"`

	// status of the condition, one of True, False, Unknown.
	// +kubebuilder:validation:Required
	// +required
	Status corev1.ConditionStatus `json:"status"`

	// lastTransitionTime is the time of the last update to the current status property.
	// +kubebuilder:validation:Required
	// +required
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`

	// reason is the CamelCase reason for the condition's current status.
	// +optional
	Reason string `json:"reason,omitempty"`

	// message provides additional information about the current condition.
	// This is only to be consumed by humans.
	// +optional
	Message string `json:"message,omitempty"`
}

ProfileStatusCondition represents a partial state of the per-node Profile application. +k8s:deepcopy-gen=true

func (*ProfileStatusCondition) DeepCopy

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

func (*ProfileStatusCondition) DeepCopyInto

func (in *ProfileStatusCondition) DeepCopyInto(out *ProfileStatusCondition)

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

type TuneDConfig

type TuneDConfig struct {
	// turn reapply_sysctl functionality on/off for the TuneD daemon: true/false
	// +optional
	ReapplySysctl *bool `json:"reapply_sysctl"`
}

Global configuration for the TuneD daemon as defined in tuned-main.conf

func (*TuneDConfig) DeepCopy

func (in *TuneDConfig) DeepCopy() *TuneDConfig

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

func (*TuneDConfig) DeepCopyInto

func (in *TuneDConfig) DeepCopyInto(out *TuneDConfig)

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

type Tuned

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

	// spec is the specification of the desired behavior of Tuned. More info:
	// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
	Spec   TunedSpec   `json:"spec,omitempty"`
	Status TunedStatus `json:"status,omitempty"`
}

Tuned is a collection of rules that allows cluster-wide deployment of node-level sysctls and more flexibility to add custom tuning specified by user needs. These rules are translated and passed to all containerized Tuned daemons running in the cluster in the format that the daemons understand. The responsibility for applying the node-level tuning then lies with the containerized Tuned daemons. More info: https://github.com/openshift/cluster-node-tuning-operator

func (*Tuned) DeepCopy

func (in *Tuned) DeepCopy() *Tuned

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

func (*Tuned) DeepCopyInto

func (in *Tuned) DeepCopyInto(out *Tuned)

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

func (*Tuned) DeepCopyObject

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

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

type TunedList

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

TunedList is a list of Tuned resources.

func (*TunedList) DeepCopy

func (in *TunedList) DeepCopy() *TunedList

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

func (*TunedList) DeepCopyInto

func (in *TunedList) DeepCopyInto(out *TunedList)

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

func (*TunedList) DeepCopyObject

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

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

type TunedMatch

type TunedMatch struct {
	// Node or Pod label name.
	Label *string `json:"label"`
	// Node or Pod label value. If omitted, the presence of label name is enough to match.
	Value *string `json:"value,omitempty"`
	// Match type: [node/pod]. If omitted, "node" is assumed.
	// +kubebuilder:validation:Enum={"node","pod"}
	Type *string `json:"type,omitempty"`

	// Additional rules governing application of the tuned profile connected by logical AND operator.
	Match []TunedMatch `json:"match,omitempty"`
}

Rules governing application of a Tuned profile.

func (*TunedMatch) DeepCopy

func (in *TunedMatch) DeepCopy() *TunedMatch

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

func (*TunedMatch) DeepCopyInto

func (in *TunedMatch) DeepCopyInto(out *TunedMatch)

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

type TunedProfile

type TunedProfile struct {
	// Name of the Tuned profile to be used in the recommend section.
	// +kubebuilder:validation:MinLength=1
	Name *string `json:"name"`
	// Specification of the Tuned profile to be consumed by the Tuned daemon.
	Data *string `json:"data"`
}

A Tuned profile.

func (*TunedProfile) DeepCopy

func (in *TunedProfile) DeepCopy() *TunedProfile

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

func (*TunedProfile) DeepCopyInto

func (in *TunedProfile) DeepCopyInto(out *TunedProfile)

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

type TunedRecommend

type TunedRecommend struct {
	// Name of the Tuned profile to recommend.
	// +kubebuilder:validation:MinLength=1
	Profile *string `json:"profile"`

	// Tuned profile priority. Highest priority is 0.
	// +kubebuilder:validation:Minimum=0
	Priority *uint64 `json:"priority"`
	// Rules governing application of a Tuned profile connected by logical OR operator.
	Match []TunedMatch `json:"match,omitempty"`
	// MachineConfigLabels specifies the labels for a MachineConfig. The MachineConfig is created
	// automatically to apply additional host settings (e.g. kernel boot parameters) profile 'Profile'
	// needs and can only be applied by creating a MachineConfig. This involves finding all
	// MachineConfigPools with machineConfigSelector matching the MachineConfigLabels and setting the
	// profile 'Profile' on all nodes that match the MachineConfigPools' nodeSelectors.
	MachineConfigLabels map[string]string `json:"machineConfigLabels,omitempty"`

	// Optional operand configuration.
	// +optional
	Operand OperandConfig `json:"operand,omitempty"`
}

Selection logic for a single Tuned profile.

func (*TunedRecommend) DeepCopy

func (in *TunedRecommend) DeepCopy() *TunedRecommend

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

func (*TunedRecommend) DeepCopyInto

func (in *TunedRecommend) DeepCopyInto(out *TunedRecommend)

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

type TunedSpec

type TunedSpec struct {
	// managementState indicates whether the registry instance represented
	// by this config instance is under operator management or not.  Valid
	// values are Force, Managed, Unmanaged, and Removed.
	// +optional
	ManagementState operatorv1.ManagementState `` /* 138-byte string literal not displayed */
	// Tuned profiles.
	// +optional
	Profile []TunedProfile `json:"profile"`
	// Selection logic for all Tuned profiles.
	// +optional
	Recommend []TunedRecommend `json:"recommend"`
}

func (*TunedSpec) DeepCopy

func (in *TunedSpec) DeepCopy() *TunedSpec

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

func (*TunedSpec) DeepCopyInto

func (in *TunedSpec) DeepCopyInto(out *TunedSpec)

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

type TunedStatus

type TunedStatus struct {
}

TunedStatus is the status for a Tuned resource.

func (*TunedStatus) DeepCopy

func (in *TunedStatus) DeepCopy() *TunedStatus

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

func (*TunedStatus) DeepCopyInto

func (in *TunedStatus) DeepCopyInto(out *TunedStatus)

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