Documentation ¶
Overview ¶
Package v1beta1 contains API Schema definitions for the config v1beta1 API group +kubebuilder:object:generate=true +groupName=config.kubeflow.org
Index ¶
Constants ¶
const ( // DefaultExperimentSuggestionName is the default name for the suggestions. DefaultExperimentSuggestionName = "default" // DefaultMetricsAddr is the default address for the prometheus metrics. DefaultMetricsAddr = ":8080" // DefaultHealthzAddr is the default address for the health probe. DefaultHealthzAddr = ":18080" // DefaultLeaderElectionID is the default LeaderElectionID for the controller. DefaultLeaderElectionID = "3fbc96e9.katib.kubeflow.org" // DefaultContainerSuggestionVolumeMountPath is the default mount path in suggestion container. DefaultContainerSuggestionVolumeMountPath = "/opt/katib/data" // DefaultSuggestionVolumeAccessMode is the default value for suggestion's volume access mode. DefaultSuggestionVolumeAccessMode = corev1.ReadWriteOnce // DefaultSuggestionVolumeStorage is the default value for suggestion's volume storage. DefaultSuggestionVolumeStorage = "1Gi" // DefaultImagePullPolicy is the default value for image pull policy. DefaultImagePullPolicy = corev1.PullIfNotPresent // DefaultCPULimit is the default value for CPU limit. DefaultCPULimit = "500m" // DefaultCPURequest is the default value for CPU request. DefaultCPURequest = "50m" // DefaultMemLimit is the default value for memory limit. DefaultMemLimit = "100Mi" // DefaultMemRequest is the default value for memory request. DefaultMemRequest = "10Mi" // DefaultDiskLimit is the default value for disk limit. DefaultDiskLimit = "5Gi" // DefaultDiskRequest is the default value for disk request. DefaultDiskRequest = "500Mi" // DefaultWebhookServiceName is the default service name for the admission webhooks. DefaultWebhookServiceName = "katib-controller" // DefaultWebhookSecretName is the default secret name to save the certs for the admission webhooks. DefaultWebhookSecretName = "katib-webhook-cert" )
Variables ¶
var ( // DefaultEnableGRPCProbeInSuggestion is the default value whether enable to gRPC probe in suggestions. DefaultEnableGRPCProbeInSuggestion = true // DefaultWebhookPort is the default port for the admission webhook. DefaultWebhookPort = 8443 // DefaultTrialResources is the default resource which can be used as a trial template. DefaultTrialResources = []string{"Job.v1.batch"} )
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "config.kubeflow.org", Version: "v1beta1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func SetDefaults_KatibConfig ¶
func SetDefaults_KatibConfig(cfg *KatibConfig)
Types ¶
type CertGeneratorConfig ¶
type CertGeneratorConfig struct { // Enable indicates the internal cert-generator is enabled. // Defaults to 'false'. Enable bool `json:"enable,omitempty"` // WebhookServiceName indicates which service is used for the admission webhook. // If it is set, the cert-generator forcefully is enabled even if the '.init.certGenerator.enable' is false. // Defaults to 'katib-controller'. WebhookServiceName string `json:"webhookServiceName,omitempty"` // WebhookSecretName indicates which secrets is used to save the certs for the admission webhook. // If it is set, the cert-generator forcefully is enabled even if the '.init.certGenerator.enable' is false. // Defaults to 'katib-webhook-cert'. WebhookSecretName string `json:"webhookSecretName,omitempty"` }
CertGeneratorConfig is the certGenerator structure in Katib config.
func (*CertGeneratorConfig) DeepCopy ¶
func (in *CertGeneratorConfig) DeepCopy() *CertGeneratorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertGeneratorConfig.
func (*CertGeneratorConfig) DeepCopyInto ¶
func (in *CertGeneratorConfig) DeepCopyInto(out *CertGeneratorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerConfig ¶
type ControllerConfig struct { // ExperimentSuggestionName is the implementation of suggestion interface in experiment controller. // Defaults to 'default'. ExperimentSuggestionName string `json:"experimentSuggestionName,omitempty"` // MetricsAddr is the address the metric endpoint binds to. // Defaults to ':8080'. MetricsAddr string `json:"metricsAddr,omitempty"` // HealthzAddr is the address the healthz endpoint binds to. // Defaults to ':18080'. HealthzAddr string `json:"healthzAddr,omitempty"` // InjectSecurityContext indicates whether inject the securityContext of container[0] in the sidecar. // Defaults to 'false'. InjectSecurityContext bool `json:"injectSecurityContext,omitempty"` // EnableGRPCProbeInSuggestion indicates whether enable grpc probe in suggestions. // Defaults to 'true'. EnableGRPCProbeInSuggestion *bool `json:"enableGRPCProbeInSuggestion,omitempty"` // TrialResources is the list of resources that can be used as trial template, // in the form: Kind.Version.Group (e.g. TFJob.v1.kubeflow.org) // Defaults to 'Job.v1.batch' TrialResources []string `json:"trialResources,omitempty"` // WebhookPort is the port number to be used for admission webhook server. // Defaults to '8443'. WebhookPort *int `json:"webhookPort,omitempty"` // EnableLeaderElection indicates whether enable leader election for katib-controller. // Enabling this will ensure there is only one active katib-controller. // Defaults to 'false'. EnableLeaderElection bool `json:"enableLeaderElection,omitempty"` // LeaderElectionID is the ID for leader election. // Defaults to '3fbc96e9.katib.kubeflow.org'. LeaderElectionID string `json:"leaderElectionID,omitempty"` }
ControllerConfig is the controller structure in Katib config.
func (*ControllerConfig) DeepCopy ¶
func (in *ControllerConfig) DeepCopy() *ControllerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerConfig.
func (*ControllerConfig) DeepCopyInto ¶
func (in *ControllerConfig) DeepCopyInto(out *ControllerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EarlyStoppingConfig ¶
type EarlyStoppingConfig struct { AlgorithmName string `json:"algorithmName"` Image string `json:"image"` ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` Resource corev1.ResourceRequirements `json:"resources,omitempty"` }
EarlyStoppingConfig is the early stopping structure in Katib config.
func (*EarlyStoppingConfig) DeepCopy ¶
func (in *EarlyStoppingConfig) DeepCopy() *EarlyStoppingConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EarlyStoppingConfig.
func (*EarlyStoppingConfig) DeepCopyInto ¶
func (in *EarlyStoppingConfig) DeepCopyInto(out *EarlyStoppingConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InitConfig ¶
type InitConfig struct { ControllerConfig ControllerConfig `json:"controller,omitempty"` CertGeneratorConfig CertGeneratorConfig `json:"certGenerator,omitempty"` }
InitConfig is the YAML init structure in Katib config.
func (*InitConfig) DeepCopy ¶
func (in *InitConfig) DeepCopy() *InitConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InitConfig.
func (*InitConfig) DeepCopyInto ¶
func (in *InitConfig) DeepCopyInto(out *InitConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KatibConfig ¶
type KatibConfig struct { metav1.TypeMeta `json:",inline"` RuntimeConfig RuntimeConfig `json:"runtime,omitempty"` InitConfig InitConfig `json:"init,omitempty"` }
KatibConfig is the katib-config.yaml structure in Katib config.
func (*KatibConfig) DeepCopy ¶
func (in *KatibConfig) DeepCopy() *KatibConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KatibConfig.
func (*KatibConfig) DeepCopyInto ¶
func (in *KatibConfig) DeepCopyInto(out *KatibConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KatibConfig) DeepCopyObject ¶
func (in *KatibConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MetricsCollectorConfig ¶
type MetricsCollectorConfig struct { CollectorKind string `json:"kind"` Image string `json:"image"` ImagePullPolicy corev1.PullPolicy `json:"imagePullPolicy,omitempty"` Resource corev1.ResourceRequirements `json:"resources,omitempty"` WaitAllProcesses *bool `json:"waitAllProcesses,omitempty"` }
MetricsCollectorConfig is the metrics collector structure in Katib config.
func (*MetricsCollectorConfig) DeepCopy ¶
func (in *MetricsCollectorConfig) DeepCopy() *MetricsCollectorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MetricsCollectorConfig.
func (*MetricsCollectorConfig) DeepCopyInto ¶
func (in *MetricsCollectorConfig) DeepCopyInto(out *MetricsCollectorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuntimeConfig ¶
type RuntimeConfig struct { SuggestionConfigs []SuggestionConfig `json:"suggestions,omitempty"` EarlyStoppingConfigs []EarlyStoppingConfig `json:"earlyStoppings,omitempty"` MetricsCollectorConfigs []MetricsCollectorConfig `json:"metricsCollectors,omitempty"` }
RuntimeConfig is the runtime structure in Katib config.
func (*RuntimeConfig) DeepCopy ¶
func (in *RuntimeConfig) DeepCopy() *RuntimeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuntimeConfig.
func (*RuntimeConfig) DeepCopyInto ¶
func (in *RuntimeConfig) DeepCopyInto(out *RuntimeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SuggestionConfig ¶
type SuggestionConfig struct { AlgorithmName string `json:"algorithmName"` corev1.Container `json:",inline"` ServiceAccountName string `json:"serviceAccountName,omitempty"` VolumeMountPath string `json:"volumeMountPath,omitempty"` PersistentVolumeClaimSpec corev1.PersistentVolumeClaimSpec `json:"persistentVolumeClaimSpec,omitempty"` PersistentVolumeSpec corev1.PersistentVolumeSpec `json:"persistentVolumeSpec,omitempty"` PersistentVolumeLabels map[string]string `json:"persistentVolumeLabels,omitempty"` }
SuggestionConfig is the suggestion structure in Katib config.
func (*SuggestionConfig) DeepCopy ¶
func (in *SuggestionConfig) DeepCopy() *SuggestionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SuggestionConfig.
func (*SuggestionConfig) DeepCopyInto ¶
func (in *SuggestionConfig) DeepCopyInto(out *SuggestionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.