Documentation
¶
Index ¶
Constants ¶
View Source
const ( ButlerConfigSingletonName = "butler" // LabelAllocationRole distinguishes initial vs growth IPAllocations. // The butler-api does not define this label yet, so it lives here until // the next API release. LabelAllocationRole = "butler.butlerlabs.dev/allocation-role" // AllocationRoleInitial marks the first IPAllocation created during // reconcileIPAllocation (the "seed" allocation for a new tenant). AllocationRoleInitial = "initial" // AllocationRoleGrowth marks IPAllocations created by the elastic IPAM // growth path inside reconcileElasticIPAM. AllocationRoleGrowth = "growth" ReasonValidating = "Validating" ReasonValidationFailed = "ValidationFailed" ReasonTeamNotFound = "TeamNotFound" ReasonTeamRequired = "TeamRequired" ReasonNamespaceMismatch = "NamespaceMismatch" ReasonProvisioningNS = "ProvisioningNamespace" ReasonNamespaceReady = "NamespaceReady" ReasonInfraProvisioning = "InfrastructureProvisioning" ReasonControlPlaneReady = "ControlPlaneReady" ReasonWorkersProvisioning = "WorkersProvisioning" ReasonWorkersReady = "WorkersReady" ReasonProviderConfigNotFound = "ProviderConfigNotFound" ReasonCAPIResourceError = "CAPIResourceError" ReasonReady = "Ready" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type LBServiceInventory ¶ added in v0.18.1
type LBServiceInventory struct {
// PendingServices are LB Services without an assigned external IP.
PendingServices []LBServiceSummary
// AssignedPlatformCount is the number of platform-labeled LB Services
// with at least one assigned external IP.
AssignedPlatformCount int32
// AssignedTenantCount is the number of non-platform LB Services with
// at least one assigned external IP.
AssignedTenantCount int32
// ServiceIPs is the set of all external IPs assigned to LB Services.
// Used by orphan detection to identify allocations with no matching service.
ServiceIPs map[string]bool
}
LBServiceInventory is a snapshot of LoadBalancer Service state on a tenant cluster. Built from a single cross-cluster list call per reconcile. reconcileElasticIPAM consumes the full inventory for demand-driven growth and the derived counts for shrink logic.
type LBServiceSummary ¶ added in v0.18.1
LBServiceSummary is a lightweight representation of a LoadBalancer Service on a tenant cluster. Used by the Service inventory to track Pending services for demand-driven growth decisions.
type Reconciler ¶
type Reconciler struct {
client.Client
Scheme *runtime.Scheme
Installer *addons.Installer
ClientManager *tenant.ClientManager
Recorder record.EventRecorder
MaxConcurrentReconciles int
}
func (*Reconciler) SetupWithManager ¶
func (r *Reconciler) SetupWithManager(mgr ctrl.Manager) error
Click to show internal directories.
Click to hide internal directories.