Documentation ¶
Overview ¶
Package replication contains logic for watching and synchronizing replication controllers.
Index ¶
Constants ¶
const ( // We'll attempt to recompute the required replicas of all replication controllers // that have fulfilled their expectations at least this often. This recomputation // happens based on contents in local pod storage. FullControllerResyncPeriod = 30 * time.Second // Realistic value of the burstReplica field for the replication manager based off // performance requirements for kubernetes 1.0. BurstReplicas = 500 // We must avoid counting pods until the pod store has synced. If it hasn't synced, to // avoid a hot loop, we'll wait this long between checks. PodStoreSyncedPollPeriod = 100 * time.Millisecond )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type OverlappingControllers ¶ added in v1.2.0
type OverlappingControllers []api.ReplicationController
OverlappingControllers sorts a list of controllers by creation timestamp, using their names as a tie breaker.
func (OverlappingControllers) Len ¶ added in v1.2.0
func (o OverlappingControllers) Len() int
func (OverlappingControllers) Less ¶ added in v1.2.0
func (o OverlappingControllers) Less(i, j int) bool
func (OverlappingControllers) Swap ¶ added in v1.2.0
func (o OverlappingControllers) Swap(i, j int)
type ReplicationManager ¶
type ReplicationManager struct {
// contains filtered or unexported fields
}
ReplicationManager is responsible for synchronizing ReplicationController objects stored in the system with actual running pods. TODO: this really should be called ReplicationController. The only reason why it's a Manager is to distinguish this type from API object "ReplicationController". We should fix this.
func NewReplicationManager ¶
func NewReplicationManager(podInformer framework.SharedInformer, kubeClient clientset.Interface, resyncPeriod controller.ResyncPeriodFunc, burstReplicas int, lookupCacheSize int) *ReplicationManager
func NewReplicationManagerFromClient ¶ added in v1.3.0
func NewReplicationManagerFromClient(kubeClient clientset.Interface, resyncPeriod controller.ResyncPeriodFunc, burstReplicas int, lookupCacheSize int) *ReplicationManager
NewReplicationManagerFromClient creates a new ReplicationManager that runs its own informer.
func (*ReplicationManager) Run ¶
func (rm *ReplicationManager) Run(workers int, stopCh <-chan struct{})
Run begins watching and syncing.
func (*ReplicationManager) SetEventRecorder ¶
func (rm *ReplicationManager) SetEventRecorder(recorder record.EventRecorder)
SetEventRecorder replaces the event recorder used by the replication manager with the given recorder. Only used for testing.