app

package
v1.2.0-alpha.1....-877bfa6 Latest Latest
Warning

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

Go to latest
Published: Oct 15, 2015 License: Apache-2.0 Imports: 38 Imported by: 0

Documentation

Overview

Package app implements a server that runs a set of active components. This includes replication controllers, service endpoints and nodes.

CAUTION: If you update code in this file, you may need to also update code

in contrib/mesos/pkg/controllermanager/controllermanager.go

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ProbeRecyclableVolumePlugins

func ProbeRecyclableVolumePlugins(flags VolumeConfigFlags) []volume.VolumePlugin

ProbeRecyclableVolumePlugins collects all persistent volume plugins into an easy to use list.

Types

type CMServer

type CMServer struct {
	Port                              int
	Address                           net.IP
	CloudProvider                     string
	CloudConfigFile                   string
	ConcurrentEndpointSyncs           int
	ConcurrentRCSyncs                 int
	ConcurrentDSCSyncs                int
	ConcurrentJobSyncs                int
	ServiceSyncPeriod                 time.Duration
	NodeSyncPeriod                    time.Duration
	ResourceQuotaSyncPeriod           time.Duration
	NamespaceSyncPeriod               time.Duration
	PVClaimBinderSyncPeriod           time.Duration
	VolumeConfigFlags                 VolumeConfigFlags
	TerminatedPodGCThreshold          int
	HorizontalPodAutoscalerSyncPeriod time.Duration
	DeploymentControllerSyncPeriod    time.Duration
	MinResyncPeriod                   time.Duration
	RegisterRetryCount                int
	NodeMonitorGracePeriod            time.Duration
	NodeStartupGracePeriod            time.Duration
	NodeMonitorPeriod                 time.Duration
	NodeStatusUpdateRetry             int
	PodEvictionTimeout                time.Duration
	DeletingPodsQps                   float32
	DeletingPodsBurst                 int
	ServiceAccountKeyFile             string
	RootCAFile                        string

	ClusterName        string
	ClusterCIDR        net.IPNet
	AllocateNodeCIDRs  bool
	EnableProfiling    bool
	EnableExperimental bool

	Master       string
	Kubeconfig   string
	KubeApiQps   float32
	KubeApiBurst int
}

CMServer is the main context object for the controller manager.

func NewCMServer

func NewCMServer() *CMServer

NewCMServer creates a new CMServer with a default config.

func (*CMServer) AddFlags

func (s *CMServer) AddFlags(fs *pflag.FlagSet)

AddFlags adds flags for a specific CMServer to the specified FlagSet

func (*CMServer) Run

func (s *CMServer) Run(_ []string) error

Run runs the CMServer. This should never exit.

type VolumeConfigFlags

type VolumeConfigFlags struct {
	PersistentVolumeRecyclerMinimumTimeoutNFS           int
	PersistentVolumeRecyclerPodTemplateFilePathNFS      string
	PersistentVolumeRecyclerIncrementTimeoutNFS         int
	PersistentVolumeRecyclerPodTemplateFilePathHostPath string
	PersistentVolumeRecyclerMinimumTimeoutHostPath      int
	PersistentVolumeRecyclerIncrementTimeoutHostPath    int
}

VolumeConfigFlags is used to bind CLI flags to variables. This top-level struct contains *all* enumerated CLI flags meant to configure all volume plugins. From this config, the binary will create many instances of volume.VolumeConfig which are then passed to the appropriate plugin. The ControllerManager binary is the only part of the code which knows what plugins are supported and which CLI flags correspond to each plugin.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL