Documentation
¶
Index ¶
- Constants
- func GetMetricsOptions(addr string, secure bool, enableHTTP2 bool) metricsserver.Options
- func GetTLSOpts(enableHTTP2 bool) []func(*tls.Config)
- type KruizeResourceGenerator
- func (g *KruizeResourceGenerator) AutotuneClusterRoleBinding() *rbacv1.ClusterRoleBinding
- func (g *KruizeResourceGenerator) ClusterScopedResources() []client.Object
- func (g *KruizeResourceGenerator) CoreKubernetesNamespacedResources() []client.Object
- func (g *KruizeResourceGenerator) CoreNamespacedResources() []client.Object
- func (g *KruizeResourceGenerator) KruizeConfigMap() *corev1.ConfigMap
- func (g *KruizeResourceGenerator) KruizeConfigMapKubernetes() *corev1.ConfigMap
- func (g *KruizeResourceGenerator) KruizeServiceAccount() *corev1.ServiceAccount
- func (g *KruizeResourceGenerator) KubernetesClusterScopedResources() []client.Object
- func (g *KruizeResourceGenerator) ManualStorageClass() *storagev1.StorageClass
- func (g *KruizeResourceGenerator) OptimizerKubernetesNamespacedResources() []client.Object
- func (g *KruizeResourceGenerator) OptimizerNamespacedResources() []client.Object
- func (g *KruizeResourceGenerator) Routes() []client.Object
Constants ¶
const ( // DefaultMetricsPort is the numeric port we use DefaultMetricsPort = "8443" // DefaultMetricsAddr is used by main.go (binds to everything) DefaultMetricsAddr = ":" + DefaultMetricsPort // LocalMetricsAddr is used by tests (binds to localhost) LocalMetricsAddr = "127.0.0.1:" + DefaultMetricsPort )
Variables ¶
This section is empty.
Functions ¶
func GetMetricsOptions ¶ added in v0.0.5
func GetMetricsOptions(addr string, secure bool, enableHTTP2 bool) metricsserver.Options
GetMetricsOptions returns a consistent metrics configuration. It applies Authentication and Authorization filters ONLY if secure is true.
func GetTLSOpts ¶ added in v0.0.5
GetTLSOpts returns the TLS configuration slice for both Webhooks and Metrics.
Types ¶
type KruizeResourceGenerator ¶
type KruizeResourceGenerator struct {
Namespace string
Autotune_image string
Autotune_ui_image string
Optimizer_image string
ClusterType string // "openshift", "minikube", or "kind"
KruizeSpec *kruizev1alpha1.KruizeSpec
Ctx context.Context
}
KruizeResourceGenerator holds common data needed for creating resources.
func NewKruizeResourceGenerator ¶
func NewKruizeResourceGenerator(namespace string, autotuneImage string, autotuneUIImage string, optimizerImage string, clusterType string, kruizeSpec *kruizev1alpha1.KruizeSpec, ctx context.Context) *KruizeResourceGenerator
NewKruizeResourceGenerator creates a new generator for Kruize resources.
func (*KruizeResourceGenerator) AutotuneClusterRoleBinding ¶
func (g *KruizeResourceGenerator) AutotuneClusterRoleBinding() *rbacv1.ClusterRoleBinding
AutotuneClusterRoleBinding generates the autotune-scc-crb ClusterRoleBinding This binds the kruize-sa ServiceAccount to the system:openshift:scc:anyuid ClusterRole
func (*KruizeResourceGenerator) ClusterScopedResources ¶
func (g *KruizeResourceGenerator) ClusterScopedResources() []client.Object
ClusterScopedResources generates all cluster-scoped resources for Kruize. These resources DO NOT get an owner reference.
func (*KruizeResourceGenerator) CoreKubernetesNamespacedResources ¶ added in v0.0.5
func (g *KruizeResourceGenerator) CoreKubernetesNamespacedResources() []client.Object
CoreKubernetesNamespacedResources returns core Kruize resources for Kubernetes without optimizer. Deploy these first and wait for Kruize to be ready before deploying optimizer.
func (*KruizeResourceGenerator) CoreNamespacedResources ¶ added in v0.0.5
func (g *KruizeResourceGenerator) CoreNamespacedResources() []client.Object
CoreNamespacedResources generates core Kruize resources (DB, Kruize, UI) without optimizer. Deploy these first and wait for Kruize to be ready before deploying optimizer.
func (*KruizeResourceGenerator) KruizeConfigMap ¶
func (g *KruizeResourceGenerator) KruizeConfigMap() *corev1.ConfigMap
kruizeConfigMap generates the main ConfigMap for Kruize.
func (*KruizeResourceGenerator) KruizeConfigMapKubernetes ¶
func (g *KruizeResourceGenerator) KruizeConfigMapKubernetes() *corev1.ConfigMap
kruizeConfigMapKubernetes generates ConfigMap for Kind/Minikube/Kubernetes
func (*KruizeResourceGenerator) KruizeServiceAccount ¶
func (g *KruizeResourceGenerator) KruizeServiceAccount() *corev1.ServiceAccount
kruizeServiceAccount generates the ServiceAccount for Kruize.
func (*KruizeResourceGenerator) KubernetesClusterScopedResources ¶
func (g *KruizeResourceGenerator) KubernetesClusterScopedResources() []client.Object
KubernetesClusterScopedResources returns cluster-scoped resources for Kind/Minikube/Kubernetes
func (*KruizeResourceGenerator) ManualStorageClass ¶
func (g *KruizeResourceGenerator) ManualStorageClass() *storagev1.StorageClass
ManualStorageClass generates the manual StorageClass This StorageClass uses no provisioner and retains volumes
func (*KruizeResourceGenerator) OptimizerKubernetesNamespacedResources ¶ added in v0.0.5
func (g *KruizeResourceGenerator) OptimizerKubernetesNamespacedResources() []client.Object
OptimizerKubernetesNamespacedResources returns optimizer-specific resources for Kubernetes. Deploy these after Kruize core is ready.
func (*KruizeResourceGenerator) OptimizerNamespacedResources ¶ added in v0.0.5
func (g *KruizeResourceGenerator) OptimizerNamespacedResources() []client.Object
OptimizerNamespacedResources generates optimizer-specific resources. Deploy these after Kruize core is ready.
func (*KruizeResourceGenerator) Routes ¶
func (g *KruizeResourceGenerator) Routes() []client.Object